質問: SSHのクライアント制限について SSHサーバを運用しており、特定のクライアントホストにのみSSHの機能を提供しようとしています。SSHサーバはOpenSSH 5.9です。現在、以下の制限を設けています。 * 公開鍵認証のみ許可(クライアントホストで作成した公開鍵をSSHサーバに登録) * クライアントホストのIPを/etc/hosts.allowやiptablesで制限 この構成上で、以下の2点について、お教えいただければと思います。 (1) さらにセキュリティを高める方法がもしあれば(MACアドレスで制限するなど) (2) クライアントホストがDHCPでIPを設定している場合、IP制限をどのように代替すればよいか よろしくお願い致します。
回答: 質問内容から察するに同一LAN内からのアクセス制限ですね? であればMACアドレスは偽装できますしIPアドレスも変更できるのでそれで制限をかけるのは本質的には余り意味が無いかもしれません。 それよりもまず基本は公開鍵認証用の各人の秘密鍵をきちんと守ることでしょうね。 鍵の運用ポリシーとして、パスフレーズは必ず設定するとか、鍵長は長め(4096ビット以上)にするなどのルールを作って定期的に監査するのが有効だと思います。 サーバ側でできることとしてはProtocolは2のみ(今時はデフォルトがこうだと思う)、パスワード認証は無効にする。 あとは、ウィルスなどによる内部からの自動攻撃の対策としてはポート番号をデフォルトの22以外にするのも意外に有効だったりします。 あと更に基本的なことですが鍵付きの部屋やラック内におくことによる物理的なアクセス制限は必須ですね。 サーバへの物理的な接触ができたらrootログインも簡単だしサーバごとHDDを盗むことも簡単で、全ての対策が無意味になりますから。