Linux
添加“匹配組”子句後 sftp/ssh 失敗
我正在嘗試在 EC2 上的 ubuntu/precise 上設置 sftp 伺服器。我已經成功添加了一個可以通過 ssh 連接的新使用者,但是一旦我添加了以下子句:
Match Group sftp ChrootDirectory /home/%u AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
我無法再連接(無論是 ssh 還是其他方式),我收到了消息
Error: Connection refused Error: Could not connect to server
我能夠將子系統設置為:
#Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp
知道為什麼 ssh 伺服器會因這個“匹配”子句而失敗嗎?本質上,除了“chroot”部分之外,一切都在工作。
好的,解決了問題:
2 件事導致了問題
- 我不得不將“匹配”子句移到文件的末尾,它在中間
- 存在權限問題 - 在其他地方找到了修復它的答案
來自:https ://askubuntu.com/questions/134425/how-can-i-chroot-sftp-only-ssh-users-into-their-homes
“所有這些痛苦都是由於這裡詳述的幾個安全問題。基本上 chroot 目錄必須由 root 擁有,並且不能是任何組寫入訪問權限。可愛。所以你基本上需要把你的 chroot 變成一個容納單元和在其中,您可以擁有可編輯的內容。
sudo chown root /home/bob sudo chmod go-w /home/bob sudo mkdir /home/bob/writable sudo chown bob:sftponly /home/bob/writable sudo chmod ug+rwX /home/bob/writable
而且 bam,你可以登錄並寫入 /writable。”