【Linux简单实用小命令001】CentOS 7、8的防火墙端口开放


【Linux简单实用小命令001】CentOS 7、8的防火墙端口开放

1. 前言

今天小伙伴在群里问服务器上服务启动了,怎么本地访问不了。

我直接打开了cmd,telnet了一下,发现端口无法访问到,大概率猜测是防火墙原因,就登上服务器使用firewalld-cmd开通端口试了下。

telnet服务的打开方法: windows在我的电脑->右键->管理->服务和应用程序-服务中可找到telnet服务启动,并右键属性设置为自启动

果然如此。端口加入防火墙开通规则就好了。

2. 启动/关闭防火墙服务:firewalld

CentOS 7 以后服务启动从service xxx变成了 systemctl 命令。

防火墙也由iptables 改为默认是 firewalld。

<code>systemctl stop firewalld.service # 停止

systemctl start firewalld.service # 启动

systemctl restart firewalld.service # 重启
/<code>

3. 开启指定端口【推荐】:firewall-cmd

注意:firewall与-cmd中间是连接在一起,没有空格符的

<code>firewall-cmd --zone=public --add-port=12059/tcp --permanent
# 开启指定端口

firewall-cmd --reload
# 重启防火墙

firewall-cmd --list-ports
# 查看开放端口列表
/<code>

4. 批量开启端口:7023-8023

批量添加跟单条添加端口命令没什么区别,将7023换成7023-8023,就是把从7023到8023中间这些端口都开放了。

更多命令可以查看 linuxido.com。

<code>firewall-cmd --permanent --zone=public --add-port=7023-8023/tcp
# 批量开启TCP端口

firewall-cmd --reload
# 重启防火墙
/<code>

5. 关闭防火墙端口:–remove

将参数add换成remove就ok。

<code>firewall-cmd --permanent --zone=public --remove-port=7023-8023/tcp
# 批量开启TCP端口

firewall-cmd --reload
# 重启防火墙
/<code>

6. 后记

如果用惯了iptables,不想用firewall,也可以切换回来。

<code>yum install iptables-services           #安装iptables  
systemctl stop firewalld.service #停止firewalld
systemctl mask firewalld.service #禁止自动和手动启动firewalld
systemctl start iptables.service #启动iptables
systemctl start ip6tables.service #启动ip6tables
systemctl enable iptables.service #设置iptables自启动
systemctl enable ip6tables.service #设置ip6tables自启动/<code>

更多命令可以查看 linuxido.com。


分享到:


相關文章: