前回は新たにセットアップしたお名前.com VPSのベンチマーク結果を紹介しました。
今回からはこのVPSの環境構築をしていきます。まずは、インストール時に作成したユーザの設定と、SSHの設定をしていきます。
sudoのインストール
インストール時にパッケージを絞り込んでいるとsudoコマンドが導入されていないので、次のコマンドでいストールしておきます。
apt-get instal sudo
一般ユーザの設定
インストール時に作成した一般ユーザがルート権限でコマンドを実行きるようにsudoが使えるようにしておきます。この設定が終わればrootで作業をする必要はなくなります。
以前はvisudoコマンドで/etc/sudoersを編集しましたが、最近のDebianでは作成したユーザをグループsudoに追加すればOKです。一般ユーザの名前がfooの場合は次のように行います。
addgroup foo sudo
この一般ユーザがログインしなおして、sudoコマンドが使えるかどうかを確認しておきましょう。
rootの設定
一般ユーザでsudoが使えるようになったらrootを無効化します。これ不正アクセスを狙われた際にリスクを下げるためです。
先ほどsudoを使えるようにしたユーザで次のコマンドを実行するとrootでログインができなくなります。
sudo usermod -L root
このコマンドを実行したらrootでログインできなくなることを確認しておきましょう。
SSHの設定
SSHの設定は不正ログインを防ぐためにも重要です。行うべきことは
- ポート番号を変更する・・・デフォルトの22番ポートは攻撃者のターゲットになります
- 鍵認証を使ったのログインのみを許可する・・・万が一パスワードがばれてもアクセスできる人を限定できます
の2点です。そのほかにrootのログインをsshで禁止することもできるのですが、すでにroot出のログインは無効化されているのでsshで禁止する必要はありません。
ポート番号の変更
/etc/ssh/sshd_configを編集することで行います。
「Port 22」という行がありますのでこの「22」を1024~65535までの間の適当な数値に変更します。
編集が終わったらSSHサーバを再起動します。
sudo service ssh restart
そして変更したポート番号で外部からSSH接続できることを確認します。
鍵認証を使ったSSH接続
秘密鍵と公開鍵のペアを作成し、秘密鍵を持っているユーザのみがSSHで接続できるようにする方式です。ネットカフェなど秘密鍵がない環境からはSSHでVPSにアクセスできなくなりますが、セキュリティは格段に上がります。
クライアント側で公開鍵と秘密鍵のペアを作成し、その公開鍵をお名前.com VPS側に登録することで特定のクライアントからのアクセスだけを許可するようにします。
この手順は以前説明しているので下記のページを参照してください。
公開鍵を使って接続できることを確認したら、/etc/sshd/sshd_confに下記の2つの変更を加えます。
これには/etc/ssh/sshd_configに下記2つの変更を加えます
- 「PasswordAuthentication no」を追記する
- 下記の行の先頭の#をはずす
AuthorizedKeysFile %h/.ssh/authorized_keys
忘れずにSSHサーバを再起動します。
sudo service ssh restart
最後に認証鍵なしで接続してみて拒否されることを確認しましょう。
まとめ
今回はお名前.com VPSで各種ユーザの設定とSSHの設定を行いました。
これで今後は安全にSSHで接続することができます。お名前.com VPSのコンソールからだといろいろ操作がやりにくいので、この設定は最初に行っておきましょう。
次回はさらに初期設定をしていきます。
コメント