Linuxサーバーのセキュリティ対策として、rootユーザでのSSH直接ログインを禁止する設定を紹介します。
この設定を適用することで、UbuntuやRHEL(Red Hat Enterprise Linux)を含む多くのLinuxディストリビューションでサーバーへの不正アクセスリスクを大幅に軽減できます。
本記事では、その設定手順とオプションについて詳しく解説します。
SSHサーバーの設定ファイル
LinuxのSSHサーバーの設定は、/etc/ssh/sshd_config
ファイルで行われます。このファイルを編集することで、様々なセキュリティポリシーを実施することが可能です。
変更方法
以下の手順に従って、設定ファイルを安全に編集しましょう。
設定ファイルはrootユーザでのみ編集可能です。
ターミナルを開き、以下のコマンドでsshd_config
ファイルを編集します。
vi /etc/ssh/sshd_config
PermitRootLogin
の設定
PermitRootLogin
はrootユーザーのSSHログイン許可設定を管理します。このオプションには以下の値を設定できます:
yes | rootユーザのログインを許可します。 |
prohibit-password | パスワード認証を用いたrootログインを禁止しますが、公開鍵認証は許可します。 |
no | すべての方法によるrootユーザのログインを完全に禁止します。 |
設定例と再起動
設定例
PermitRootLogin prohibit-password
設定後、変更を有効にするためにSSHサービスを再起動します。
systemctl restart sshd
まとめ
rootユーザでの直接ログインを禁止することで、潜在的なセキュリティリスクを最小限に抑えることができます。
設定の際は、ファイルのバックアップを取ることを忘れないでください。