使用任何FTP客户端(我在Ubuntu 12.04上并尝试使用lftp
),我都希望能够建立与FTP服务器的隐式TLS连接,但是我无法设法成功连接。我得到的是:'ls' at 0 [Delaying before reconnect 29]
使用任何FTP客户端(我在Ubuntu 12.04上并尝试使用lftp
),我都希望能够建立与FTP服务器的隐式TLS连接,但是我无法设法成功连接。我得到的是:'ls' at 0 [Delaying before reconnect 29]
Answers:
试试看:
$ lftp
lftp :~> set ftp:ssl-force true
lftp :~> connect ftp.domain.tld
lftp ftp.domain.tld:~> login <username>
注意:如果服务器正在使用自签名证书,则可能还需要添加以下内容set
:
lftp :~> set ssl:verify-certificate no
lftp
4.8.1之前,它不起作用:gdubicki@mac ~ $ lftp -d lftp :~> set ftp:ssl-force true lftp :~> connect ftp.myserver.com ---- Resolving host address... ---- 1 address found: 111.222.111.222 lftp ftp.myserver.com:~> login someuser Password: lftp someuser@ftp.myserver.com:~> ls ---- Connecting to ftp.myserver.com (111.222.111.222) port 21 <--- 220 Service ready for new user. ---> FEAT <--- 530 Access denied. ---> AUTH TLS <--- 234 Command AUTH okay; starting TLS connection.
-由于使用了AUTH
命令,您可以看到这是显式SSL 。
对于使用隐式 TLS / SSL,lftp
请执行以下命令:
connect ftps://ftp.domain.tld
请注意,这将使用TLS直接将您连接到990端口。
对于显式 TLS / SSL:
set ftp:ssl-force true
connect ftp://ftp.domain.tld
...将使用纯文本将您连接到端口21,但随后立即使用AUTH
命令显式切换到TLS 。
您可以-d
向connect
(如connect -d ftp://ftp.domain.tld
)添加参数,以确保使用所需的方法进行连接。
已在lftp
4.8.4版上测试。
如果@summea上面引用的链接消失了,那么为我解决此问题的相关信息是此选项:
set ftp:ssl-auth TLS