Linux
強制每使用者 ssh 埠
我想允許通過不同的埠訪問伺服器上的每個使用者。例如; user1 只能通過 2201 埠 ssh 訪問,使用者 2 只能通過 2202 埠訪問。我已經通過編輯“/etc/ssh/sshd_config”並添加兩行允許通過埠 2201 和 2202 訪問:
`Port 2201
Port 2202`
兩個使用者現在都可以通過兩個埠(和 22)訪問 ssh。
- 我如何將它們限制在自己的埠上?
(另外),使用者
$$ except root $$沒有任何自動創建的“~/.ssh/”目錄,所以我創建了一個並嘗試添加一個配置文件和一個 authorized_keys 文件——這些似乎沒有任何區別。 作業系統是 debian 擠壓和提前感謝。
您必須為每個包含(以及通常的配置選項)ListenAddress 和 AllowUsers 關鍵字的使用者/埠組合創建一個單獨的 sshd_config。
sshd_config_2201
ListenAddress 0:2201 AllowUsers user1
sshd_config_2202
ListenAddress 0:2202 AllowUsers user2
等等
您需要使用
-f
開關為每個使用者執行一次 sshd 以指定單獨的配置文件。
有一個解決方案。您可以使用兩個匹配條件:一個在第一個埠上阻止使用者 2,另一個在第二個埠上阻止使用者 1。應該是這樣的:
Match User user2, LocalPort 2201 DenyUsers user2 Match User user1, LocalPort 2202 DenyUsers user1
我有一個類似的配置正在執行,它執行得很好(不用說它是有意義的)。
順便說一句:結合匹配和全域允許/拒絕規則不起作用 - 至少它對我不起作用。