配置iptables(validation,主动服务,允许FTP)

我在Xubuntu中试验IPT(iptables)。

第一次实验wato允许所有OUTPUT流量并阻止除已经存在的TCP连接之外的所有INPUT,有人可以validation这些是否正确

在此处输入图像描述

为了更高级,我试图允许als TCP连接到我的工作站上的活动服务。 我的想法是进行nmap扫描并grep监听/打开端口,但我可能已经过度思考了。

最后我试图允许FTP。
我使用这个额外的规则来允许FTP,但似乎我仍然被阻止

  sudo iptables -A INPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT 

FTP有点奇怪,允许端口21上的入站流量和端口20上的出站流量:

 sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT sudo iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT 

另外ftp将使用随机更高的端口。 为此,您需要在启动时加载ip_conntrack_ftp模块。 取消注释并修改/ etc / sysconfig / iptables-config文件中的IPTABLES_MODULES行以读取

 IPTABLES_MODULES="ip_conntrack_ftp" 

您仍然需要一种方法来保存iptables配置并在启动时恢复它。 Ubuntu没有这么简单的方法。 基本上,您可以使用/etc/rc.local或禁用NetworkManager并使用网络脚本。

首先保存您的规则:

 sudo iptables-save /etc/iptables.save 

方法1:编辑/etc/rc.local并添加该行

 iptables-restore /etc/iptables.save 

方法2:编辑/etc/network/interfaces并使用“post-up”来启用iptables规则。

 auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp post-up /sbin/iptables-restore /etc/iptables.save 

然后重启。

首选方法可能是使用UFW

 sudo ufw allow ftp 

UFW是Ubuntu的fedault工具,使用与iptables非常相似的语法,并在重启时启用并恢复。

看到:

https://serverfault.com/questions/38398/allowing-ftp-with-iptables

http://slacksite.com/other/ftp.html

http://bodhizazen.com/Tutorials/iptables

https://help.ubuntu.com/community/UFW

如果您不熟悉 iptables,可能需要使用gufw或ufw来初始设置规则。 您可以使用像“允许传入ftp”这样简单的规则,而不需要了解所有特殊标志以使其工作。 如果需要,它们还允许您设置高级规则。

ufw和gufw都在幕后创建了iptables规则。