AllowUsersに属していないユーザーはSSHを使用できます。

AllowUsersに属していないユーザーはSSHを使用できます。

通常の一番下には以下があります。/etc/ssh/sshd_config

Match Group sftpg                                                                                                                                                                                           
     ChrootDirectory /data/%u                                                                                                                                                                               
     ForceCommand internal-sftp                                                                                                                                                                             

# Personal settings                                                                                                                                                                                         
AllowUsers user1                                                                                                                                                                                           
AllowGroups user1                                                                                                                                                                                          
PermitRootLogin no 

このファイルには他のエントリはなく、AllowUsers少なくともこのディレクトリには他のsshd設定はありません/etc/ssh

それでもuser2SSH経由でログインすることは可能です。私完全に再起動しましたコンピュータ。

SSHに属していないすべてのユーザーにSSHを拒否しないでくださいAllowUsers。何を試すことができますか?

id user2返品:

uid=1002(user2) gid=1002(user2) groups=1002(user2),115(nopasswdlogin),999(docker)

ベストアンサー1

設定ファイルのドキュメント(参考資料を参照man sshd_config)では、Matchこれらのブロックについて説明します(強調表示)。

Match条件付きブロックを導入します。次の行のキーワードは、その行のすべての条件が満たされると、設定ファイルのグローバルセクションMatchで設定されたキーワードよりも優先されます。一致する他の行またはファイルの終わりまで。

それも言う、

キーワード次の行にはキーワードサブセットのみを使用できますMatch。利用可能なキーワードは[...] AllowGroups、[...] AllowUsers、[...] PermitRootLogin、[...]です。

したがって、ブロックが適用されている間のみ、AllowGroupsおよびAllowUsersキーワードが適用されます。あなたが書いたように:PermitRootLoginMatch Group sftpg

Match Group sftpg                                                                                                                                                                                           
    ChrootDirectory /data/%u                                                                                                                                                                               
    ForceCommand internal-sftp                                                                                                                                                                             
    AllowUsers user1                                                                                                                                                                                           
    AllowGroups user1                                                                                                                                                                                          
    PermitRootLogin no

解決策は、グローバル設定をMatch最初のブロックの上に移動して、どこにでも適用できるようにすることです。

おすすめ記事