Ubuntu

ubuntu 20.04 - sshd_config 中的 ChrootDirectory 不能與令牌 %h 或 %u 一起使用

  • June 2, 2022

我正在嘗試使用 sshd_config 中的專用組將使用者鎖定到他們的主目錄中。我組的部分如下所示

Match Group sftponly
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

當我嘗試與任何使用者連接時,使用 %h 甚至 /home/%u 都不起作用。我檢查了他們主目錄的所有權限,一切看起來都不錯。

有趣的是,當我為 ChrootDirectory 提供靜態路徑時,一切正常。

例如,以下配置允許使用者連接(但在錯誤的目錄中)

Match Group sftponly
ChrootDirectory /home/
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

man sshd_config 說我正確使用了 %h 令牌:

ChrootDirectory 接受標記 %%、%h、%U 和 %u。

感謝任何提示,因為我已經花了一個小時

正如here回答here導致here必須由任何組寫訪問所ChrootDirectory擁有root並且不能是任何組寫訪問。

由於特定使用者的主目錄預設歸該使用者所有,因此您的配置不起作用。

因此,無論chown是主目錄root並在其中創建一個文件夾,使用者有權讀取/寫入或使用不同的ChrootDirectory.

引用自:https://serverfault.com/questions/1102310