温馨提示×

CentOS中FileZilla的加密传输设置

小樊
39
2025-12-25 05:40:18
栏目: 网络安全

CentOS中FileZilla的加密传输设置

一、前置说明与协议选择

  • CentOS 上,FileZilla通常指客户端。要实现加密传输,常见有两种方式:
    • FTPS(FTP over SSL/TLS):使用 990/tcp(隐式)21/tcp(显式),需要服务器端(如 vsftpd)启用 SSL/TLS。
    • SFTP(SSH File Transfer Protocol):使用 22/tcp,基于 SSH,与 FTP 协议无关。
  • 注意区分:FileZilla Client 不支持 SFTP 协议;若服务器仅提供 SFTP,请改用支持 SFTP 的客户端(如 sftp、lftp、WinSCP)。

二、使用FTPS连接服务器(推荐显式TLS)

  • 服务器端(以 vsftpd 为例)关键配置示例(/etc/vsftpd/vsftpd.conf):
    • 启用并限制加密协议:
      • ssl_enable=YES
      • ssl_tlsv1_2=YES
      • ssl_sslv2=NO
      • ssl_sslv3=NO
    • 指定证书与密钥(同一 pem 文件示例):
      • rsa_cert_file=/etc/ssl/private/vsftpd.pem
      • rsa_private_key_file=/etc/ssl/private/vsftpd.pem
    • 强制本地用户加密登录与数据传输:
      • allow_anon_ssl=NO
      • force_local_logins_ssl=YES
      • force_local_data_ssl=YES
    • 会话复用与加密套件:
      • require_ssl_reuse=NO
      • ssl_ciphers=HIGH
    • 被动模式端口范围(示例):
      • pasv_min_port=40000
      • pasv_max_port=50000
    • 防火墙放行(firewalld):
      • firewall-cmd --permanent --add-port=990/tcp
      • firewall-cmd --permanent --add-port=40000-50000/tcp
      • firewall-cmd --reload
    • 重启服务:systemctl restart vsftpd
  • FileZilla 客户端站点设置(Site Manager):
    • Host:服务器 IP/域名
    • Protocol:FTP – File Transfer Protocol
    • Encryption:Require explicit FTP over TLS(推荐显式)
    • Logon Type:Ask for password
    • User:你的 FTP 用户名
    • 首次连接会弹出证书指纹确认,核对后选择“始终信任”。

三、使用SFTP连接服务器(基于SSH)

  • 适用场景:服务器提供 SFTP(22/tcp) 服务(常见于 OpenSSH)。
  • FileZilla 客户端站点设置(Site Manager):
    • Host:服务器 IP/域名
    • Protocol:SFTP – SSH File Transfer Protocol
    • Port:22
    • Logon Type:Ask for passwordNormal
    • User/Password:SSH 凭据
  • 说明:SFTP 不需要 FTP 的 990/21 端口,走 SSH 通道;若需端口转发,可在本地建立 SSH 隧道后连接本地端口。

四、防火墙与被动模式要点

  • 使用 FTPS 显式(21/tcp):控制通道走 21,数据通道为动态端口;需放行服务器端的被动端口范围(如 40000-50000/tcp),并在 vsftpd 中设置 pasv_min_port/pasv_max_port。
  • 使用 FTPS 隐式(990/tcp):通常固定 990/tcp 为控制通道;数据通道同样依赖被动端口范围,需与服务器配置一致并放行。
  • 使用 SFTP(22/tcp):仅放行 22/tcp 即可(以及系统的 SSH 访问策略)。

五、常见问题与排查

  • 出现“530 Non-anonymous sessions must use encryption.”:说明服务器强制加密,请在 FileZilla 将 Encryption 设为 Require explicit FTP over TLS 再连接。
  • 证书不受信任:首次连接会提示证书指纹,核对 Common Name/颁发者/有效期 后选择“始终信任”,避免中间人风险。
  • 数据连接失败或超时:多为被动端口未放行或 pasv 范围配置不一致;核对服务器 pasv_min_port/pasv_max_port 与防火墙规则是否匹配。
  • 明文 FTP 被拒绝:服务器已禁用明文登录,需改用 显式/隐式 FTPSSFTP

0