SSH 応用設定(鍵認証・ポート変更・fail2ban)
このページでは、SSH の安全性を大幅に高めるための応用設定として、 鍵認証・ポート変更・fail2ban の 3 つをまとめています。 ローカルサーバーでも有効なセキュリティ強化手法です。
最終更新:
1. はじめに
SSH は Linux サーバーをリモート操作するための重要な仕組みですが、 初期設定のままだと攻撃に弱い部分があります。 このページでは、SSH をより安全に使うための応用設定をまとめています。
2. SSH 鍵認証の設定
パスワード方式より圧倒的に安全なログイン方法です。
Windows(PowerShell)で鍵を作成
ssh-keygen
作成された公開鍵(id_rsa.pub)をサーバーに登録します。
ssh-copy-id ユーザー名@サーバーIP
これでパスワードなしでログインできるようになります。
3. SSH ポート番号の変更
22 番ポートは攻撃の標的になりやすいため、変更すると安全性が高まります。
設定ファイルを編集
sudo nano /etc/ssh/sshd_config
以下の行を変更します。
Port 2222
変更後は SSH を再起動します。
sudo systemctl restart ssh
4. fail2ban による不正アクセス防止
ログイン失敗を繰り返す IP を自動で遮断するツールです。
インストール
sudo apt install fail2ban
SSH 用の設定ファイルを作成
sudo nano /etc/fail2ban/jail.local
以下を追加します。
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 5
5. SSH 応用設定はローカルサーバーでも必要?
これらの応用設定は、インターネット公開サーバーだけでなく、 学校 LAN 内のローカルサーバーでも有効です。 特に、教室から別室のサーバーへ接続する環境では安全性が大きく向上します。
ローカルサーバーでの必要性まとめ
| 機能 | ローカルサーバーでの必要性 | 理由 |
|---|---|---|
| SSH 鍵認証 | ★★★★★(必須級) | パスワード方式は弱い。鍵認証は圧倒的に安全。 |
| ポート変更 | ★★★★☆(強く推奨) | 攻撃ログが激減。誤接続も防げる。 |
| fail2ban | ★★☆☆☆(環境次第) | ローカルでは必須ではないが、広い LAN なら有効。 |
簡潔な解説
● SSH 鍵認証(必須級)
LAN 内でもパスワード方式は安全とは言えません。鍵認証にするだけでセキュリティが大幅に向上します。
● ポート変更(強く推奨)
22 番ポートは攻撃の標的です。変更するだけで攻撃ログがほぼゼロになります。
● fail2ban(必要に応じて)
不正ログインを繰り返す端末を自動で遮断します。校内 LAN が広い場合に有効です。
6. まとめ
SSH の応用設定を行うことで、ローカルサーバーでも安全性が大きく向上します。 鍵認証・ポート変更・fail2ban を組み合わせることで、 安全・快適・安定したリモート管理環境を構築できます。