`lftp` 无法连接到 FTPS(FTP over TLS)服务器,但 filezilla 和 ncftp 可以

`lftp` 无法连接到 FTPS(FTP over TLS)服务器,但 filezilla 和 ncftp 可以

我有一个具有 FTPS 访问权限的共享托管服务器,我可以使用以下配置通过 Filezilla 连接它:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<FileZilla3>
    <Servers>
        <Server>
            <Host>ftp.idrissi.co</Host>
            <Port>21</Port>
            <Protocol>4</Protocol>
            <Type>0</Type>
            <User>[email protected]</User>
            <Logontype>2</Logontype>
            <TimezoneOffset>0</TimezoneOffset>
            <PasvMode>MODE_DEFAULT</PasvMode>
            <MaximumMultipleConnections>0</MaximumMultipleConnections>
            <EncodingType>Auto</EncodingType>
            <BypassProxy>0</BypassProxy>
            <Name>ftp.idrissi.co</Name>
            <Comments />
            <LocalDir />
            <RemoteDir />
            <SyncBrowsing>0</SyncBrowsing>ftp.idrissi.co
        </Server>
    </Servers>
</FileZilla3>

使用ncftp更简单,我只需使用以下命令。ncftp -u [email protected] -P 21 ftp://ftp.idrissi.co

但是,当我尝试使用lftp工具失败。对于lftp,我使用以下配置:

1d [fauve:~/lftptest] % openssl s_client -starttls ftp -crlf -connect ftp.idrissi.co:21 > ftp-idrissi-temp.cert 

1d [fauve:~/lftptest] 130 % cat ftp-idrissi-temp.cert | pcregrep -M '\-----BEGIN CERTIFICATE-----(.*\n)*.*-----END CERTIFICATE-----' > ftp-idrissi.cert 
1d [fauve:~/lftptest] % vim ftp-idrissi.cert 
1d [fauve:~/lftptest] % cat lftp-script
set ftps:initial-prot P
set ftp:ssl-force true
set ftp:ssl-protect-data true
set ssl:cert-file ./ftp-idrissi.cert
ls       
1d [fauve:~/lftptest] % lftp -e "`cat lftp-script| sed 's/\n/; /'`"  -p 21 -u [email protected] ftps://ftp.idrissi.co                                                                          
ls: Erreur fatale: gnutls_handshake: An unexpected TLS packet was received.
1d [fauve:~/lftptest] 1 % lftp -e "`cat lftp-script| sed 's/\n/; /'`"  -p 21 -u [email protected] ftp://ftp.idrissi.co 
ls: Erreur fatale: Certificate verification: certificate common name doesn't match requested host name « ftp.idrissi.co »

我尝试了很多变体,lftp-script但它不起作用。我不明白 Fillezilla 如何使用极简配置来做到这一点。那么,如何连接到我的 FTP 帐户呢?

答案1

终于,我明白了。

问题通过 解决set ssl:check-hostname false

相关内容