• Linux服务器端口不通处理方法及CentOS 78 防火墙操作命令


    背景

    linux服务器部署应用经常会出现因为端口开放而引起的无法访问问题,此类问题确认需要从客户端检查端口是否开放。

    检测端口畅通方法

    使用telnet ip port可以确定是否端口畅通,例如:telnet 192.168.2.1 80

    端口不通

    使用netstat -ntl命令确定此端口服务是否已启动

    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State      
    tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN     
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     
    tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN     
    tcp6       0      0 :::3306                 :::*                    LISTEN     
    tcp6       0      0 :::5355                 :::*                    LISTEN     
    tcp6       0      0 :::8080                 :::*                    LISTEN     
    tcp6       0      0 :::8081                 :::*                    LISTEN     
    tcp6       0      0 :::8082                 :::*                    LISTEN     
    tcp6       0      0 ::1:25                  :::*                    LISTEN     
    tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    查看防火墙暴露端口

    确定服务启动正常,使用命令firewall-cmd --zone=public --list-ports查看服务器开放的端口

    [root@iZ2ze5xna3is14isofzddlZ ~]# firewall-cmd --zone=public --list-ports
    20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 3306/tcp 443/tcp
    
    • 1
    • 2

    因为我这边使用nginx做了反向代理,对外开放的服务接口统一走80443进来。如果此处没有使用代理服务器,暴漏的IP端口就需要开放上面应用对应的8080/8081/8082这三个端口

    防火墙端口操作

    如果在查看防火墙中没有显示你需要访问的端口,则需要开放端口
    常用的防火墙端口命令:

    #查看防火墙某个端口是否开放
    firewall-cmd --query-port=3306/tcp
    #开放防火墙端口3306
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    #查看防火墙状态
    systemctl status firewalld
    #关闭防火墙
    systemctl stop firewalld
    #打开防火墙
    systemctl start firewalld
    #开放一段端口
    firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
    #查看开放的端口列表
    firewall-cmd --zone=public --list-ports
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    其他情况

    一般服务器经过以上的处理,端口就会开放,客户端访问一般不会出现其他问题,但是需要注意的是云主机(阿里云/腾讯云等云服务商提供的服务器资源)需要在云主机的安全组配置中添加对应的安全组规则,端口访问才能通

  • 相关阅读:
    Hadoop的伪分布式安装
    Springboot路政管理信息系统v93sc计算机毕业设计-课程设计-期末作业-毕设程序代做
    MySQL之视图,存储
    数据要素与多元市场主体融合机制研究
    十天学前端之JS篇(三)
    数据库名词解析
    [思维]The Enchanted Forest Codeforces1688D
    PHP代码审计11—逻辑漏洞
    Android SELinux
    iptables DNAT和de-DNAT
  • 原文地址:https://blog.csdn.net/fwdwqdwq/article/details/126595968