七周四次课(5月9日)

10.15 iptables filter表案例

案例1

实现80,22,21端口放行,22端口指定ip段访问

1.创建脚本

#vim /usr/local/sbin/iptables.sh     

2.写入以下内容

#! /bin/bash
ipt="/usr/sbin/iptables"                  #自定义变量ipt
$ipt -F                                              #清空之前的规则
$ipt -P INPUT DROP                       #修改INPUT策略为DROP
$ipt -P OUTPUT ACCEPT                 #修改OUTPUT策略为ACCEPT
$ipt -P FORWARD ACCEPT              #修改FORWARD策略为ACCEPT
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT    #放行RELATED,ESTABLISHED这两个状态(这个很重要)
$ipt -A INPUT -s 192.168.131.0/24 -p tcp --dport 22 -j ACCEPT       #放行该网段访问22端口
$ipt -A INPUT -p tcp --dport 80 -j ACCEPT                                        #放行80端口
$ipt -A INPUT -p tcp --dport 21 -j ACCEPT                                         #放行21端口
 

3.执行脚本

本机网段是192.168.131.1 ,可以通过,执行脚本不会断开连接


# sh /usr/local/sbin/iptables.sh



案例2

实现ping通外网,ping不通本机(实质就是本机禁ping)

1.因为前面加载了脚本规则,把icmp规则给禁掉了,这里要先恢复一下默认规则

#systemctl  restart iptables


2.编写规则

# iptables -I INPUT -p icmp --icmp-type 8 -j DROP

3.试验一下(本机ip为192.168.131.129)

本机ping外网


外网ping本机



10.16/10.17/10.18 iptables nat表应用

环境:

A机器两块网卡ens33(192.168.131.129)、ens37(192.168.100.1),ens33可以上外网,ens37仅仅是内部网络,B机器只有ens37(192.168.100.100),和A机器ens37可以通信互联。

需求:

 需求1:可以让B机器连接外网
 需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口


模拟环境

1,克隆机器A,作为机器B

2,机器A添加网络适配器2,并进行如下设置

3,机器B,去掉网络适配器的启动时连接,并添加网络适配器2,设置lan区段选择为交换区


4,在机器A中,复制网络配置文件ens33文件为ens37,并修改为如下图(删除uuid)

重启网络服务,并查看网络配置

PS:也可以命令行来设置:#ifconfig ens37 192.168.100.1/24

5,在机器B中,停掉ens33(为了试验更加准确),同上一步设置一样设置ens37如下图


6:互ping试验,及2能否ping通外网

ApingB,通


BpingA,通


Bping外网,不通


完成环境模拟


实现需求1

1,在机器A上打开路由转发

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


2,在机器A上增加一条规则

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

3,在机器B上设置网关,并添加DNS

#route  add default gw 192.168.100.1


#vi /etc/resolv.conf


4,机器Bping外网,通,试验成功



实现需求2

1,在机器A上打开端口转发,前面已经做过了,这里略过去

2,机器A上,删除之前的规则,并增加新的规则

# iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE       //删除

# iptables -t nat -A PREROUTING -d 192.168.131.129 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22 //添加规则1

# iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.131.129         //添加规则2

C,在机器2上加上网关,前面做过了,这里略过

D,连接xshell连接1122端口

为了区分,修改一下B机器的hostname

在xshell查看

配置成功




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值