发布网友 发布时间:2022-04-30 13:35
共5个回答
热心网友 时间:2022-04-12 00:08
不建议关闭iptables,可以设置规则让FTP端口通过过滤。
ftp端口比较特殊,分为连接用的端口,当上传下载文件的传输数据用的端口。并不像80,22这些端口。
netstat -tnl 命令可以看到,现在运行了ftp服务。
[root@localhost root]# iptables -L -n
这里现在只允许 22 端口的访问。
现在开始对ftp端口的设置,ftp连接端口有2个 21 和 20 端口,现在添加对应的规则。
[root@localhost root]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@localhost root]# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
[root@localhost root]# iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT
[root@localhost root]# iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT
添加完浏览器访问一下ftp,会出现超时。
例如目录列表, 上传 ,下载 文件都要用到这些端口。
而这些端口是任意端口。 这个任意真的比较特殊。如果不指定什么一个端口范围, iptables 很难对任意端口开放的,如果iptables允许任意端口访问, 那和不设置防火墙没什么区别,所以不现实的。
那么解决办法就是指定这个数据传输端口的一个范围。
下面修改一下ftp配置文件。
这里使用vsftpd来修改演示。
[root@localhost root]# vi /etc/vsftpd.conf
在配置文件的最下面 加入
pasv_min_port=30001
pasv_max_port=31000
然后保存退出。
这两句话的意思告诉vsftpd, 要传输数据的端口范围就在30001到31000 这个范围内传送。
这样使用 iptables 就好办多了,只需打开 30001到31000 这些端口。
[root@localhost root]# iptables -A INPUT -p tcp --dport 30001:31000 -j ACCEPT
[root@localhost root]# iptables -A OUTPUT -p tcp --sport 30001:31000 -j ACCEPT
[root@localhost root]# service iptables save
最后进行保存, 然后再用浏览器范围下ftp。即可正常访问。
热心网友 时间:2022-04-12 01:26
不建议关闭iptables服务,应该进行防火墙规则的配置。热心网友 时间:2022-04-12 03:01
哎!就没有任何一个人说句明白话!去查文档吧,iptables是内核级安全,永远不可能真的关闭掉!所谓的关闭,只是不加载初始条目!一般那个初始条目都是不加载的,因为太多条目了!我们可以根据自己须要重写还好一些!热心网友 时间:2022-04-12 04:52
楼上给的是shell命令,你可以创建一个shell脚本,这样比较方便,省得你每次都输入那么长的命令。