赞
踩
以下是常用的 iptables 命令及示例,在此列出 100 条:
iptables -F
iptables -X
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT # 允许 ICMP 协议包通过
iptables -A INPUT -p udp --dport 53 -j ACCEPT # 允许 DNS 协议包通过
iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 允许 SSH 协议包通过
iptables -A INPUT -s 192.168.1.0/24 -j DROP
iptables -A INPUT -m mac --mac-source 00:11:22:33:44:55 -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner www-data -j ACCEPT
iptables -A FORWARD -p tcp --syn -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -p udp -d 192.168.2.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j REJECT
iptables -A INPUT -s 192.168.1.0/24 -j DROP
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 10/sec -j ACCEPT
bash script.sh
iptables -L
iptables -L INPUT
iptables -L INPUT -v
iptables -S
iptables -A INPUT -m mac --mac-source 00:11:22:33:44:55 -j ACCEPT
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport ssh -j ACCEPT
iptables -A INPUT -p icmp -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED -s 192.168.1.0/24 -j ACCEPT
iptables -t nat -A PREROUTING -m statistic --mode nth --every 2 --packet 0 -j DNAT --to-destination 192.168.1.2:80
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -A INPUT -p tcp -m tcp --dport 8080 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 8080 -m state --state ESTABLISHED -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.2:80
iptables -A FORWARD -p tcp -m tcp --dport 80 -d 192.168.1.2 -j ACCEPT
iptables -A INPUT -s 192.168.1.10 -j DROP
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -s 192.168.1.10 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -s 192.168.1.10 -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -j DROP
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
iptables -I INPUT -i eth0 ! -s 192.168.0/24 -j DROP
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -i eth0 -p tcp --dport 6000 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 6000 -m state --state ESTABLISHED -j ACCEPT
iptables -N syn_flood
iptables -A INPUT -p tcp --syn -j syn_flood
iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN
iptables -A syn_flood -j DROP
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 24 -j DROP
iptables -A INPUT -p icmp --icmp-type echo-request -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -m state --state ESTABLISHED -j ACCEPT
sysctl -w net.ipv4.ip_forward=1 # 启用IP地址转发
echo 1 > /proc/sys/net/ipv4/ip_forward # 启用IP地址转发
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # 添加 NAT 规则
echo 1 > /proc/sys/net/ipv4/ip_forward # 启用 IP 转发功能
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT # 接受接口1到接口0的转发
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT # 接受回复数据包并通过接口1发回
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。