nixCraftは2018年1月18日(米国時間)、「Top 20 OpenSSH Server Best Security Practices - nixCraft」において、セキュリティを目的としてOpenSSHサーバを設定する場合のベストプラクティス20選を紹介した。OpenSSHはリモートログインでの作業やホスト間で安全な通信を実現するために使われている代表的ソフトウェア。
紹介されているプラクティスは次のとおり。
- 公開鍵ベースのログインを使用
- rootユーザでのログインを無効化
- パスワードベースログインを無効化
- ログインできるユーザーを制限
- パスワードなしログインを無効化
- パスワードまたはパスフレーズには強いものを使用
- ファイアウォールでアクセスを制限
- ポートを変更および接続待ちアドレスを制限
- TCP wrapperを使用(必要に応じて)
- サードパーティ製ソフトウェアを使ってsshdへのブルートフォース攻撃をブロック
- インカムトラフィック量を制限(必要に応じて)
- ポートノッキングを使用(必要に応じて)
- アイドルログアウト時間を設定
- ワーニングバナーを設定
- .rhostsファイルを無効化
- ホストベース認証を無効化
- オペレーティングシステムおよびOpenSSHを最新のバージョンにキープ
- chroot機能を併用
- クライアントではOpenSSHサーバを無効化
- Security/Guidelines/OpenSSH - Mozilla Wikiの設定を参考にする
記事では、実際に設定を行うにはどのファイルに何の設定を追加すればよいのかまで説明しているほか、複数のLinuxおよび*BSDでの設定や操作方法がまとまっている。
OpenSSHはOpenBSDの開発者が開発しているソフトウェア。ホストにリモートログインする用途やホスト間で安全なデータ通信を確立するうえで欠かすことのできないソフトウェアであり、世界中で活用されている。