CentOS Linux的firewall常用命令

1. 查询防火墙状态

service firewalld status

systemctl status firewalld

firewall-cmd –state

2. 启动、停止、重启

# 启动

service firewalld start

systemctl start firewalld

# 停止

service firewalld stop

systemctl stop firewalld

# 重启

service firewalld restart

systemctl restart firewalld

3. 开机自启动

# 关闭开机自启动

systemctl disable firewalld

# 开启开机自启动

systemctl enable firewalld

4. 查看防火墙规则

firewall-cmd –list-all

5. 其他命令

1、其他基本命令

firewall-cmd –version          #查看版本

firewall-cmd –help            #查看协助

firewall-cmd –panic-on        #拒绝所有包

firewall-cmd –panic-off        #撤销拒绝状态

firewall-cmd –query-panic      #查看是否拒绝

firewall-cmd –reload          #重新加载防火墙,并不中断用户连接(firewalld特性之一动态添加规则)

firewall-cmd –complete-reload  #重新加载防火墙并中断用户连接(类似于重启服务)

2、zone相关

firewall-cmd –get-zones                    #显示支持的区域列表

firewall-cmd –get-active-zones                #查看当前的区域

firewall-cmd –get-default-zone                #查看默认区域

firewall-cmd –set-default-zone=home            #设置默认区域为 home

firewall-cmd –zone=public –list-interfaces    #显示显示公共区域(public)所有接口

firewall-cmd –zone=public –list-all          #显示公共区域(public)所有设置

firewall-cmd –get-zone-of-interface=ens33      #查看指定接口 ens33 所属区域

firewall-cmd –zone=internal –change-interface=ens33  #临时修改网络接口 ens33 为内部区域(internal),永久修改加上 –permanent 参数

firewall-cmd –zone=public –add-interface=ens37        #为公共区域(public)增加一个接口 ens37 

3、service相关

firewall-cmd –get-service                          #显示服务列表

firewall-cmd –list-service                          #显示当前服务

firewall-cmd –enable service=ssh                    #允许SSH服务通过

firewall-cmd –disable service=ssh                  #禁止SSH服务通过

firewall-cmd –enable service=samba –timeout=600    #临时允许 samba 服务通过 600 秒

firewall-cmd –permanent –zone=internal –add-service=http  #添加 http 服务到内部区域(internal)

firewall-cmd –zone=work –add-service=smtp          #把 smtp 服务加入工作区域(work)

firewall-cmd –zone=work –remove-service=smtp      #从工作区域(work)移除 smtp 服务

4、地址伪装

firewall-cmd –zone=external –query-masquerade    #查询外部区域(external)是否能伪装ip,结果为yes

firewall-cmd –zone=external –add-masquerade      #外部区域(external)启用IP伪装(masquerade)

firewall-cmd –zone=external –remove-masquerade    #外部区域(external)禁用用IP伪装

5、端口转发

# 打开端口转发,第一需要打开IP地址伪装

firewall-cmd –zone=external –add-masquerade

# example 1:把外部区域(external)的 22 端口 转发至 3753

firewall-cmd –zone=external –add-forward-port=22:porto=tcp:toport=3753

# example 2:把外部区域(external)的 22 端口转发到 192.168.1.20 的同一端口

firewall-cmd –zone=external –add-forward-port=22:porto=tcp:toaddr=192.168.1.20

# example 3:把外部区域(external)的 22 端口转发到 192.168.1.20 的 52222 端口

firewall-cmd –zone=external –add-forward-port=port=22:proto=tcp:toport=52222:toaddr=192.168.1.20 

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容