Firewalld工作区
firewalld的字符界面管理工具是 firewall-cmd
firewalld默认配置文件有两个:/usr/lib/firewalld/ (系统配置,尽量不要修改)和 /etc/firewalld/ (用户配置地址)
zone概念:
硬件防火墙默认一般有三个区,firewalld引入这一概念系统默认存在以下区域(根据文档自己理解,如果有误请指正):
drop:默认丢弃所有包
block:拒绝所有外部连接,允许内部发起的连接
public:指定外部连接可以进入
external:这个不太明白,功能上和上面相同,允许指定的外部连接
dmz:和硬件防火墙一样,受限制的公共连接可以进入
work:工作区,概念和workgoup一样,也是指定的外部连接允许
home:类似家庭组
internal:信任所有连接
安装firewalld
root执行 # yum install firewalld firewall-config
运行、停止、禁用firewalld
启动:# systemctl start firewalld
查看状态:# systemctl status firewalld
停止:# systemctl disable firewalld
禁用:# systemctl stop firewalld
设置默认接口区域
# firewall-cmd --set-default-zone=public
立即生效无需重启
实际使用:
1、同层之间互设白名单
firewall-cmd --permanent --zone=trusted --add-source=【10.66.35.63】
或者配置ip段范围
firewall-cmd --permanent --zone=trusted --add-source=【10.66.35.0/24】
作用:白名单可以访问所有端口
2、不同层之间开放端口
firewall-cmd --zone=public --add-port=9304/tcp --permanent
作用:所有ip都可以访问指定端口
实际运用可能是给指定的ip添加指定的端口
所以需要开启指定ip指定端口的访问,其余全部拒绝
firewall-cmd --zone=public --add-source='【10.66.35.63】' --permanent
然后拒绝其他所有即是切换默认zone到block
firewall-cmd --set-default-zone=block
3、对所有ip开放指定端口
由于前面public设置了指定源ip,所有需要再在另一个zone设置
比如设置ssh22/21端口