Linux CentOS 7打开关闭防火墙,开放关闭端口和相关操作 | 您所在的位置:网站首页 › linux禁用23端口 › Linux CentOS 7打开关闭防火墙,开放关闭端口和相关操作 |
有些人安装的linux的系统默认防火墙不是iptables,而是firewall,那就得使用以下方式关闭防火墙了。 >>>查看防火墙当前状态##查看防火墙状态,是否是running firewall-cmd --state>>>查看防火墙当前已经开放的端口 firewall-cmd --zone=public --list-ports>>>关闭防火墙 systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 firewall-cmd --reload # 配置立即生效--关闭后执行状态命令,查看是否关闭成功,如果看到inactive(dead)就意味着防火墙关闭了。 端口的查询/开放# 查询端口是否开放 firewall-cmd --query-port=8080/tcp# 新建永久规则,开放8080端口(TCP协议) firewall-cmd --permanent --add-port=8080/tcp# 移除上述规则 firewall-cmd --permanent --remove-port=8080/tcp>>>开启某个端口 firewall-cmd --zone=public --add-port=80/tcp --permanent #开启80端口 firewall-cmd --reload # 配置立即生效>>>关闭某个端口 firewall-cmd --zone=public --remove-port=80/tcp --permanent #关闭80端口 firewall-cmd --reload # 配置立即生效IP(IP段)的开放# 新建永久规则,开放192.168.1.1单个源IP的访问 firewall-cmd --permanent --add-source=192.168.1.1# 新建永久规则,开放192.168.1.0/24整个源IP段的访问 firewall-cmd --permanent --add-source=192.168.1.0/24# 移除上述规则 firewall-cmd --permanent --remove-source=192.168.1.1>>>开放端口给指定IP段。如开放给局域网192.168.1.1-192.168.1.255 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="6666" accept" firewall-cmd --reload>>>批量添加区间端口 firewall-cmd --zone=public --add-port=4400-4600/udp --permanent firewall-cmd --zone=public --add-port=4400-4600/tcp --permanent firewall-cmd --reload # 配置立即生效>>>查看监听的端口 netstat -lnpt系统服务的开放# 开放http服务 firewall-cmd --permanent --add-service=http# 移除上述规则 firewall-cmd --permanent --remove-service=http自定义复杂规则(注意是否与已有规则冲突)# 允许指定IP访问本机8080端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" accept'# 允许指定IP段访问本机8080-8090端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080-8090" accept'# 禁止指定IP访问本机8080端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" reject'命令含义--zone #作用域--add-port=80/tcp #添加端口,格式为:端口/通讯协议--permanent #永久生效,没有此参数重启后失效 任何修改操作,配置完成后,需要重新装载firewall。可重新启动firewalld服务。>>>重启防火墙 firewall-cmd --reload service firewalld restart其他常用命令: firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令firewall-cmd --get-zones ##列出支持的zonefirewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者nofirewall-cmd --add-service=ftp ##临时开放ftp服务firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口iptables -L -n ##查看规则,这个命令是和iptables的相同的man firewall-cmd ##查看帮助 firewall规则扩展学习 查看已开放的端口 firewall-cmd --list-ports开放端口(开放后需要要重启防火墙才生效) firewall-cmd --zone=public --add-port=3338/tcp --permanent关闭端口(关闭后需要要重启防火墙才生效) firewall-cmd --zone=public --remove-port=3338/tcp --permanent重启防火墙 firewall-cmd --reload开机启动防火墙 systemctl enable firewalld开启防火墙 systemctl start firewalld禁止防火墙开机启动 systemctl disable firewalld停止防火墙 systemctl stop firewalld更多命令,使用 firewall-cmd --help 查看帮助文件 下面是关于iptables的设置相关: CentOS 7.0默认使用的是firewall作为防火墙,如果想使用使用iptables必须重新设置一下,具体方法如下: 1、直接关闭防火墙 systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动2、设置 iptables service yum -y install iptables-services如果要修改防火墙配置,如增加防火墙端口3306 vi /etc/sysconfig/iptables增加规则 -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #iptabales规则,并非CentOS7默认规则保存退出后 systemctl restart iptables.service #重启防火墙使配置生效 systemctl enable iptables.service #设置防火墙开机启动常用命令: iptables -L -n /查看已开放端口 nano /etc/sysconfig/iptables //编辑现有端口,也可以使用vi systemctl restart iptables.service //centos7 重启iptables systemctl enable iptables.service //centos7 开机启动iptables 直接用iptables命令形式添加/删除端口等操作:注意:192.168.0.0 是您的服务器IP地址。 telnet 127.0.0.1 8075 /测试端口是否开放telnet iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 30000:31000 -j DNAT --to 192.168.0.0 #添加端口段iptables -I INPUT -s 11.11.11.11 -p tcp --dport 3306 -j ACCEPT #如果需要,可指定Ip可以访问3306端口 iptables -I INPUT -p tcp --dport 8808 -j DROP //禁止所有Ip访问8808端口iptables --line -nvL INPUT #查询规则编号或已开放端口iptables -D INPUT 1 #删除指定规则编号的规则iptables -I INPUT -s 127.0.0.1 -p tcp --dport 8808 -j ACCEPT #允许127.0.0.1访问8808 所有命令执行完毕都需要保存到表 iptables-save //如果是centos,直接执行即可 service iptables save //centos7也可执行 iptables-save > /etc/iptables //其他系统保存规则。 关于firewall-cmd的相关命令集锦:#查看firewall状态,LINUX7默认是安装并开启的; firewall-cmd --state#安装 yum install firewalld#启动, systemctl start firewalld#设置开机启动 systemctl enable firewalld#关闭 systemctl stop firewalld#取消开机启动 systemctl disable firewalld#禁止IP(123.56.161.140)访问机器 firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="123.56.161.140" drop'#禁止一个IP段,比如禁止123.56.. firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="123.56.0.0/16" drop'#禁止一个IP段,比如禁止123.56.161.* firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="123.56.161.0/24" drop'#禁止机器IP(123.56.161.140)从防火墙中删除 firewall-cmd --permanent --remove-rich-rule='rule family=ipv4 source address="123.56.161.140" drop'#禁止本机访问外放某Ip: firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -d 46.30.243.21/32 -j REJECT#允许http服务(对应服务策略目录:/usr/lib/firewalld/services/) firewall-cmd --permanent --add-service=http#关闭http服务(对应服务策略目录:/usr/lib/firewalld/services/) firewall-cmd --permanent --remove-service=http#允许端口:3389 firewall-cmd --permanent --add-port=3389/tcp#允许端口:1-3389 firewall-cmd --permanent --add-port=1-3389/tcp#关闭放行中端口:3389 firewall-cmd --permanent --remove-port=3389/tcp#查看firewall的状态 firewall-cmd --state#查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略,在配置策略前,我一般喜欢先CP,以后方便直接还原) firewall-cmd --list-all#查看所有的防火墙策略(即显示/etc/firewalld/zones/下的所有策略) firewall-cmd --list-all-zones#重新加载配置文件 firewall-cmd --reload#更改配置后一定要重新加载配置文件: firewall-cmd –reload参考:http://www.33f.net/network/centos7_firewall.html |
CopyRight 2018-2019 实验室设备网 版权所有 |