sshd 和 sftp 子系統的不同“RequiredAuthentications2”

sshd 和 sftp 子系統的不同“RequiredAuthentications2”

我們目前在 SSH 伺服器上使用 2factor 驗證,因此我們的 sshd_config 中有「RequiredAuthentications2 publickey,keyboard-interactive」(公鑰用於金鑰,keyboard-interactive 用於透過 PAM 處理的 2factor)

為了讓我們的開發人員更輕鬆,我們希望停用 sftp 子系統的 2factor 要求。

我已經搜尋過類似“匹配子系統 sftp”的內容(例如可用的“匹配組”,之後我只能定義“RequiredAuthentications2 publickey”,但似乎這是不可能的。

我研究的另一件事是檢查 PAM,是否有可能為 sftp 子系統定義單獨的配置(這似乎不可行,pam 的服務始終是“ssh”),或者我是否可以在我的sshd pam conf 就像“auth [success=1 default=ignore] pam_succeed_if.so安靜子系統在sftp”

有什麼提示嗎? (除了僅針對具有不同設定的 sftp 設定另一個 sshd 實例之外)

答案1

我不會嘗試透過群組規則放鬆安全性,而是使用預設安全性並透過群組規則加強安全性。以下範例需要對 進行 2 因素身份驗證users,但不需要sftp-users

# Only these groups can connect
AllowGroups users sftp-users

Match Group users
    RequiredAuthenticatios2 publickey,keyboard-interactive

Match Group sftp-users 
    ChrootDirectory %h
    X11Forwarding no
    AllowTcpForwarding no

我在 Ubuntu 系統上成功地建立了這個原型,指定了我的 sshd_config 手冊頁,AuthenticationMethods而不是CentOS 系統手冊頁中的RequiredAuthenticatios1和。RequiredAuthenticatios2等效線是

    AuthenticationMethods publickey,password

相關內容