CentOS 7防火墙快速开放端口配置方法

技术支持 2021年5月9日

这篇文章主要为大家详细介绍了CentOS 7防火墙开放端口的快速方法,感兴趣的小伙伴们可以参考一下!

一、CentOS 7快速开放端口:

CentOS升级到7之后,发现无法使用iptables控制Linuxs的端口,baidu之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口:

开启端口


[root@centos7 ~]# firewall-cmd –zone=public –add-port=80/tcp –permanent

查询端口号80 是否开启:

[root@centos7 ~]# firewall-cmd –query-port=80/tcp

重启防火墙:

[root@centos7 ~]# firewall-cmd –reload

查询有哪些端口是开启的:

[root@centos7 ~]# firewall-cmd –list-port

命令含义:


–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

关闭firewall:

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动

二、CentOS6防火墙开放端口:

在我们使用CentOS系统的时候,CentOS防火墙有时是需要改变设置的。CentOS防火墙默认是打开的,设置CentOS防火墙开放端口方法如下:

打开iptables的配置文件:vi /etc/sysconfig/iptables

修改CentOS防火墙时注意:一定要给自己留好后路,留VNC一个管理端口和SSh的管理端口

下面是一个iptables的示例:

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT – [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
COMMIT

修改CentOS防火墙需要注意的是,你必须根据自己服务器的情况来修改这个文件。

举例来说,如果你不希望开放80端口提供web服务,那么应该相应的删除这一行:
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

全部修改完之后重启iptables:service iptables restart

你可以验证一下是否规则都已经生效:iptables -L

Centos8防火墙配置、端口、进程管理

1. Centos8停用、启用、查看当前启用的端口

firewall-cmd --zone=public --add-port=5672/tcp --permanent   # 开放5672端口

firewall-cmd --zone=public --remove-port=5672/tcp --permanent  #关闭5672端口

firewall-cmd --reload   # 配置立即生效

2. 查看防火墙所有开放的端口

firewall-cmd --zone=public --list-ports

3. 关闭防火墙

如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估

systemctl stop firewalld.service

4. 查看防火墙状态

 firewall-cmd --state

5. 查看监听的端口

netstat -lnpt
在这里插入图片描述

PS:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools

6. 检查端口被哪个进程占用

netstat -lnpt |grep 5672
在这里插入图片描述

7. 查看进程的详细信息

ps 6832
在这里插入图片描述

8. 中止进程

kill -9 6832

这样,我们就完成了CentOS防火墙的设置修改