端口转发到本地端口
开启系统的转发功能
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
或者 echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -p
#Tcp8080转发到80
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
#UDP
iptables -t nat -D PREROUTING -p udp --dport 15060 -j REDIRECT --to-port 5060
查看防火墙记录
iptables -L -n
查看端口转发记录:
iptables -t nat -nL
iptables -t nat -nvL
清空转发规则:
iptables -t nat -F
iptables -F #清除所有规则,只留下默认规则
iptables -N #创建用户自定义的链
iptables -X #清除用户自定义的链
iptables -Z #链的计数器清零
NAT表之SNAT、DNAT、REDIRECT介绍
SNAT:让本地网络中的主机通过某一特定地址访问外部网络,实现地址伪装
示例:
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 111.111.111.111
动态IP(如拨号网络)
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
DNAT:
把本地网络中的主机上的某服务开放给外部网络访问(发布服务和端口映射),但隐藏真实IP
iptables -t nat -A PREROUTING -d 111.111.111.111 -p tcp --dport 22 -j DNAT --to-destination 192.168.1.10
REDIRECT:
可以叫转发,属于NAT表,通过改变目标IP和端口,将接受的包转发至不同端口
将8888收到的数据包转到80端口
iptables -t nat -A PREROUTING -d 192.168.1.10 -p tcp --dport 8888 -j REDIRECT --to-ports 80
PREROUTING,INPUT,OUTPUT,POSTROUTING