您目前的位置: 消息与通知 > 行业资讯

轻量服务器端口不能访问的原因及解决方法

发布于 2023-06-12 14:08:13  来源:衡天主机  作者:衡天编辑组

  轻量服务器由于其易于使用和部署和能够在有限资源上高效运行的能力,最近几年来变得愈来愈流行。但是,这些服务器的一个常见问题是它们的端口可能变得不可用。在本文中,我们将探讨此问题的一些缘由并提供解决方案。

  轻量服务器端口不能访问的缘由

  1、端口冲突:端口不可用的最多见缘由之一是端口冲突。如果另外一个利用程序已在使用相同的端口,您的轻量级利用程序服务器将没法使用它。

  2、防火墙限制:防火墙旨在禁止与您的服务器的传入连接。如果您的防火墙禁止您的轻量级利用程序服务器尝试使用的端口,该端口将变得不可用。

  3、端口设置不正确:如果您的轻量级利用服务器中的端口设置不正确,可能会致使没法使用该端口。

  不可用端口的解决方案

  4、检查端口冲突:要检查端口冲突,您可使用端口扫描器工具来辨认正在使用的端口。一旦您肯定了另外一个利用程序正在使用的端口,您可以停止另外一个利用程序或将您的轻量级利用程序服务器配置为使用不同的端口。

  5、调剂防火墙设置:要允许传入连接到您的轻量级利用程序服务器,您需要调剂防火墙设置。如果您使用的是第三方防火墙,您可以参考其文档以了解怎样配置它。如果您在操作系统上使用内置防火墙,则可使用以下命令打开一个端口:

  sudo ufw allow /tcp

  6、验证端口设置:要验证轻量级利用程序服务器中的端口设置是否是正确,您可以检查配置文件。查找您正在使用的特定利用程序服务器的配置文件,并验证端口设置是否是正确。

  7、重新启动服务器:如果以上解决方案均无效,请尝试重新启动您的轻量级利用程序服务器。有时,这可以帮助清除与不工作的端口有关的任何问题。


  轻量服务器端口没法访问故障排查

  1.排查容器端口

  首先查看容器端口,命令:docker ps -a

  利用端口为9000,没错。

  2.排查防火墙

  网上有人说是firewall拦截了,用 firewall-cmd --state 命令发现“not running”,此路不通。

  3.链路排查

  此时发现了一个问题,防火墙本来已配置好的端口,都可访问(上图蓝色部份);访问自定义端口,毛病信息为“timeout”,输入sysctl net.ipv4.ip_forward:

  至此问题明朗:服务器IP转发关闭,转发失败。


  解决方案:

  修改配置文件:sudo vi /etc/sysctl.conf

  重启网络服务service network restart,问题解决。


  轻量服务器端口状态检测

  # 查看firewalld的运行状态

  # 默许防火墙 是关闭的 (not running)

  firewall-cmd --state

  # 启动防火墙

  # 没有任何提示 则启动成功

  systemctl start firewalld

  # 添加规则 (--permanent 代表重启也生效)

  # 提示 success 则成功

  firewall-cmd --zone=public --add-port=3306/tcp --permanent

  # 重新加载防火墙配置

  # 提示 success 则成功

  firewall-cmd --reload

  # 至此结束

  # 查看所有打开的端口

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

  # 关闭防火墙

  systemctl stop firewalld


  总之,对轻量服务器不可用端口的问题,使用本文提供的解决方案,您可以快速轻松地解决问题。通过检查端口冲突、调剂防火墙设置、验证端口设置或重新启动服务器,您可让您的轻量服务器重新启动并运行。请记住,在启动服务器之前始终确保您使用的端口可用且配置正确。