Iptables 是标准的 Linux防火墙应用程序,在没有硬件防火墙的情况下,使用iptables也是一种简单经济的解决方案。本例中如何通过使用iptables限制客户端访问ftp和ssh端口
开启和关闭iptables功能,还有保存和重新加载相关配置的命令
service iptables start
service iptables stop
service iptables save
service iptables reload
service iptables status
chkconfig –list iptables
备注:调整防火墙随时可能导致不能从远端连接到服务器,所以一定要小心,比较可行的方法是在调试阶段设置一个crontab任务,每隔一段时间关闭防火墙。及时网络不通了,一段时间后又恢复了
查看当前的防火墙设置
iptables -L INPUT -n –line-numbers ,通过命令iptables -L也可以查看,本例开通了
删除一条策略,例如第4行策略
iptables -D INPUT 4
设置策略为drop,默认是accept
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
本质上iptables的配置是报错在相关配置文件中
[root@log1 ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Thu Nov 21 09:36:20 2013
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -s 192.168.9.0/24 -p tcp -m tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.9.0/24 -p tcp -m tcp –dport 21 -m state –state NEW,ESTABLISHED -j ACCEPT
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2013-11/93201p2.htm
推荐阅读:
iptables—包过滤(网络层)防火墙 http://www.linuxidc.com/Linux/2013-08/88423.htm
Linux防火墙iptables详细教程 http://www.linuxidc.com/Linux/2013-07/87045.htm
iptables+L7+Squid实现完善的软件防火墙 http://www.linuxidc.com/Linux/2013-05/84802.htm
iptables的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm
Linux下防火墙iptables用法规则详解 http://www.linuxidc.com/Linux/2012-08/67952.htm
简单应用的小例子
开通ssh
iptables -A INPUT -p tcp -s 192.168.9.0/24 –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT
开通ftp端口
–备注,未支持ftp,由于ftp特殊的联系方法,需要设置特殊的端口和开启相关的服务
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
# Allow Passive FTP Connections
iptables -A INPUT -p tcp -s 192.168.9.0/24 –dport 1024 -m state –state NEW,ESTABLISHED -j ACCEPT
# Allow Active FTP Connections
iptables -A INPUT -p tcp -s 192.168.9.0/24 –dport 20 -m state –state NEW,ESTABLISHED -j ACCEPT
# Allow FTP connections @ port 21
iptables -A INPUT -p tcp -s 192.168.9.0/24 –dport 21 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp –sport 20 -m state –state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp –sport 1024 -m state –state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp –sport 21 -m state –state ESTABLISHED -j ACCEPT