• centos7.9 telnet其他服务器的端口不通


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 qacg 2024-04-11 16:35 采纳率: 0% 浏览 4 首页/ 运维 / centos7.9 telnet其他服务器的端口不通 服务器centos 目前有一台虚拟机,系统为centos7.9,telnet其余设备的23端口正常,但是别的端口提示如下 已经排除了网络,防火墙,对端端口没有开通的情况求解惑! 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    4条回答 默认 最新

    • 码农阿豪 Java领域优质创作者 2024-04-11 16:37
      关注
      让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
      根据提示信息可以看出,连接被拒绝了,可能是由于目标端口没有监听造成的。以下是可能的原因及解决方法:
      1. 端口被占用 可能是由于目标端口被其他程序占用导致的,可以通过以下命令查看端口占用情况:
      sudo netstat -tunlp | grep 端口号
      

      如果已经被占用的话,则将该程序停掉或者切换至其他端口即可。 2. 端口未监听 可能是由于目标程序没有监听该端口导致的,在代码中需要先注册监听端口,在程序运行时才会监听该端口。以下是一个简单的Python脚本示例:

      import socket
      host = '0.0.0.0'
      port = 8080
      sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      sock.bind((host, port))
      sock.listen(5)
      print(f"Listening on {host}:{port}")
      while True:
          conn, addr = sock.accept()
          print(f"Connected by {addr}")
          conn.send(b"Hello, world!\n")
          conn.close()
      
      1. 防火墙未开启端口 在Centos 7中可以通过firewalld进行配置,可以通过以下命令开启80端口:
      sudo firewall-cmd --add-port=80/tcp --permanent
      sudo firewall-cmd --reload
      

      需要注意的是,以上操作为永久生效,如需要临时开启某个端口,可以通过以下命令:

      sudo firewall-cmd --add-port=8080/tcp
      

      以上是可能的三种原因及解决方法,可以根据具体情况进行排查。

      评论
      qacg 2024-04-11 16:41

      目前firewalld已经关闭,selinux也关闭了
      我用别的设备telnet这个地址的同样的端口正常

      回复
    • GISer Liu 2024-04-11 17:38
      关注

      该回答引用自GPT-3.5,由博主GISer Liu编写:

      针对你描述的问题,排除了网络、防火墙以及目标端口的未开放情况后,我们可以进一步分析可能的原因和解决方案。

      1. 检查路由器和交换机配置 :确保路由器和交换机上的配置正确,没有针对 telnet 连接的限制或阻止。
      2. 检查目标服务器的 telnet 配置 :确认目标服务器的 telnet 服务正常运行,并且没有特殊配置阻止了非标准端口的 telnet 连接。
      3. 检查 SELinux 策略 :在 CentOS 7 中,SELinux 默认启用,并且可能会阻止某些网络连接。可以通过以下命令暂时禁用 SELinux 进行测试:
        Copy code
        setenforce 0
        
        如果禁用 SELinux 后 telnet 能够正常连接,则需要重新配置 SELinux 策略以允许相应的网络连接。
      4. 检查网络设备和链路状态 :确保网络设备和链路状态良好,没有任何异常。可以通过检查网络设备的日志或者使用网络诊断工具来进行进一步排查。
      5. 使用其他工具进行网络连接测试 :除了 telnet,尝试使用其他网络连接工具(如 netcat、nc)进行测试,确认是否仅限于 telnet 或者存在更广泛的网络连接问题。
        如果以上方法都无法解决问题,可能需要进一步分析目标服务器的日志以及网络设备的配置,以确定根本原因。

      如果该回答解决了您的问题,请采纳!如果没有,请私信联系或评论您的疑惑

      评论
    • CSDN-Ada助手 CSDN-AI 官方账号 2024-04-11 18:08
      关注

      【相关推荐】




      如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
      评论
    • Kwan的解忧杂货铺 Java领域优质创作者 2024-04-16 07:03
      关注

      上午好☀️☀️☀️️
      本答案参考ChatGPT-3.5

      根据描述,虽然23端口正常,但其他端口却无法通信,因此可能需要进行如下排查:

      1. 确认目标服务器是否有防火墙,并且在防火墙开启的情况下,是否正确打开了对应端口的访问权限。

      2. 查看目标服务器的路由表,确认是否存在不允许访问的路由,导致无法访问其他端口。

      3. 确认网络配置是否正确,包括网关、IP地址等是否有误。

      4. 确认目标服务器是否存在相应的服务,比如30000端口是否有需要使用的服务在监听这个端口。

      综上,可能的解决方案可以总结如下:

      1. 查看目标服务器上是否存在防火墙,并且是否正确设置了端口访问权限。

      2. 确认目标服务器的路由表是否正确。

      3. 确认网络配置是否正确。

      4. 确认目标服务器是否存在相应的服务,比如30000端口是否有需要使用的服务在监听这个端口。

      如果以上方案都不行,可以参考以下代码进行排查:

      telnet 
      查看是否存在如下提示:
      Trying.i
      Connected to 
      Escape character is. 
      如果是,则代表你的telnet命令应该没有问题,请将目标地址和端口号填写正确。若不是,则说明你的命令存在问题,需要进行修改或查看问题所在。
      
      评论
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    SpringMVC(四)REST风格
    力扣 8049. 判断能否在给定时间到达单元格
    网络安全(黑客)自学
    java考点之程序看iO流操作
    海豚调度器分布式部署
    面试-synchronized(java5以前唯一)和ReentrantLock的区别
    激光雷达市场格局“剧变”,这家国产厂商成了最大黑马?
    重学 vue3 中的 computed
    自学(网络安全)黑客——高效学习2024
    Android开发笔记(一百八十七)利用估值器实现弹幕动画
  • 原文地址:https://ask.csdn.net/questions/8086928