2.8 Linux的火墙策略优化

实验准备

  • 需要3台机器用作实验
  • 1台IP处于172.25.254网段
  • 1台IP处于192.168.4网段
  • 1台具有双网卡的设备同时拥有2个网段的IP

基础讲解

Linux系统中可以通过两个软件对iptables进行控制,分别为firewalldiptables.但同时只能用其中一个进行管理.RHEL7之前系统中没有firewalld,RHEL8后系统中默认使用firewalld.

对两者后进行比较的话,iptables偏向与表格修改,而firewalld的操作更类似Windows.

切换管理软件

systemctl disable --now firewalld
systemcel mask firewalld
dnf search iptables-services
dnf install iptables-services -y
systemctl enable --now iptables.service 
##iptables的火墙状态查看命令
iptables -nL

其中target表示动作
	port表示协议
	source表示来源
	destination表示目的地

Firewalld的操作

关于火墙的域

名称 含义
trusted 接受所有的网络连接
home 用于家庭网络,默认允许ssh,mdns,dhcp-client,ipp-client
work 用于工作网络,默认允许ssh和ipp-client
public 用于公共网络,默认允许ssh和dhcp-client
dmz 军用网络,仅允许ssh
block 拒绝所有
drop 丢弃所有数据并不进行任何回复
internal 内部网络,默认允许ssh mdns ipp-client samba-client dhcp-client
external ipv4网络地址伪装转发,默认允许sshd
##关于firewalld的配置
/etc/firewalld			##火墙配置文件
/lib/firewalld  		##火墙模块目录
##对于域的操作

##查看所有的域
firewall-cmd --list-all-zones
##查看活跃的域
firewall-cmd --get-default-active-zones
##修改默认域为全信任
firewall-cmd --set-default-zone=trusted
firewall-cmd --state
running		##运行状态
not running	##非运行状态

firewall-cmd --list-all							##显示默认状态的火墙策略
firewall-cmd --list-all --zone=trusted			##显示域为trusted的火墙策略
firewall-cmd --get-default-zone					##显示默认的域
firewall-cmd --set-default-zone=trusted			##设置默认的域为trusted
firewall-cmd --add-service=http					##临时添加http到策略,不需要重启即刻生效
												##缺点是重启服务后策略消失
firewall-cmd --permanent --add-service=http		##永久添加策略
firewall-cmd --permanent --add-port=8080/tcp	##永久添加8080/tcp端口到火墙策略中

/lib/firewalld/services中采用xml格式存储了火墙中关于服务的策略,直接修改文件也能起到修改策略的效果.

IP的规则设定

##不允许172.25.254网段连接的设置方法
firewall-cmd --permanent --add-source=172.25.254.0/24 --zone=block

##查看block域,设置成功
[root@Node1 ~]# firewall-cmd --list-all --zone=block 
block (active)
  target: %%REJECT%%
  icmp-block-inversion: no
  interfaces: 
  sources: 172.25.254.0/24
  services: 
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
  
  
##删除IP限制策略的方法
[root@Node1 ~]# firewall-cmd --permanent --remove-source=172.25.254.0/24 --zone=block 
success
[root@Node1 ~]# firewall-cmd --reload 
success
[root@Node1 ~]# firewall-cmd --list-all --zone=block 
block
  target: %%REJECT%%
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: 
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

分别对不同网卡设置不同规则

在同一台主机上拥有多块网卡时,可以分别对单个网卡设备设置对应的域.举个实际应用的例子就是两块网卡分别对应内部网络和外部网络,内部网络使用trusted域,而外部网络使用public域.

##删除网卡所在域策略
firewall-cmd --permanent --remove-inteface=网卡设备 --zone=目前所在域
##添加网卡到目标域策略
firewall-cmd --permanent --add-inteface=网卡设备 --zone=目标域
##修改网卡所在域策略
firewall-cmd --permanent --change-inteface=网卡设备 --zone=目标域
##删除和添加网卡所在域的方法
[root@Node1 ~]# firewall-cmd --list-all
public (active)
  target: default
  icm
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值