Products
96SEO 2025-07-15 20:19 1
先说说您需要了解iptables的基本概念和功能。iptables是一个有力巨大的Linux防火墙工具,用于在网络层对数据包进行过滤。在CentOS系统中,iptables的配置文件地址为:/etc/sysconfig/ipconfig。
/etc/sysconfig/ipconfig
# Generated by iptables-save v1.3.5 on Mon Apr 2 22:57:22 2012
*filter
:INPUT ACCEPT
:FORWARD DROP
:OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
COMMIT
要熟练掌握iptables, 您需要熟悉以下命令:
iptables {-A | -D} chain rule
其中,-t指定表格,-A或-D指定添加或删除规则,chain指定链,rule指定规则。
iptables规则能用许多种匹配条件, 比方说:
iptables规则按照优先级从高大到矮小施行。如果优良几个规则匹配同一个数据包,则先施行优先级高大的规则。
iptables支持许多链策略,您能为不同的链定义不同的规则。
您能将自定义链挂载到现有的链中,比方说将自定义链挂载到INPUT链中。
您能通过指定规则优先级来控制规则的施行顺序。
iptables-mangle模块能用于修改数据包的TTL、 tos、mark等属性。
iptables-conntrack模块能用于跟踪连接状态, 比方说建立、断开等。
周围中配置不同的场景,以加深厚搞懂。
iptables -A INPUT -p tcp -s 192.168.1.100 -d 192.168.1.200 --dport 80 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.1.100 -d 192.168.1.200 --dport 53 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -j DROP
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.100 --dport 80 -j DNAT --to-destination 192.168.1.200:80
iptables -t nat -A POSTROUTING -s 192.168.1.100/24 -o eth0 -j MASQUERADE
iptables -t mangle -A POSTROUTING -s 192.168.1.100/24 -o eth0 -j MARK --set-mark 1
iptables -t nat -A PREROUTING -m mark --mark 1 -j DNAT --to-destination 192.168.1.200:80
iptables -t mangle -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j MARK --set-mark 2
iptables -t nat -A POSTROUTING -m mark --mark 2 -j SNAT --to-source 192.168.1.100
Demand feedback