一、防火墙
1.概述
动态防火墙后台程序 FireWalld 提供了一个动态管理的防火墙,用以支持网络的zones,以分配对一个网络及相关连接和界面一定程度的信任;它支持以太网桥,并有分离运行时间和永久行配置选择。
2.FileWalld域
trusted(信任):接受所有网络连接
home(家庭):用于家庭网络,仅接受dhcpv6-client、ipp-client、mdns、samba-client、ssh服务连接
internal(内部):用于内部网络,仅接受dhcpv6-client、ipp-client、mdns、samba-client、ssh服务连接
public(公共):用于公共区域使用,仅接受dhcpv6-client、ssh服务连接
work(工作):用于工作区,仅接受dhcpv6-client、ipp-client、ssh服务连接
external(外部):出去的ipv4网络连接通过此区域伪装和转发,仅接受ssh服务连接
dmz(非军事区):仅接受ssh服务连接
block(限制):拒绝所有网络连接
drop(丢弃):任何接收的网络数据包都被丢弃,没有任何回复
二、防火墙命令
systemctl start firewalld
systemctl mask firewalld
systemctl status firewalld
firewall-cmd --state ##查看火墙状态
firewall-cmd --get-default-zone ##查看火墙的默认域
firewall-cmd --set-default-zone=trusted ##修改火墙的默认域名
firewall-cmd --get-zones ##查看火墙的所有域
firewall-cmd --list-all-zones ##查看火墙所有的域及信息
firewall-cmd --get-active-zone ##查看火墙正在使用的域
firewall-cmd --zone=ROL --list-all ##查看ROL域的信息
firewall-cmd --get-services ##查看火墙允许的服务
三、接口控制
1.接口访问控制
eth0=172.25.254.116
eth1=192.168.0.116
firewall-cmd --list-all ##查看默认域的有eth0 eth1
firewall-cmd --remove-interface=eth1 --zone=public ##从public中移除eth1
firewall-cmd --add-interface=eth1 --zone=trusted ##添加eth1到trusted域
firewall-cmd --get-active-zones ##查看正在使用的域
测试:(ping/连接/访问)
eth0通 eth1不通
2.端口的设定
vim /etc/httpd/conf/httpd.conf ##修改端口:8080
systemctl restart httpd ##重启httpd服务
firewall-cmd --add-port=8080/tcp ##可访问172.25.254.116:8080
firewall-cmd --list-all ##查看端口
/etc/firewalld/zones/public.xml ##存放public域的信息的配置文件此文件也可添加8080端口