温馨提示×

Filezilla在Debian上如何进行SSL加密传输

小樊
37
2025-12-08 20:05:54
栏目: 云计算

在Debian上使用FileZilla进行SSL加密传输

一 概念与协议选择

  • 使用**FTPS(FTP over SSL/TLS)**实现SSL加密,支持两种模式:显式 TLS(Explicit,常用端口 21)隐式 TLS(Implicit,常用端口 990)
  • 若服务器实际提供的是SFTP(SSH File Transfer Protocol),则并非SSL/TLS,而是在站点管理器中将协议选为SFTP并使用密钥或密码认证。
  • 客户端与服务器需就加密方式达成一致:服务器启用SSL/TLS后,客户端在站点管理器里选择“显式/隐式”与之匹配。

二 作为服务器在Debian上启用FTPS

  • 安装FileZilla Server(Debian 10/11/12 常见做法):
    • 下载适用于Debian的服务器安装包(.deb),例如:
      • wget https://dl3.cdn.filezilla-project.org/server/FileZilla_Server_1.7.3_x86_64-linux-gnu.deb
      • sudo dpkg -i FileZilla_Server_1.7.3_x86_64-linux-gnu.deb
    • 启动并检查服务状态:
      • sudo systemctl status filezilla-server.service
  • 生成证书并启用SSL/TLS:
    • 打开管理界面(FileZilla Server Interface),进入 Edit → Settings → SSL/TLS Settings。
    • 点击 Generate new certificate 生成自签名证书(填写国家、组织、域名等),保存。
    • 勾选 Enable FTP over SSL/TLS support,并根据需要设置“要求显式/隐式”与端口。
  • 被动模式与防火墙:
    • 在 Edit → Settings → Passive Mode Settings 中设置被动端口范围(如:14140–14146)。
    • 放行防火墙端口:
      • 显式 FTPS:放行21与被动端口范围(如14140–14146)。
      • 隐式 FTPS:放行990与被动端口范围(如14140–14146)。
      • 如使用 UFW:sudo ufw allow 21/tcp;sudo ufw allow 990/tcp;sudo ufw allow 14140:14146/tcp
  • 可选:强制加密
    • 在用户设置中可勾选Force SSL for user login,要求用户登录即使用加密。

三 作为客户端在Debian上连接FTPS

  • 安装FileZilla客户端:
    • sudo apt update && sudo apt install filezilla
  • 站点管理器配置(File → Site Manager → New Site):
    • 协议:选择 FTP,加密选择:
      • 显式 TLS/SSL(端口 21):常规连接,首次会弹出证书指纹确认。
      • 隐式 TLS/SSL(端口 990):连接到 990 端口时自动启用加密。
    • 填写主机、端口、用户名、密码,点击 Connect
  • 连接问题排查:
    • 若出现 425 Can’t open data connection,在“传输设置/传输模式”中尝试切换主动模式被动模式后重试。

四 常见问题与排错要点

  • 证书信任:首次连接会提示信任新证书,确认指纹无误后勾选“总是信任未来连线的凭证”再连接。
  • 数据通道失败:遇到425错误,切换主动/被动模式;同时确保被动端口范围已在服务器与防火墙放行。
  • 协议混淆:服务器若仅支持SFTP(基于SSH),在客户端站点管理器中需将协议改为SFTP而非FTP/FTPS。
  • 端口与模式匹配:服务器启用隐式时,客户端需连接990并选择隐式;服务器启用显式时,客户端用21并选择显式。

0