所以这是我的“问题”,感谢vsftpd ,我设置了一个 FTP 服务器,以便对登录和数据传输都进行加密。
这是我的vsftpd.conf文件中有趣的部分。
ssl_enable=YES
allow_anon_ssl=NO
require_ssl_reuse=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
rsa_cert_file=/etc/vsftpd/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/vsftpd.pem
ssl_ciphers=HIGH
我使用Filezilla作为 FTP 客户端,连接配置如下:
Protocol : FTP - File Transfer Protocol
Encryption : Require explicit FTP over TLS
Logon type: Normal
需要注意的一些事项:
加密:普通 FTP:不起作用,我对此很满意。(响应:530 非匿名会话必须使用加密。)
加密:需要基于 TLS 的隐式 FTP:也不起作用,服务器拒绝连接。我想这是因为我强制 SSL 连接。
现在,一旦建立(显式)连接,Filezilla 会在窗口底部显示一个小锁图标,表示连接已加密。点击图标了解详情。
我想确保数据传输确实是加密的而不是明文的,所以我在我的 eth 上捕获了所有内容。将文件从我的服务器下载到我的计算机时使用Wireshark卡。
除了我找不到 SSL 协议的单个数据包外,一切都是 TCP。
我不知道如何确保传输的数据是加密的,即使 filezilla 这么说,每次我用谷歌搜索“vsftpd 如何确保数据传输是加密的”时,我得到的唯一答案是“ssl_enable=YES”或“勾选使用 SSL”...
预先感谢您帮助我!