Ubuntu FTP配置被动模式(vsftpd)详细步骤
首先确保系统已安装vsftpd
(Ubuntu默认仓库提供的高安全性FTP服务器),通过以下命令安装:
sudo apt update
sudo apt install vsftpd
使用文本编辑器(如nano
)打开vsftpd的主配置文件/etc/vsftpd.conf
:
sudo nano /etc/vsftpd.conf
在文件中添加或修改以下关键参数,以启用被动模式并设置相关规则:
pasv_enable
的注释(或直接设置为YES
),开启被动模式功能。pasv_address
为服务器的公网IP(若未设置,客户端可能无法正确连接被动模式端口)。local_enable=YES
,允许系统用户通过FTP登录。write_enable=YES
,允许用户上传/修改文件(若需限制写权限,可调整为NO
)。示例配置片段:
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=50100
pasv_address=你的服务器公网IP # 如123.45.67.89(云服务器必填)
local_enable=YES
write_enable=YES
保存配置文件并退出编辑器(nano
中按Ctrl+O
→Enter
→Ctrl+X
),然后重启vsftpd服务使更改生效:
sudo systemctl restart vsftpd
验证服务状态(可选):
sudo systemctl status vsftpd
若显示“active (running)”,则表示服务已正常启动。
若服务器启用了ufw
(Ubuntu默认防火墙),需放行FTP控制端口(21)和被动模式端口范围:
sudo ufw allow 21/tcp # FTP控制端口
sudo ufw allow 50000:50100/tcp # 被动模式端口范围(需与配置文件一致)
sudo ufw reload # 重新加载防火墙规则
使用FTP客户端(如FileZilla
或命令行工具)连接服务器,务必选择“被动模式”(Passive Mode):
ftp 你的服务器IP
连接后输入passive
命令启用被动模式,再执行ls
查看文件列表(若能正常列出文件,则说明被动模式配置成功)。/etc/ftpusers
或/etc/vsftpd.user_list
是否禁止了该用户。pasv_address
设置为服务器公网IP;被动模式端口范围已正确放行。通过以上步骤,即可在Ubuntu上成功配置vsftpd的被动模式,支持客户端通过防火墙/NAT环境进行稳定的FTP文件传输。