SSHの安全な設定方法|鍵認証・セキュリティ強化の実践ガイド

現場実践|サーバーセキュリティ
SSHの安全な設定方法
鍵認証・セキュリティ強化の実践ガイド
Linuxサーバーの入り口となるSSH。不適切な設定は不正アクセスの入口になります。鍵認証の設定からsshd_config強化まで、セキュリティを高める方法を解説します。
💡 パスワード認証のSSHは毎日数千回の不正アクセス試行(ブルートフォース攻撃)を受けています。鍵認証への切り替えは最優先のセキュリティ対策です。
1. 鍵認証の設定(クライアント側)
# 鍵ペアの生成(クライアント側)
ssh-keygen -t ed25519 -C "your_comment"
# ~/.ssh/id_ed25519(秘密鍵)と id_ed25519.pub(公開鍵)が生成される
# 公開鍵をサーバーにコピー
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip
# 接続テスト
ssh -i ~/.ssh/id_ed25519 user@server_ip⚠️ 鍵認証を確認してからパスワード認証を無効化する
必ず鍵認証でログインできることを確認してから次のsshd_config変更を行ってください。設定ミスによるロックアウトに注意が必要です。
2. sshd_config強化(サーバー側)
# /etc/ssh/sshd_config の設定例
Port 22222 # デフォルトポートから変更
PasswordAuthentication no # パスワード認証を無効化
PermitRootLogin no # rootの直接ログインを禁止
PubkeyAuthentication yes # 公開鍵認証を許可
AllowUsers deploy_user # 特定ユーザーのみ許可
MaxAuthTries 3 # 認証試行回数の制限設定変更後はsudo systemctl restart sshdで反映します。
3. 追加のセキュリティ対策
- fail2ban:ブルートフォース攻撃を検知してIPをブロックするツール
- ファイアウォール(firewalld・iptables):SSHポートへのアクセスを特定IPのみ許可する
- AWSの場合:セキュリティグループでSSH(22番)へのアクセスを踏み台サーバーのIPのみに限定する
- 2要素認証(Google Authenticator):鍵認証に加えてワンタイムパスワードを要求する設定も可能
📌 この記事のポイント
- パスワード認証SSHは毎日大量の不正アクセス試行を受けている
- 鍵認証への切り替え→パスワード認証の無効化→rootログイン禁止が最低限の設定
- AWSはセキュリティグループでSSHを踏み台サーバーIPのみに制限する
よくある質問(FAQ)
Q. SSHの安全な設定方法について、初心者がまず取り組むべきことは何ですか?
まずは全体像を把握することから始めましょう。基本的な概念を理解した上で、実際に手を動かして試すことが重要です。理論と実践を組み合わせることで、より深い理解が得られます。
Q. SSHの安全な設定方法を学ぶのにおすすめのリソースはありますか?
公式ドキュメントが最も信頼性が高く、Udemyの動画講座(セール時2,000〜3,000円)は体系的に学ぶのに最適です。実際に手を動かすハンズオン練習を並行して行うことで、知識の定着率が大幅に上がります。
Q. SSHの安全な設定方法のスキルは転職・キャリアアップに役立ちますか?
現在のIT業界では、この分野のスキルを持つエンジニアへの需要は高い水準にあります。継続的なスキルアップと資格取得を組み合わせることで、市場価値をさらに高めることができます。
キャリアの疑問、一緒に解決しませんか?
Infra Academyでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
ABOUT ME




