七周四次课(1月25日)
10.15 iptables filter表案例

七周四次课(1月25日)_四次课

需求 80 22 21端口放行 22端口需要指定一个ip段

七周四次课(1月25日)_四次课_02

七周四次课(1月25日)_四次课_03

ipt 定义一个变量

-F 清空原有规则

-P 默认规则

-m state --state RELATED,ESTABLISHED -j ACCEPT 3次握手4次挥手   把已建立通信和保持连接的通信的数据包放行,这条是必须有的指令

执行脚本

七周四次课(1月25日)_linux_04

查看规则

七周四次课(1月25日)_linux_05

iptables -I INPUT -p icmp --icmp-type 8 -j DROP 这个规则作用可以使本机可以ping其他机器,但是其他机器无法ping通本机


10.16/10.17/10.18 iptables nat表应用

七周四次课(1月25日)_linux_06


首先准备1个虚拟机1,克隆一个2,虚拟机1添加一个私网网卡,做好快照,2的外网网卡禁用,添加网卡并使用同样的LAN区段,快照,启动2个机器

七周四次课(1月25日)_linux_07

虚拟机1

七周四次课(1月25日)_linux_08

给虚拟机1 ens37设置内网ip,可以使用命令行,也可以编辑配置文件

七周四次课(1月25日)_四次课_09

给虚拟机2 ens37设置内网ip  这时两台机器内网ip能够相互ping通,2不能连外网

七周四次课(1月25日)_linux_10

1机器

cat /proc/sys/net/ipv4/ip_forward  查看端口转发,默认是0,没打开,设置为1打开端口转发

echo "1" > /proc/sys/net/ipv4/ip_forward

七周四次课(1月25日)_四次课_11

1机器增加nat规则

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE

七周四次课(1月25日)_linux_12

2机器设置网关  DNS       可以连外面的网,外网ping不通

route add default gw 192.168.100.1

七周四次课(1月25日)_四次课_13

七周四次课(1月25日)_linux_14

七周四次课(1月25日)_四次课_15


需求 3机器通过1机器连接2机器   端口映射

打开1机器端口转发

echo "1" > /proc/sys/net/ipv4/ip_forward

1机器增加规则

iptables -t nat -A PREROUTING -d 192.168.133.130 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22  进去的包转发到192.168.100.100的22端口

iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.133.130  出来的包把目标地址改为192.168.133.130

给2机器加上网关

七周四次课(1月25日)_linux_16

3机器

七周四次课(1月25日)_四次课_17

七周四次课(1月25日)_linux_18





扩展
1. iptables应用在一个网段 七周四次课(1月25日)_四次课_19http://www.aminglinux.com/bbs/thread-177-1-1.html 
2. sant,dnat,masquerade   七周四次课(1月25日)_四次课_19http://www.aminglinux.com/bbs/thread-7255-1-1.html 
3. iptables限制syn速率    七周四次课(1月25日)_四次课_19http://www.aminglinux.com/bbs/thread-985-1-1.html 七周四次课(1月25日)_四次课_19http://jamyy.us.to/blog/2006/03/206.html