文档:
iptables 主题文档
http://cmpp.linuxforum.net/NetSnake/
##### 查看当前iptables ##### # iptables -L##### 添加一条封IP或网段的记录 #####
# iptables -A RH-Lokkit-0-50-INPUT -s 211.180.232.172 -j REJECT
# iptables -A RH-Lokkit-0-50-INPUT -p tcp --destination-port 3306 -j REJECT##### iptables 的保存文件 #####
/etc/sysconfig/iptables##### 保存iptables #####
# service iptables save##### 备份iptables #####
# iptables-save##### 清空所有iptables记录 #####
# iptables --flush
VPN 的 Iptables 设置过程:
(Clean iptables: Be able to access 10.100.0.1 but NO INTERNET)
(启动NAT转发)
echo "1" > /proc/sys/net/ipv4/ip_forward
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG(Add follow NAT lines)
/sbin/iptables -t nat -A POSTROUTING -s 10.100.0.0/24 -j MASQUERADE
/sbin/iptables -F FORWARD
/sbin/iptables -P FORWARD ACCEPT(Be able to access BOTH Internet and 10.100.0.1)
(Add filter1)
/sbin/iptables -A INPUT -j RH-Lokkit-0-50-INPUT
/sbin/iptables -A FORWARD -j RH-Lokkit-0-50-INPUT
/sbin/iptables -A RH-Lokkit-0-50-INPUT -i lo -j ACCEPT
/sbin/iptables -A RH-Lokkit-0-50-INPUT -i eth0 -j ACCEPT
/sbin/iptables -A RH-Lokkit-0-50-INPUT -p udp -m udp -j REJECT
/sbin/iptables -A RH-Lokkit-0-50-INPUT -s "221.42.123.14" -j ACCEPT(Add filter2)
/sbin/iptables -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j REJECT
(This line made it Cann't access Internet)(Change this filter to)
/sbin/iptables -A RH-Lokkit-0-50-INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
(This made the access to 10.100.0.1 very slowly)(Change this filter to)
/sbin/iptables -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --tcp-flags RST,ACK SYN -j REJECT( F I N I S H E D )
iptables 的 help 文件
[root@dalouis bin]# iptables --help
iptables v1.2.7aUsage: iptables -[AD] chain rule-specification [options]
iptables -[RI] chain rulenum rule-specification [options]
iptables -D chain rulenum [options]
iptables -[LFZ] [chain] [options]
iptables -[NX] chain
iptables -E old-chain-name new-chain-name
iptables -P chain target [options]
iptables -h (print this help information)Commands:
Either long or short options are allowed.
--append -A chain Append to chain
--delete -D chain Delete matching rule from chain
--delete -D chain rulenum
Delete rule rulenum (1 = first) from chain
--insert -I chain [rulenum]
Insert in chain as rulenum (default 1=first)
--replace -R chain rulenum
Replace rule rulenum (1 = first) in chain
--list -L [chain] List the rules in a chain or all chains
--flush -F [chain] Delete all rules in chain or all chains
--zero -Z [chain] Zero counters in chain or all chains
--new -N chain Create a new user-defined chain
--delete-chain
-X [chain] Delete a user-defined chain
--policy -P chain target
Change policy on chain to target
--rename-chain
-E old-chain new-chain
Change chain name, (moving any references)
Options:
--proto -p [!] proto protocol: by number or name, eg. `tcp'
--source -s [!] address[/mask]
source specification
--destination -d [!] address[/mask]
destination specification
--in-interface -i [!] input name[+]
network interface name ([+] for wildcard)
--jump -j target
target for rule (may load target extension)
--match -m match
extended match (may load extension)
--numeric -n numeric output of addresses and ports
--out-interface -o [!] output name[+]
network interface name ([+] for wildcard)
--table -t table table to manipulate (default: `filter')
--verbose -v verbose mode
--line-numbers print line numbers when listing
--exact -x expand numbers (display exact values)
[!] --fragment -f match second or further fragments only
--modprobe=try to insert modules using this command
--set-counters PKTS BYTES set the counter during insert/append
[!] --version -V print package version.