在Ubuntu上配置VSFTPD(Very Secure FTP Daemon)的防火墙设置,通常涉及以下几个步骤:
首先,确保你已经安装了VSFTPD。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install vsftpd
编辑VSFTPD的配置文件 /etc/vsftpd.conf,确保以下设置是正确的:
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
Ubuntu默认使用ufw(Uncomplicated Firewall)作为防火墙管理工具。你可以使用以下命令来配置防火墙规则,允许VSFTPD的流量通过。
如果你还没有启用防火墙,可以使用以下命令启用它:
sudo ufw enable
VSFTPD默认使用端口21进行控制连接,端口20进行数据连接。你可以使用以下命令来允许这些端口的流量:
sudo ufw allow 21/tcp
sudo ufw allow 20/tcp
VSFTPD的被动模式通常使用一个范围的自定义端口。你需要允许这些端口的流量。编辑 /etc/vsftpd.conf 文件,找到 pasv_min_port 和 pasv_max_port 设置,并确保它们是正确的。例如:
pasv_min_port=50000
pasv_max_port=50100
然后,允许这些端口的流量:
sudo ufw allow 50000:50100/tcp
配置完成后,重启VSFTPD服务以应用更改:
sudo systemctl restart vsftpd
你可以使用以下命令来查看当前的防火墙规则,确保它们已经正确应用:
sudo ufw status
你应该看到类似以下的输出,表明FTP流量已经被允许:
21/tcp ALLOW Anywhere
20/tcp ALLOW Anywhere
50000:50100/tcp ALLOW Anywhere
通过以上步骤,你应该能够在Ubuntu上成功配置VSFTPD的防火墙设置。