赞
踩
iptables常用命令:
常见设置参数介绍:
iptables配置文件
配置文件位置: /etc/sysconfig/iptables
iptables服务命令
-- 启动服务
# /etc/init.d/iptables start
# service iptables start
-- 停止服务
# /etc/init.d/iptables stop
# service iptables stop
-- 重启服务
# /etc/init.d/iptables restart
# service iptables restart
-- 保存设置
# /etc/init.d/iptables save
# service iptables save
查看iptables的配置信息
# iptables -L -n
清除原有防火墙规则
# iptables -F
# iptables -X
# /etc/init.d/iptables save
或
# service iptables save
设定预设规则
-- 请求接入包丢弃
[root@home ~]# iptables -p INPUT DROP
-- 接受响应数据包
[root@home ~]# iptables -p OUTPUT ACCEPT
-- 转发数据包丢弃
[root@home ~]# iptables -p FORWARD DROP
添加防火墙规则
首先添加INPUT链,INPUT链的默认规则是DROP,所以我们就写需要ACCETP(通过)的链。
[root@tp ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@tp ~]# iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
注:如果在预设设置把OUTPUT设置成DROP策略的话,就需要设置OUTPUT规则,否则无法进行SSH连接。
[root@tp ~]# iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 110 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 25 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
[root@tp ~]# iptables -A INPUT -p tcp --dport 53 -j ACCEPT
[root@tp ~]# iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT设置成DROP的话)
[root@tp ~]# iptables -A INPUT -p icmp -j ACCEPT (INPUT设置成DROP的话)
不然会导致DNS无法正常关闭等问题
[root@tp ~]# IPTABLES -A INPUT -i lo -p all -j ACCEPT
(如果是INPUT DROP)
[root@tp ~]# IPTABLES -A OUTPUT -o lo -p all -j ACCEPT
(如果是OUTPUT DROP)
[root@tp ~]# iptables -A OUTPUT -p tcp --sport 31337 -j DROP
[root@tp ~]# iptables -A OUTPUT -p tcp --dport 31337 -j DROP
说明:有些特洛伊木马会扫描端口31337到31340(即黑客语言中的 elite 端口)上的服务。既然合法服务都不使用这些非标准端口来通信,阻塞这些端口能够有效地减少你的网络上可能被感染的机器和它们的远程主服务器进行独立通信的机会。此外,其他端口也一样,像:31335、27444、27665、20034 NetBus、9704、137-139(smb),2049(NFS)端口也应被禁止。
只允许192.168.0.3的机器进行SSH连接
[root@tp ~]# iptables -A INPUT -s 192.168.0.3 -p tcp --dport 22 -j ACCEPT
如果允许或限制一段IP地址可用192.168.0.0/24
表示192.168.0.1-255端的所有IP, 24表示子网掩码数。
[root@tp ~]# iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT
注意:指定某个主机或者某个网段进行SSH连接,需要在iptables配置文件中的
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
删除,因为它表示所有地址都可以登陆.
如果只允许除了192.168.0.3的主机外都能进行SSH连接
[root@tp ~]# iptables -A INPUT -s ! 192.168.0.3 -p tcp --dport 22 -j ACCEPT
在做NAT网络配置时,FORWARD默认规则是DROP时,必须开启数据包转发功能
[root@tp ~]# iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
[root@tp ~]# iptables -A FORWARD -i eth1 -o eh0 -j ACCEPT
[root@tp ~]#iptables -A FORWARD -p TCP ! --syn -m state --state NEW -j DROP
[root@tp ~]#iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT
[root@tp ~]#iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
[root@tp ~]# iptables -A INPUT -m state --state INVALID -j DROP
[root@tp ~]# iptables -A OUTPUT -m state --state INVALID -j DROP
[root@tp ~]# iptables -A FORWARD -m state --state INVALID -j DROP
[root@tp ~]# iptables-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@tp ~]# iptables-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@tp ~]# /etc/rc.d/init.d/iptables save
查看本机关于NAT的设置情况
[root@tp rc.d]# iptables -t nat -L
清除NAT规则
[root@tp ~]# iptables -F -t nat
[root@tp ~]# iptables -X -t nat
[root@tp ~]# iptables -Z -t nat
添加规则
添加基本的NAT地址转换,添加规则时,我们只添加DROP链,因为默认链全是ACCEPT。
[root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 10.0.0.0/8 -j DROP
[root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 172.16.0.0/12 -j DROP
[root@tp sysconfig]# iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/16 -j DROP
[root@tp ~]# iptables -t nat -A PREROUTING -d 211.101.46.253 -j DROP
[root@tp ~]# iptables -t nat -A PREROUTING -p tcp --dport 21 -j DROP
只禁用211.101.46.253地址的FTP连接,其他连接可以进行。
[root@tp ~]# iptables -t nat -A PREROUTING -p tcp --dport 21 -d 211.101.46.253 -j DROP
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。