包过滤内核:netfilter
规则管理工具:firewalld ,老版本linux: iptables工具
firewalld网络区域:
常用区域:trusted、home、public、external、block
ACCEPT(允许流量通过)
流量发送方会看到响应超时的提醒,但是流量发送方无法判断流量是被拒绝,还是接收方主机当前不在线
REJECT(拒绝流量通过)
流量发送方会看到端口不可达的响应
LOG (记录日志信息)
DROP(拒绝流量通过)
格式:firewall-cmd 【参数】
--permanent 永久生效参数 需要重启后生效
frewall-cmd -reload 重启
紧急模式(关闭所有网络)
[root@linuxprobe~]# firewall-cmd --panic -on
success
[root@linuxprobe~]# firewall-cmd --panic -off
success
- 区域管理:
- 查看当前的默认区域:
- [root@hfj ~]# firewall-cmd --get-default-zone
- public
- [root@hfj ~]# firewall-cmd --get-zone-of-interface=ens160 #查看网卡的默认区域,以网卡区域优先级别高。
- external
- [root@hfj ~]# firewall-cmd --set-default-zone=home #设置默认区域。
- success
- [root@hfj ~]# firewall-cmd --get-default-zone
- home
-
- 修改网卡默认区域,并在系统重启后生效。
- firewall-cmd --permanent --zone=public --change-interface=ens160
- 永久允许ftp服务:
-
- [root@hfj ~]# firewall-cmd --zone=public --query-service=ftp #查询ftp当前配置。
- no
- [root@hfj ~]# firewall-cmd --permanent --zone=public --add-service=ftp #修改永久允许。
- success
- [root@hfj ~]# firewall-cmd --zone=public --query-service=ftp
- no
- [root@hfj ~]# firewall-cmd --reload #重新加载生效。
- success
- [root@hfj ~]# firewall-cmd --zone=public --query-service=ftp
- 添加访问端口8080-8081,仅限当前生效。
- firewall-cmd --zone=public --add-port=8080-8081/tcp
-
- firewall-cmd --zone=public --list-ports 查询当前访问端口号
- 案例ssh端口转发,888端口转22端口。
- 获取网卡ens160网络区域:
- firewall-cmd --get-zone-of-interface=ens160
- 配置端口转发:
- firewall-cmd --permanent --zone=external --add-forward-port=port=888:proto=tcp:toport=22:toaddr=10.5.48.55
-
- 配置生效:
- firewall-cmd --reload
-
- 从另一台虚拟主机访问:ssh -p 888 10.5.48.55
富规则
- 拒绝192.168.10.0/24网段访问ssh服务,永久生效。
- firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4“ source address=”192.168.10.0/24" service name="ssh" reject"
- firewall-cmd --reload
- #yum install firewall-config #下载工具
- #firewall-config #使用