Centos升级到7以后,内置的防火墙已经从iptables变成了firewalld。因此,端口的开启仍是要从两种状况来讲明的,即iptables和firewalld。bash
Centos7默认安装了firewalld,若是没有安装的话,可使用 yum install firewalld firewalld-config 进行安装。服务器
启动一个服务: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 --failedtcp
查看版本: 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
工具
添加this
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
从新载入spa
firewall-cmd --reload
查看rest
firewall-cmd --zone= public --query-port=80/tcp
删除code
firewall-cmd --zone= public --remove-port=80/tcp --permanent
参数说明接口
说明: –zone 做用域 –add-port=8080/tcp 添加端口,格式为:端口/通信协议 –permanent #永久生效,没有此参数重启后失效
开启防火墙(重启后永久生效):chkconfig iptables on 关闭防火墙(重启后永久生效):chkconfig iptables off 开启防火墙(即时生效,重启后失效):service iptables start 关闭防火墙(即时生效,重启后失效):service iptables stop 重启防火墙:service iptables restartd
/etc/init.d/iptables status
(1)开启端口 iptables -A INPUT -p tcp --dport 8080 -j ACCEPT (2)保存并重启防火墙 /etc/rc.d/init.d/iptables save /etc/init.d/iptables restart
iptables -A INPUT -p tcp --dport 49152:65534 -j ACCEPT
一样,这里须要对设置进行保存,并重启防火墙。ip
咱们还能够经过修改/etc/sysconfig/iptables文件的方式开启端口,以下
vi /etc/sysconfig/iptables
而后在文件中增长一行
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT
参数说明:
–A 参数就当作是添加一条规则 –p 指定是什么协议,咱们经常使用的tcp 协议,固然也有udp,例如53端口的DNS –dport 就是目标端口,当数据从外部进入服务器为目标端口 –sport 数据从服务器出去,则为数据源端口使用 –j 就是指定是 ACCEPT -接收 或者 DROP 不接收
service firewalld stop systemctl disable firewalld.service #禁止firewall开机启动
yum install iptables-services #安装
vi /etc/sysconfig/iptables #编辑防火墙配置文件
Firewall configuration written by system-config-firewall Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
4. 开启防火墙iptables
service iptables start #开启 systemctl enable iptables.service #设置防火墙开机启动