在Debian上设置FTP服务器防火墙,你需要使用iptables
或ufw
(Uncomplicated Firewall)来配置防火墙规则。以下是使用这两种方法的步骤:
iptables
更新系统:
sudo apt update && sudo apt upgrade -y
安装FTP服务器(如果你还没有安装):
sudo apt install vsftpd -y
配置FTP服务器:
编辑/etc/vsftpd.conf
文件,确保以下设置:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
重启FTP服务:
sudo systemctl restart vsftpd
配置防火墙:
使用iptables
添加规则来允许FTP流量。以下是一些基本的规则:
允许FTP控制连接(默认端口21):
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
允许FTP数据连接(动态端口范围通常是1024-65535):
sudo iptables -A INPUT -p tcp --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
允许被动模式连接(假设被动模式端口范围是50000-50050):
sudo iptables -A INPUT -p tcp --dport 50000:50050 -m state --state ESTABLISHED,RELATED -j ACCEPT
保存防火墙规则:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
ufw
更新系统:
sudo apt update && sudo apt upgrade -y
安装ufw
(如果还没有安装):
sudo apt install ufw -y
启用ufw
:
sudo ufw enable
配置FTP服务器:
编辑/etc/vsftpd.conf
文件,确保以下设置:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
重启FTP服务:
sudo systemctl restart vsftpd
配置防火墙规则:
使用ufw
添加规则来允许FTP流量:
允许FTP控制连接(默认端口21):
sudo ufw allow 21/tcp
允许FTP数据连接(动态端口范围通常是1024-65535):
sudo ufw allow 1024:65535/tcp
允许被动模式连接(假设被动模式端口范围是50000-50050):
sudo ufw allow 50000:50050/tcp
重新加载ufw
规则:
sudo ufw reload
/etc/vsftpd.conf
中的被动模式端口范围与防火墙规则中的端口范围一致。通过以上步骤,你应该能够在Debian上成功设置FTP服务器的防火墙。