联系我们

4000 555 018
(7×24)
正睿服务器  >  新闻中心  >  技术文章
新闻中心

CentOS防火墙与端口管理 常见问题解答

间隙填充
正睿科技  发布时间:2024-04-18 15:13:35  浏览数:18

包含内容:

  • CentOS7.9 关闭防火墙和开放指定端口

  • CentOS7.6在防火墙放开端口

  • CentOS8查看防火墙状态,开启、关闭系统防火墙

  • CentOS7配置iptables 防火墙限制同一个IP连接数,防DDOS和CC攻击

  • CentOS7系统中查看服务器IP连接数

centos7.9 关闭防火墙和开放指定端口

关闭防火墙
systemctl status firewalld    查看防火墙状态
systemctl stop firewalld    实时关闭防火墙
systemctl disable firewalld    永久禁用防火墙,禁止开机自启动

关闭SELinux
vim /etc/selinux/config
SELINUX=permissive    #修改为disabled
reboot  重启服务器生效

防止客户启动防火墙后导致SSH连不上,对SSH端口31703放行
systemctl start firewalld
firewall-cmd --zone=public --add-port=31703/tcp --permanent
firewall-cmd --reload
systemctl stop firewalld
systemctl disable firewalld

如需关闭防火墙端口放行,则执行下面命令
firewall-cmd --zone=public --remove-port=31703/tcp --permanent

centos7.6在防火墙放开端口

1、查看防火墙是否开启,如果没有开启防火墙,默认开放所有端口。

注意:如果是生产环境有业务在运行,开启防火墙可能会拦截业务应用端口

开启防火墙 systemctl start firewalld

关闭防火墙 systemctl stop firewalld

重启防火墙 systemctl restart firewalld

查看防火墙状态 systemctl status firewalld

查看防火墙规则 firewall-cmd --list-all

2、放开443端口
firewall-cmd --permanent --zone=public --add-port=443/tcp

(返回 success 代表成功。注:?permanent永久生效,没有此参数重启后失效)

3、重新加载防火墙
firewall-cmd --reload (重新载入防火墙,返回 success 代表成功)

firewall-cmd --zone=public --query-port=443/tcp (查看 返回 yes 代表开启成功)

注意:放开后telnet不到,有可能是端口上没有服务,检查确认。

4、如何查看端口状态
(1)方法一:使用lsof检查当前系统开放的端口
查看所有开放端口,并且只显示计算机正在监听,以及正在运行的服务所占用的端口:

sudo lsof -i -P -n | grep LISTEN

查看某个端口的占用情况:

lsof -i:端口号

(2)方法二:firewall-cmd 查询开放、关闭端口
查询所有开放的端口:firewall-cmd --list-ports

查询443端口是否开放:firewall-cmd --query-port=443/tcp

移除443端口:firewall-cmd --permanent --remove-port=443/tcp

CentOS8查看防火墙状态,开启、关闭系统防火墙

1,查看防火墙状态

systemctl status firewalld.service

2,开启防火墙

systemctl start firewalld.service

3,关闭防火墙

systemctl stop firewalld.service

4,禁用防火墙

systemctl disable firewalld.service

centos7 配置iptables 防火墙限制同一个IP连接数,防DDOS和CC攻击

安装iptables
yum install iptables

安装iptables-services
yum install iptables-services

编辑iptables配置表
vi /etc/sysconfig/iptables

配置表内的内容
# Generated by iptables-save v1.4.21 on Sat Apr 17 19:43:29 2021
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT
# Completed on Sat Apr 17 19:43:29 2021
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp --syn --dport 20021 -m connlimit --connlimit-above 30 --connlimit-mask 0 -j DROP
-A INPUT -p tcp --syn --dport 20013 -m connlimit --connlimit-above 30 --connlimit-mask 0 -j DROP
-A INPUT -m state --state NEW -m tcp -p tcp --dport 0:65535 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p udp --dport 0:65535 -j ACCEPT

重启服务

service network restart


命令参考

-A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 50 --connlimit-mask 0 -j DROP
说明输入的目标端口是22,也就是访问sftp本机22端口的流量,如果连接数大于50,则DROP流量,connlimit-above这个是连接数的统计,

CentOS7系统中查看服务器IP连接数

在linux系统中,有时需要统计来自某个地址的链接数,我们就可以用下面的组合命令来查看和统计某个服务器上的所有连接按照ip分类统计结果。

netstat -tun|awk '{print $5}'|cut -d : -f1|sort|uniq -c|sort -n

命令解释:

netstat命令功能是显示网络连接、和网络接口信息,可以得到服务器有哪些网络连接正在运作;-t显示tcp传输协议的连线状况,-u显示udp传输协议的连线状况,-n直接用ip地址显示,而不是通过域名服务器。


  • 正睿合作伙伴
  • 社区
首页 | 注册 | 网站地图 | 通告 | 联系我们
CopyRight(C)2004-2022 Chongqing Zhengrui Technology Co.,Ltd. All rights reserved.
重庆正睿科技有限公司(C)版权所有 未经书面授权 不得转载、复制或建立镜像
渝ICP备11002339号-1  渝公网安备 50010702500475号