SSH の強化

Ubuntu サーバーの SSH アクセスを確認し制限します。

実行前の確認

現在のセッションと独立したコンソールを確保し、root を無効にする前に別の管理者でログインを確認します。Include の順序と Match に注意し、対象接続を sshd -T -C で確認します。全アカウント、自動化、復旧手段の検証前にパスワードや対話型認証を無効にしないでください。

サーバー側の手順は Ubuntu を例にしています。他のシステムではコマンド、設定パス、サービス名が異なる場合があります。クライアント側の手順は説明に従ってクライアントで実行してください。

変更を適用したら、新しい SSH セッションでログインと期待する動作を確認してください。確認が成功するまで現在のセッションを開いたままにしておくと、必要に応じて設定を復旧できます。

使用例

構文と有効な設定を確認します。Match には sshd -T -C を使います。

sudo sshd -t
sudo sshd -T | grep -Ei "permitrootlogin|pubkeyauthentication|passwordauthentication|kbdinteractiveauthentication|allowusers"

例を適切な設定ファイルに追加し、ファイル全体は置き換えません。Include と既存設定を確認します。

PermitRootLogin no
PubkeyAuthentication yes

Ubuntu の ssh サービスを検証して再読み込みし、新しい接続を確認してから元のセッションを閉じます。

sudo sshd -t && sudo systemctl reload ssh

公式リファレンス

確認日:2026年10月27日