特定のIPアドレス(個人アドレス)でユーザーログインを制限する方法は?

特定のIPアドレス(個人アドレス)でユーザーログインを制限する方法は?

私のSSHサーバーシステムには、user_Aとuser_Bという2人のユーザーがいます。 user_Bはリモートからログインする必要があるため、セキュリティ上の理由から秘密鍵を使用してログインすることができます。すべて動作します。私の質問:user_Aはローカルネットワークにログインするだけですので、ユーザー名/パスワードを使用してリモートでログインするのを防ぐことはできますか? sshdのマニュアルページによると、CIDR表記が許可されています。

私がしたこと:
#605433が提案されたので調整しました。AllowUsers [email protected]AllowUsers [email protected]/24

#740700オファー:

Match 192.168.0.10/24
   AllowGroups PrivateSubnetSshUsers

私のバージョンは次のとおりです

Match 192.168.10.0/24
   AllowUsers user_A

驚いたことに、どちらの場合も、user_Aはまだ192.168.1.220でログインできます。やり直す前にいくつかのことを行いましたsystemctl restart sshd

私はここで何を見落としていますか?

ベストアンサー1

まず、あなたの声明には単なるエラーではなくエラーが必要Matchです。そのバージョンでは、sshdを再起動しようとするとエラーメッセージが表示されます。受け取れませんでしたか?Match address 192.168.10.0/24Match 192.168.10.0/24

Match次に、アドレスではなくユーザー名を使用する必要があります。次は動作します。

Match user user_A
   AllowUsers [email protected]/24

ところで。私のテストでは単独(つまりブロックではありません)も機能しますが(したがってテストするときに何か間違っていることは間違いありません)、制限されています。AllowUsers [email protected]/24Match他のすべてのユーザーuser_A以外のログイン別の言葉(そして、user_Aは指定されたネットワークでのみログインできます。)上記のブロック内では、Matchuser_Aは指定されたネットワークでのみログインでき、他のすべてのユーザーはすべてのIPアドレスからログインできます。

おすすめ記事