前回でSSHでログインできるところまで来たので、今回はrootでSSH接続できないように設定を変更する。
その前に、root以外のユーザでSSH接続して、rootに昇格できるかを確認しておこう。
そうしないと、SSHからログインしたときにrootになる方法がなくなるから。
まず”su -“で、rootユーザへ昇格する。
$ su -
パスワード:
最後の失敗ログイン: 2020/06/07 (日) 19:06:52 JST 123.123.123.123から開始日時 ssh:notty
最後の正しいログインの後に 37845 回の失敗ログインの試行があります
#
何回かパスワードを間違ってしまったので、最後の失敗ログインの記録が残っていたが、、、37845回の失敗。。。
常にクラッカーは、世界中のサーバを攻撃しているのです。
とにかくrootへの昇格はできたので、SSHの設定ファイルを変更して、rootがSSHでログインできないようにする。
# vi /etc/ssh/sshd_config
で、設定ファイルを開いて”PermitRootLogin”を検索する。
ちなみに、”/”の後に検索したい文字列を入れると検索が可能。
PermitRootLogin yes
となっているので、最後の”yes”を”no”に変更する。
と言っても、viというWindowsなどの一般的なエディタとは異なり、いきなり入力しても変更できない。
まず、[i]キーを押して編集モードに入り、書き換える。最後に[esc]キーでコマンドモードに戻る。
次に、”PermitEmptyPasswords”を検索する。そう、[/]キーの後に検索したい文字列を入力する。
検索したい文字列が、ファイルの後方になければ、[N]キーで前に戻って探してくれる。大文字の[n]ね。そのまま[n]キーだと次の検索文字列まで飛んでくれる。
見つけた行には次のような記載があるはず。
#PermitEmptyPasswords no
先頭の”#”は、コメントの印。
一般的にコメントなのにも関わらず、設定値が記載されている場合は、デフォルトでの設定値ということ。
ここでは”PermitEmptyPasswords”の設定はデフォルトで”no”となっているよとの事。
例外はあるよ。
今回は、この値を”no”にしたかったが、デフォルトで”no”なのでコメントのままでOK!
[:][w][q]と入力して保存して終了。
では、SSHを再起動して、rootでログインできないか試しましょう。
# systemctl restart sshd.service
さて、次回は、SSHのポートを変更。
お楽しみに!