TCP Wrapperを利用してSSHにログインできるIPを制限します。 設定ファイルは /etc/hosts.deny (拒否するIP/ホストを設定) /etc/hosts.allow (許可するIP/ホストを設定) の二つです。 この設定ファイルで制御できるプロセスは次の二つです。
- xinetd で制御されているプロセス
- configure時に TCP Wrapper を使うと指定されたプロセス(←SSHはこっち)
SSHはxinetdで制御されてないけども、自分でhosts.{deny,allow}を読み込むみたいです。 設定は全ての接続を拒否して、指定したIPを許可するという流れが一般的です。
全てのアクセスを拒否
/etc/hosts.denyに下記を追記します。
sshd : all指定したIPからのアクセスを許可
/etc/hosts.allowに下記を追記します。
sshd : 100.100.100.100 sshd : 192.168.1.1 TCP Wrapperで制御した場合はアプリケーションレベルでのアクセス制御になるので、IPレベルで制御したい場合はiptablesを設定する必要が有ります。 ※本当はTCP Wrapperとiptables両方設定した方が良いのでしょうね。