Ssl

FTP over TLS,多個站點託管在同一台伺服器上

  • September 25, 2018

是否可以在託管多個網站(域)的伺服器上通過 TLS 進行 FTP?

我可以獲得任何域的證書,但問題是我無法知道使用者從他的客戶端連接到哪個域。因此我不知道將哪個證書發送到 FTP 客戶端。我知道在他發送使用者和密碼之後,但不是之前,所以我無法在 FTP 伺服器啟動階段建立安全連接。

有沒有辦法解決?

FTP 本身沒有主機名的概念。理論上,客戶端可能會在 TLS 握手中將預期的主機名作為 ClientHello 中的 server_name 擴展 (SNI) 發送。這樣,伺服器可能會決定發送哪個證書。但是,雖然這對於 HTTP 很常見,但我懷疑所有 FTP 伺服器和客戶端都支持它。粗略的搜尋表明,最新版本的 ProFTPd 伺服器和 FileZilla 客戶端應該支持它。

當然,您也可以在固定主機名上提供 FTP 伺服器,然後擁有特定於域的主目錄和憑據。這樣,它可以與任何伺服器或客戶端一起使用,甚至可以在沒有 TLS 的情況下使用(不推薦)。

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