Linux iptables

时间:2022-07-20 15:13:45

一、简介

 

二、教程

1)基础教程

 

三、常用操作

1)查看规则

iptables  -t filter -L -n
iptables -t nat -L -n
iptables -t mangle -L -n
iptables -t raw -L -n

2)添加规则

iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT

3)删除规则

iptables -D INPUT 3               //删除input的第3条规则
iptables -t nat -D POSTROUTING 1 //删除nat表中postrouting的第一条规则
iptables -F INPUT //清空 filter表INPUT所有规则
iptables -F //清空所有规则
iptables -t nat -F POSTROUTING //清空nat表POSTROUTING所有规则

4)修改规则

iptables -R INPUT 3 -j DROP    //将规则3改成DROP

5)保存规则

iptables-save > /root/iptables.save

6)恢复规则

iptables-restore -n < /root/iptabls.save

 

四、实例

1) NAT地址转换--实现外网转发内网

1)开启Linux网卡的转发功能
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p 2)nat配置,模板如下
iptables -t nat -I PREROUTING -d 公网IP -p tcp --dport 公网PORT -j DNAT --to 内网IP:PORT
iptables -t nat -I POSTROUTING -d 内网IP -p tcp --dport 内网PORT -j SNAT --to 公网IP
iptables -I FORWARD -p tcp -d 内网IP --dport 内网PORT -j ACCEPT
1)HTTP转发: 实现效果http://4.4.4.6 的访问转发到4.4.4.25:8080
iptables -t nat -I PREROUTING -d 4.4.4.6 -p tcp --dport 80 -j DNAT --to 4.4.4.25:8080
iptables -t nat -I POSTROUTING -d 4.4.4.25 -p tcp --dport 8080 -j SNAT --to 4.4.4.6
iptables -I FORWARD -p tcp -d 4.4.4.25 --dport 8080 -j ACCEPT 2)HTTPS转发:实现效果https://4.4.4.6 的访问转发到4.4.4.25:443
iptables -t nat -I PREROUTING -d 4.4.4.6 -p tcp --dport 443 -j DNAT --to 4.4.4.25:443
iptables -t nat -I POSTROUTING -d 4.4.4.25 -p tcp --dport 443 -j SNAT --to 4.4.4.6
iptables -I FORWARD -p tcp -d 4.4.4.25 --dport 443 -j ACCEPT 3)TCP转发:实现效果ssh 4.4.4.6 登陆的是主机 4.4.4.25
iptables -t nat -I PREROUTING -d 4.4.4.6 -p tcp --dport 22 -j DNAT --to 4.4.4.25:22
iptables -t nat -I POSTROUTING -d 4.4.4.25 -p tcp --dport 22 -j SNAT --to 4.4.4.6
iptables -I FORWARD -p tcp -d 4.4.4.25 --dport 22 -j ACCEPT

2)9个常用iptables配置实例

3)linux防火墙iptables常用规则

4)25 Most Frequently Used Linux IPTables Rules Examples

 

四、其他

1)MASQUERADE与SNAT

2)流量控制