サーバにリモートで接続する際に使用するSSHサーバの設定を行います。
サーバを導入時に毎回行うので、備忘録として残しておこうと思います。
設定ファイルの編集を行う
SSHサーバの設定ファイルは[/etc/ssh/sshd_config]となっています。セキュリティを向上させるために以下の編集を行います。(ご自身の運用環境によってその他設定も行ってください)
1.設定ファイルの編集
$ vi /etc/ssh/sshd_config 48 PermitRootLogin no //ルートユーザのログインを禁止する(48行目付近) 78 PasswordAuthentication no //パスワード認証を禁止する(78行目付近)
2.設定設定ファイルの反映
$ systemctl restart sshd //SSHサーバを再起動する
公開鍵認証用の鍵ペアを生成する
次に、ログインの際に利用する鍵ペアの生成を行います。
今回はRSA暗号による鍵ペアを生成します。
$ ssh-keygen -t rsa //RSA暗号による鍵ペアの生成 Generating public/private rsa key pair. Enter file in which to save the key (/home/hiro/.ssh/id_rsa): //鍵ペアを保存するファイル名 Created directory '/home/hiro/.ssh'. Enter passphrase (empty for no passphrase): //パスフレーズの入力 Enter same passphrase again: //パスフレーズの確認入力
公開鍵をサーバに設置する
最後に生成した公開鍵をSSHサーバに設置します。CentOSの標準設定では[~/.ssh/]以下にインストールする設定になっています。
今回はユーザ[hiro]なので[/home/hiro/.ssh/]以下で次の作業を行います。
1.まずファイル名を変更します
$ cat id_rsa.pub >> authorized_keys //ファイル名を変更 $ chmod 600 authorized_keys //所有者以外からの操作を禁止する
2.最後に公開鍵が保存されるディレクトリのアクセス権を変更します
$ chmod 700 /home/hiro/.ssh //所有者以外からの操作を禁止する
以上でSSHサーバの設定が完了です。
まとめ
サーバの管理には必須のSSHサーバなのできちんと設定を行えるようになっておきたいものです。