さくらVPSの初期設定をした。

さくらVPSを契約したので、改めて作業ユーザーを作るなどした。

自分でいろいろ実験できる環境が欲しかったので、さくらVPSを契約した。
最近だとAWSが流行りだと思うが、うっかりによるクラウド破産が怖いので、VPSを使うことにした。

さて、VPSを契約したあとの一番の楽しみである初期設定を、公式のドキュメントをもとに行った。
さくらインターネットさんはこういった記事を結構書いてくれているので、助かっている。

チュートリアル:CentOS 7(さくらのVPS)サーバ作成直後に設定しておくべき初期セキュリティ設定 – さくらのVPSニュース

実際にやってみたのは以下のような作業になる。

1. 作業ユーザーの追加

初めに作業ユーザーを追加し、必要な設定を行う。

# 作業ユーザーを追加し、パスワードとsudo実行するためのグループの設定を行う
$ useradd user
$ passwd user
$ usermod -G wheel user
$ exit

# (ホスト側)作業ユーザーでログインできるか確認
$ ssh user@XXXXXX

# sudo実行権限の確認
$ sudo id

2. 公開鍵認証の設定

ホスト側で認証鍵を作成し、これを使ってログインできるように設定する。

# (ホスト側)認証鍵を作成し、公開鍵をサーバーに送る
$ cd ~/.ssh
$ ssh-keygen -r rsa # 「sakura」という名前にした
$ scp sakura.pub user@XXXXXX:~/
$ ssh user@XXXXXX

# .sshディレクトリに鍵を置き、権限を変更する
$ mkdir .ssh
$ mv sakura.pub .ssh/authorized_keys
$ chmod 700 .ssh
$ chmod 600 .ssh/authorized_keys
$ exit

# (ホスト側)秘密鍵を指定してログインできることを確認
$ ssh user@XXXXXX -i ~/.ssh/sakura

3. ログイン設定の変更

ログイン関連の設定を変更して、不正ログインされにくいようしておく。ここでは10022を指定しているが、各自任意の値を入れることをオススメする。

# sshの設定を変更し、sshdを再起動する
$ sudo vi /etc/ssh/sshd_config
Port 22 -> 10022
PermitRootLogin yes -> no
PasswordAuthentication no -> yes
$ sudo systemctl restart sshd

# Portを変更したので、firewallの設定を変更し再起動する
$ sudo vi /usr/lib/firewalld/services/ssh.xml
<port protocol="tcp" port="22">
-> <port protocol="tcp" port="10022">
$ sudo firewall-cmd --reload
$ exit

# 設定したポートを指定してログインできることを確認
$ ssh user@XXXXXX -i ~/.ssh/sakura -p 10022