SSH接続の設定変更方法¶
鍵認証の設定¶
公開鍵と秘密鍵の作成¶
事前に操作している端末に「公開鍵」「秘密鍵」を格納するフォルダを作成します。
TeraTermを起動後、キャンセルボタンをクリックします
「設定」をクリック後、「SSH鍵生成」を選択します。
「公開鍵の保存」「秘密鍵の保存」をそれぞれクリック後、鍵を事前に作成した格納するフォルダに保存します。
鍵は以下の名前で保存されています。
公開鍵 |
id_rsa.pub |
|---|---|
秘密鍵 |
id_rsa |
鍵をフォルダに保存後、TeraTerm の画面を閉じます。
公開鍵認証の設定¶
サーバーにログイン完了後、事前に作成した「公開鍵」のファイルをドラック&ドロップします
ユーザーのホームディレクトりに移動後、公開鍵認証の設定を行います。
$ mkdir .ssh
$ chmod 700 .ssh
$ cat id_rsa.pub > .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ rm -f id_rsa.pub
SSH接続の設定変更¶
ログインしている一般ユーザーを一時的に「root」に変更します。
$ su –
「Password:」と表示後、「root」のパスワードを入力します。
「@」より前が「root」に切り替われば、「root」に変更されています。
SSH接続の設定を変更します。
# vi /etc/ssh/sshd_config
[編集内容]
#Port 22
↓
Port XXXX
「#」を削除します。SSH接続のportを22から任意の番号へ変更も可能です。
#PermitRootLogin yes
↓
PermitRootLogin no
「#」を削除し"yes"を"no"に変更することで、rootユーザーでのログインを無効にします。
※ OSによっては、該当行が ``#PermitRootLogin prohibit-password`` のように ``yes`` 以外の値になっている場合があります。その場合も同様に「#」を削除し、値を ``no`` に書き換えてください。
PasswordAuthentication yes
↓
PasswordAuthentication no
"yes"を"no"に変更することで、パスワード認証を無効にします。
SSH接続の変更内容を読込みます。
# systemctl restart sshd
Note
Ubuntu などの Debian 系では、サービス名が sshd ではなく ssh です。 systemctl restart ssh を実行してください。
読込みが完了すれば、「SSH接続の設定変更」は完了です。
公開鍵認証でのログイン方法¶
公開鍵認証でログイン¶
ユーザー名/パスフレーズを入力後、「RSD/DSA鍵を使う」をクリックし、予め保存しておいた「秘密鍵」を選択します。
ユーザー名 |
鍵認証を設定したユーザー名 |
|---|---|
パスフレーズ |
公開/秘密鍵を作成した際に設定したパスフレーズ |
秘密鍵 |
事前に作成した秘密鍵 |
「OK」をクリック後、ログインできれば「公開鍵認証でログイン」は完了です。
CentOS 6をご利用の場合¶
CentOS 6は既に提供を終了していますが、SSH接続の変更内容の読込みコマンドのみ異なります(# /etc/rc.d/init.d/sshd reload)。詳細は SSH接続の設定変更方法(CentOS 6) をご参照ください。