使用公鑰 SSH 可以工作,但 SFTP 會出錯

使用公鑰 SSH 可以工作,但 SFTP 會出錯

在一台伺服器上,我安裝了 openSUSE,並配置了 SSH,因此只允許一個用戶,只允許來自特定 IP 的公鑰(無 pam,無密碼)。

SSH 可以工作,X11 轉送可以工作,SFTP 可以工作。

現在,我需要輔助系統,與外部世界幾乎相同。我安裝了 Xubuntu,設定了 SSH、防火牆,我從 openSUSE 複製了完全相同的 SSH 配置和金鑰,然後...

SSH 有效、X11 轉送有效、SFTP才不是工作。

我使用 FileZilla 進行連接,它給出錯誤“sftp 從 sftp 伺服器收到意外的文件結束符號”。我用谷歌搜尋了一下,找到了在伺服器上檢查“/var/log/auth.log”的建議,所以我做了,一切都很順利,當我嘗試使用SFTP 連接時,我只看到一條訊息“sshd[11835” ]:已接受...的公鑰。

造成這種差異的原因是什麼以及如何解決?

答案1

終於找到了。我嘗試了其他客戶端,希望其中一個能帶來新的曙光,事實上「sftp -v」確實做到了。我複製的 sshd 配置使用外部 sftp 伺服器(存在於 openSUSE 中,但不存在於 Xubuntu 中)。我將其更改為內部伺服器,現在我也可以使用 Xubuntu 進行連線。

這是有幫助的貼文:OpenSSH:internal-sftp 和 sftp-server 之間的差異

答案2

你安裝FTP伺服器了嗎?如果沒有,請安裝 FTP 伺服器守護程序,例如 vsftp,如下所示

sudo zypper -n in vsftpd

然後設定/etc/vsftpd.conf檔。否則,請重新檢查用戶端的配置並確保放置 SSH 私鑰和公鑰的正確目錄。

相關內容