sshd_config で条件を複数AND/ORで書きたい
ユーザーが takuya で、LocalIPからの、の両方にマッチしたときのみ、パスワードログインを許可する。
複数を記述は、そのまま列挙すればいい。
Match User takuya Address 192.168.0.0/16 PasswordAuthentication yes
複数条件をORで列挙したいとき
たとえば、takuya or pi のユーザーに対して許可したい
Match User takuya,pi Address 192.168.0.0/16 PasswordAuthentication yes
たとえば、複数のネットワークを指定したいとき
Match User takuya,pi Address 192.168.11.0/24,192.168.1.0/24 PasswordAuthentication yes
などとと書けば、AND OR のように使うことができる。
not の 否定条件も併せて使うと便利。
拒否すると列挙が楽になると思う。
Match Group sudo User !pi Address 192.168.11.0/24,192.168.1.0/24 PasswordAuthentication yes
ネットワークもアドレス範囲をガッツリかいて特定を拒否とかね。
Match User takuya,pi Address 192.168.11.0/24,!192.168.11.222 PasswordAuthentication yes
ANDで絞り込めると便利。
複数条件をANDでかけると、条件記述がシンプルになって嬉しいです。
関連資料
- WindowsビルトインのOpenSSH サーバーが鍵認証できない。 - それマグで!
- SSHをSFTPに制限して、ディレクトリを制限(chroot)した専用アカウントを作る - それマグで!
- sshサーバーに ユーザー名&IPアドレスで制限を掛ける - それマグで!
- 外からは公開鍵、内側だけはパスワード許可 - sshd の ローカル側だけパスワードを使えるようにする。 - それマグで!