從 SSH 上的匹配組中排除用戶

從 SSH 上的匹配組中排除用戶

我在從 sshd 配置的匹配組語句中排除使用者時遇到問題。

我已經有這樣聲明的用戶排除

Match Group sftpusergroup User *,!"sftp_user"

這只有在我將使用者放入「」後才開始工作,我懷疑這是因為使用者名稱上的 _ 。

現在我需要將第二個用戶添加到此排除中,但是當我這樣做時,所有用戶在嘗試連接到伺服器時都會收到以下錯誤

16:23:56 錯誤:網路錯誤:連線被拒絕

16:23:56 錯誤:無法連線到伺服器

我使用新增了第二個排除項

Match Group sftpusergroup User *,!"sftp_user",!"sftp_user_2"

也嘗試用

Match Group sftpusergroup User *,!"sftp_user",!sftp_user_2

但總是得到相同的結果。有人以前經歷過這種行為嗎?

答案1

我以前沒有見過這種行為,但看看man ssh_config我懂了:

模式清單是以逗號分隔的模式清單。模式清單中的模式可以透過在它們前面加上感嘆號(「!」)來否定。例如,要允許從組織內除「撥號」池之外的任何位置使用金鑰,可以使用下列條目(在authorized_keys中):

來自=”!.dialup.example.com,.example.com”

也許這會起作用:

Match Group sftpusergroup User "*,!sftp_user,!sftp_user_2"

將整個使用者清單放在引號中。

相關內容