自从Linux升级到7后,Linux的防火墙就从原来的iptables改成了firewalldcentos
一、安装服务器
$ yum install -y firewalld
二、基本命令的使用tcp
$ systemctl status firewalld # 查看状态 $ systemctl start firewalld # 启动 $ systemctl stop firewalld #关闭 $ systemctl enable firewalld # 开机启动 $ systemctl disable firewalld # 取消开机启动
三、开放端口ide
# 开放单个端口 $ firewall-cmd --zone=public --add-port=80/tcp --permanent # 开放端口范围 $ firewall-cmd --zone=public --add-port=8388-8389/tcp --permanent # 对 147.152.139.197 开放10000端口 $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="147.152.139.197/32" port protocol="tcp" port="10000" accept' # 拒绝端口: $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="47.52.39.197/32" port protocol="tcp" port="10000" reject' # 开放所有端口给IP $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="192.168.0.1/32" accept'; # 开放所有端口给网段 $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="192.168.0.0/16" accept';
四、查看开放及添加的服务工具
# 查看所有支持的服务 $ firewall-cmd --get-service # 查看开放的服务 $ firewall-cmd --list-service # 添加服务,添加https $ firewall-cmd --add-service=https --permanent # 修改对应的配置文件是/etc/firewalld/zones/public.xml
五、移除端口centos7
# 移除添加的端口 $ firewall-cmd --zone=public --remove-port=80/tcp --permanent
六、从新装载rest
# 对路由规则进行修改后,须要从新加载规则才能使规则生效 $ firewall-cmd --reload
最后在此以前介绍centos7中摒弃service工具,采用systemctl这个更强的服务管理工具的使用方法。code
注一、systemctl的基本使用方法xml
启动一个服务:systemctl start firewalld.service 关闭一个服务:systemctl stop firewalld.service 重启一个服务:systemctl restart firewalld.service 显示一个服务的状态:systemctl status firewalld.service 在开机时启用一个服务:systemctl enable firewalld.service 在开机时禁用一个服务:systemctl disable firewalld.service 查看服务是否开机启动:systemctl is-enabled firewalld.service 查看已启动的服务列表:systemctl list-unit-files|grep enabled 查看启动失败的服务列表:systemctl --failed
注二、配置firewalld-cmd命令的基本使用方法接口
查看版本:firewall-cmd --version 查看帮助:firewall-cmd --help 显示状态:firewall-cmd --state 查看全部打开的端口:firewall-cmd --zone=public --list-ports 更新防火墙规则:firewall-cmd --reload 查看区域信息: firewall-cmd --get-active-zones 查看指定接口所属区域:firewall-cmd --get-zone-of-interface=eth0 拒绝全部包:firewall-cmd --panic-on 取消拒绝状态:firewall-cmd --panic-off 查看是否拒绝:firewall-cmd --query-panic
注三、如何容许80端口访问服务器?
# 添加 firewall-cmd --zone=public --add-port=80/tcp --permanent # (--permanent永久生效,没有此参数重启后失效) # 重载 firewall-cmd --reload # 查看端口开通的状态 firewall-cmd --zone= public --query-port=80/tcp # 删除 firewall-cmd --zone= public --remove-port=80/tcp --permanent