为什么选择SFTP而不是FTP

先厘清一个关键区别:FTP以明文传输数据,密码和文件内容在网络上"裸奔";SFTP基于SSH协议,全程加密,安全性完全不在一个量级。如今绝大多数云服务器(AWS EC2、阿里云ECS、腾讯云CVM等)默认只开放SSH端口(22),根本不提供传统FTP服务。换句话说,SFTP不是可选项,而是标配。

FileZilla相关配图

FileZilla从3.x版本起就内置了SFTP支持,无需额外安装插件。截至2024年底,最新稳定版为FileZilla 3.67.1,支持Windows、macOS和Linux三大平台。它的优势很直接:免费、开源、中文界面、拖拽传输、断点续传,对于需要频繁上传下载文件的办公场景来说,上手成本极低。

一个典型场景:你负责公司官网的日常更新,需要把本地改好的HTML、CSS文件上传到Linux服务器。用SFTP连接,改完直接拖过去,比命令行`scp`直观得多,也比网页版文件管理器快得多。

快速连接:用密码登录SFTP服务器

安装好FileZilla后,最快的连接方式是使用顶部的"快速连接栏"。四个字段依次填写:

FileZilla相关配图

- 主机:填写服务器IP或域名,格式为 `sftp://你的服务器IP`(注意前缀是`sftp://`而不是`ftp://`,这一步很多人会搞错) - 用户名:SSH登录用户名,通常是`root`或你创建的普通用户 - 密码:对应的SSH密码 - 端口:默认22,如果你的服务器改过SSH端口,填实际端口号

点击"快速连接",首次连接时会弹出"未知主机密钥"提示框,核对指纹后勾选"始终信任该主机"并确认。连接成功后,左侧显示本地文件目录,右侧显示远程服务器目录,直接拖拽即可传输文件。

不过快速连接有个缺点:不会保存密码。每次连接都要重新输入,对于每天都要操作的高频场景效率太低。解决方案在下一节。

站点管理器:保存配置实现一键连接

打开菜单栏"文件 → 站点管理器"(快捷键 `Ctrl+S`),点击"新站点",按以下参数配置:

FileZilla相关配图

| 配置项 | 填写内容 | |---|---| | 协议 | 选择"SFTP - SSH File Transfer Protocol" | | 主机 | 服务器IP或域名(不加前缀) | | 端口 | 22(或自定义端口) | | 登录类型 | "正常"(密码登录)或"密钥文件"(下文详述) | | 用户 | SSH用户名 | | 密码 | SSH密码 |

配置完成后点击"连接",以后每次打开FileZilla,在站点管理器里双击站点名称就能一键登录。你还可以在"高级"选项卡中设置默认的本地目录和远程目录,比如本地锁定到`D:\项目文件`,远程锁定到`/var/www/html`,省去每次手动导航的时间。

对于管理多台服务器的运维人员,站点管理器支持文件夹分组。按"生产环境""测试环境""客户服务器"分类管理,几十台机器也能井井有条。

进阶:使用SSH密钥认证连接

很多云服务器禁用了密码登录,只允许密钥认证。FileZilla完整支持这一方式,但有一个细节需要注意:FileZilla只识别PPK格式的密钥文件。如果你手上是OpenSSH格式的`.pem`或`id_rsa`私钥(从AWS下载的密钥通常就是`.pem`),需要先转换。

转换步骤:

1. 下载并打开PuTTYgen(PuTTY官网免费下载) 2. 点击"Load",文件类型选"All Files",选中你的`.pem`文件 3. 导入成功后点击"Save private key",保存为`.ppk`文件

回到FileZilla站点管理器,登录类型选择"密钥文件",浏览选中刚才保存的`.ppk`文件,用户名填对应的系统用户(AWS EC2通常是`ec2-user`或`ubuntu`),密码留空,点击连接即可。

实际场景举例:你在AWS上部署了一个Node.js应用,需要更新`/home/ec2-user/app/`目录下的配置文件。用密钥认证连接后,直接把本地修改好的`.env`文件拖到右侧对应目录,覆盖即可,整个过程不超过10秒。

常见连接故障排查

即使配置正确,实际使用中仍然可能遇到连接失败。以下是两个高频问题的具体排查方法:

故障一:连接超时(Connection timed out)

这通常不是FileZilla的问题,而是网络层面被拦截了。排查顺序:

1. 确认服务器安全组/防火墙是否放行了SSH端口(默认22)。阿里云用户检查"安全组规则",AWS用户检查"Security Group"的Inbound Rules 2. 在本地终端执行 `telnet 服务器IP 22`,如果无法连通,说明端口确实不通 3. 如果服务器改过SSH端口(比如改成2222),FileZilla里的端口也要同步修改

故障二:认证失败(Authentication failed)

密码或密钥不对。具体检查:

1. 密码登录:确认密码没有多余空格,注意区分大小写。可以先用终端`ssh 用户名@服务器IP`测试能否登录 2. 密钥登录:确认`.ppk`文件是从正确的私钥转换而来,且用户名与密钥匹配。常见错误是AWS的`.pem`密钥对应的用户名填成了`root`,实际应该是`ec2-user`或`ubuntu` 3. 检查FileZilla的消息日志(底部面板),里面会显示具体的错误代码,比如"Permission denied"往往指向用户名或密钥不匹配

总结

FileZilla连接SFTP的核心流程就三步:确认协议选SFTP、填对主机和端口、搞定认证方式(密码或密钥)。站点管理器能帮你把这些配置固化下来,日常使用时一键直达。遇到连接问题,优先查安全组和端口,再查认证信息,基本能覆盖90%的故障场景。

如果你还没有安装FileZilla,可以前往官网 [filezilla-project.org](https://filezilla-project.org) 免费下载最新版本,按照这篇教程配置好SFTP连接,把你的服务器文件管理效率提上来。

相关阅读:FileZilla连接SFTP教程FileZilla连接SFTP教程使用技巧FileZilla使用教程:5个被忽略的效率技巧