pamを使ってSSHをIP制限する方法

pamという認証プログラムを使って、SSHするサーバをIPで制限する方法です。

前提

例)

hogehogeというユーザでSSHするIPを

  • aaa.aaa.aaa.aaa

  • bbb.bbb.bbb.bbb

にだけに許可する方法。

設定

/etc/pam.d/sshd に以下を追記する

account required pam_access.so accessfile=/etc/security/access_login.conf

アクセス制限するファイルを/etc/security/access_login.conf と指定します。ここはなんでもいいので、好きなように変更可能。

で、指定した /etc/security/access_login.conf 内を

+:hogehoge: aaa.aaa.aaa.aaa. bbb.bbb.bbb.bbb.

-:ALL: ALL

「aaa.aaa.aaa.aaa.」というように、指定したIPの最後に「.」をつけるように!

これで、hogehogeというユーザでのログインは、aaa.aaa.aaa.aaa とbbb.bbb.bbb.bbbからしかログイン出来なくなります。