Linux之网络型防火墙规则配置

  • 通过路由转发配置网络型防火墙

主机名网卡、IP地址、网关设置
host10ens32:192.168.1.10,网关指向防火墙外网IP:192.168.1.100
iptablesens32内网IP:192.168.0.40,ens34外网IP:192.168.1.100
web-11ens32:192.168.0.11,网关指向防火墙内网IP:192.168.0.40

  • 防火墙主机添加网卡并设置IP,IP设置为:192.168.0.100/24

nmtui  修改网卡IP地址(交互)
​
#开启路由转发功能
[root@iptables ~]# echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf 
​
[root@iptabels ~]# sysctl -p   //加载配置立即生效
net.ipv4.ip_forward = 1
 
#查看路由转发
[root@iptables ~]# cat /proc/sys/net/ipv4/ip_forward
1

  • 第二台服务器提供网站服务:web26将网关指向192.168.0.11

#安装httpd服务
[root@web26 ~]# yum -y install httpd
 
#修改默认首页
[root@web26 ~]# echo  web26 > /var/www/html/index.html
[root@web26 ~]# systemctl start httpd
[root@web26 ~]# systemctl status httpd

  • 第三台为客户端:client将IP修改为192.168.1.24网段,将网关指向防火墙主机的第二块网卡:192.168.1.100

  • 访问测试:curl http://192.168.0.26

  • 防火墙主机配置规则:拒绝192.168.1.10访问80端口

[root@iptables ~]# iptables -I FORWARD -s 192.168.1.10 -p tcp --dport 80 -j DROP
​
#客户端192.168.1.30访问测试:
curl http://192.168.0.20
​
#拒绝所有客户端地址访问内网80端口
[root@iptables ~]# iptables -t filter -I FORWARD -p tcp --dport 80 -j REJECT
​
[root@iptables ~]# iptables -F 

防火墙扩展

  • 命令格式:iptables 选项 链名 -m 扩展模块 --具体扩展条件 -j 动作

#根据MAC地址封锁主机,安装nmap扫描获取地方IP的MAC地址
[root@iptables ~]# yum -y install nmap
​
#扫描对方主机IP
[root@iptables ~]# nmap 192.168.28 
Starting Nmap 6.40 ( http://nmap.org ) at 2020-09-25 17:12 CST
Nmap scan report for 192.168.0.111
Host is up (0.00044s latency).                        //当前主机状态
MAC Address: 00:0C:29:CA:87:81 (VMware)   //MAC地址
Nmap done: 1 IP address (1 host up) scanned in 4.05 seconds
​
#通过MAC地址限制对方访问
[root@iptables ~]# iptables -t filter -I FORWARD -p tcp --dport 80 -m mac --mac-source 00:0C:29:D5:29:0F -j REJECT

基于多端口设置过滤规则

[root@iptables ~]# iptables -t filter -I FORWARD -p tcp -m multiport --dports 20,21,80,443 -j ACCEPT
#multiport :多端口模块
​
#根据IP范围设置封锁规则
[root@iptables ~]# iptables -t filter -I FORWARD -p tcp --dport 80 -m iprange --src-range 192.168.1.20-192.168.1.30 -j REJECT
#iprange模块:ip范围模块
#--src-range:源IP
#--dst-range:目标IP 

配置SNAT实现共享上网

  • 通过防火墙规则,允许局域网中的主机访问外网

主机名网卡、IP地址、网关
内部主机:client25ens32:192.168.1.25,网关:192.168.1.100
内部防火墙:iptablesens32外网IP:192.168.0.80,ens34内网IP:192.168.1.100
外部主机:web26ens32:192.168.0.26,网关:192.168.0.80
#实现192.168.1.25转换为192.168.0.80
[root@iptables ~]# iptables -t nat -I POSTROUTING -s 192.168.1.0/24 -p tcp  -j SNAT --to-source 192.168.0.80
#POSTROUTING:路由后链
#-s:指定源地址为192.168.1.0网段的地址
#-p:想要通过tcp协议
#--dport:访问目标的80端口时
#-j:SNAT转换
#--to-source:转换源地址为192.168.0.26
​
#web1动态查看访问日志
[root@web26 ~]# tail -f /var/log/httpd/access_log
​
​
client 192.168.1.25访问网站
curl  http://192.168.0.26
​
#所有iptables规则都是临时规则,如果需要永久保留规则需要执行如下命令
[root@iptables ~]# service iptables save
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小禹先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值