前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >检查服务器端口连通性的几种方法

检查服务器端口连通性的几种方法

作者头像
Hopetree
发布于 2022-09-26 10:14:29
发布于 2022-09-26 10:14:29
2.9K01
代码可运行
举报
文章被收录于专栏:tendcodetendcode
运行总次数:1
代码可运行

在日常运维工作中,经常会需要检查本机或者其他服务器的端口开放情况,虽然自己本身也会几个基本的查看端口连通性的命令,但是也会遇到某些服务器上面没有安装自己会的工具,所以收集了一些可以用来检测端口连通性的命令工具。

查看本机监听端口

netstat

安装:yum -y install net-tools

使用:netstat -nplt

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ netstat -nplt
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:8888            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      -                   
tcp        0      0 0.0.0.0:5700            0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:6789            0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:8080            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:9527            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::8888                 :::*                    LISTEN      -                   
tcp6       0      0 ::1:25                  :::*                    LISTEN      -                   
tcp6       0      0 :::5700                 :::*                    LISTEN      -                   
tcp6       0      0 :::6789                 :::*                    LISTEN      -                   
tcp6       0      0 :::8080                 :::*                    LISTEN      -                   
tcp6       0      0 :::80                   :::*                    LISTEN      - 

ss

ss 命令是 netstat 命令的替代品,而且更加优秀。ss 执行的时候消耗资源以及消耗的时间都比netstat少很多。ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效。

使用: ss -nplt

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ ss -nplt
State      Recv-Q Send-Q            Local Address:Port                           Peer Address:Port              
LISTEN     0      128                           *:8888                                      *:*                  
LISTEN     0      100                   127.0.0.1:25                                        *:*                  
LISTEN     0      128                           *:443                                       *:*                  
LISTEN     0      128                           *:5700                                      *:*                  
LISTEN     0      128                           *:6789                                      *:*                  
LISTEN     0      128                           *:8080                                      *:*                  
LISTEN     0      128                           *:80                                        *:*                  
LISTEN     0      128                           *:9527                                      *:*                  
LISTEN     0      128                        [::]:8888                                   [::]:*                  
LISTEN     0      100                       [::1]:25                                     [::]:*                  
LISTEN     0      128                        [::]:5700                                   [::]:*                  
LISTEN     0      128                        [::]:6789                                   [::]:*                  
LISTEN     0      128                        [::]:8080                                   [::]:*                  
LISTEN     0      128                        [::]:80                                     [::]:*   

检查服务器端口连通性

telnet

telnet 在windows电脑不可用的时候需要开启服务,具体方式参考:Windows10系统开启telnet功能

安装:yum install -y telnet-server & yum install -y telnet

使用:telnet ip port

端口通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hopetree zero]# telnet 172.17.120.246 443
Trying 172.17.120.246...
Connected to 172.17.120.246.
Escape character is '^]'.

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hopetree zero]# telnet 172.17.120.246 1234
Trying 172.17.120.246...
telnet: connect to address 172.17.120.246: Connection refused

ssh

ssh 命令一般用于登录服务器,也可以作为端口连通性的检查。

使用:ssh -v -p port ip

端口通的回显(关键信息是 debug1: Connection established.):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hopetree zero]# ssh -v -p 443 172.17.120.246
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 58: Applying options for *
debug1: Connecting to 172.17.120.246 [172.17.120.246] port 443.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /root/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4
debug1: ssh_exchange_identification: HTTP/1.1 400 Bad Request

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hopetree zero]# ssh -v -p 1234 172.17.120.246
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 58: Applying options for *
debug1: Connecting to 172.17.120.246 [172.17.120.246] port 1234.
debug1: connect to address 172.17.120.246 port 1234: Connection refused
ssh: connect to host 172.17.120.246 port 1234: Connection refused

curl

curl 一般情况下用来进行请求,实际上也可以检测端口是否能通.

使用:curl ip:port

端口通的回显

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ curl 172.17.120.246:443
<html>
<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<center>The plain HTTP request was sent to HTTPS port</center>
<hr><center>nginx/1.20.1</center>
</body>
</html>

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ curl 172.17.120.246:1234
curl: (7) Failed connect to 172.17.120.246:1234; Connection refused

wget

安装:yum install -y wget

使用 :wget ip:port

端口通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ wget 172.17.120.246:443
--2022-04-13 14:35:48--  http://172.17.120.246:443/
Connecting to 172.17.120.246:443... connected.
HTTP request sent, awaiting response... 400 Bad Request
2022-04-13 14:35:48 ERROR 400: Bad Request.

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ wget 172.17.120.246:1234
--2022-04-13 14:36:29--  http://172.17.120.246:1234/
Connecting to 172.17.120.246:1234... failed: Connection refused.

nc

nc命令 全称netcat,用于设置路由器。它能通过 TCP 和 UDP 在网络中读写数据。通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它。使用 netcat 命令所能完成的事情令人惊讶。

安装:yum install -y nc

使用:nc -vz ip port

端口通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ nc -vz 172.17.120.246 443
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 172.17.120.246:443.
Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ nc -vz 172.17.120.246 1234
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connection refused.

nmap

安装:yum install -y nmap

使用:nmap -p port ip

端口通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ nmap -p 443 172.17.120.246

Starting Nmap 6.40 ( http://nmap.org ) at 2022-04-13 14:46 CST
Nmap scan report for iZwz91obh1cwf52kgsc0fgZ (172.17.120.246)
Host is up (0.000054s latency).
PORT    STATE SERVICE
443/tcp open  https

Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds

端口不通的回显:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[zero@hopetree ~]$ nmap -p 1234 172.17.120.246

Starting Nmap 6.40 ( http://nmap.org ) at 2022-04-13 14:46 CST
Nmap scan report for iZwz91obh1cwf52kgsc0fgZ (172.17.120.246)
Host is up (0.000066s latency).
PORT     STATE  SERVICE
1234/tcp closed hotline

Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=sxck8uzrhxb1

版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://cloud.tencent.com/developer/article/2123579 许可协议:署名-非商业性使用 4.0 国际许可协议

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月13日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linux端口不通检查
# Windows 检查端口 telnet ip port # Linux telnet 检查端口 telnet ip port ## 若报命令不存在时安装 sudo yum install telnet ## 成功 Trying 161.63.104.193... Connected to 161.63.104.193. Escape character is '^]'. ## 端口通但服务没启动 Trying 29.34.5.11... telnet: connect to address 29.34
林万程
2021/06/09
7.7K0
判断端口通不通的几种方法「建议收藏」
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106107.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/09
8.2K0
运维分享|测试主机间的连通性方法总结
很多时候,我们需要测试两台或者多台机器的网络策略是否是连通状态。当然,在做系统集成时,这个就更显得尤为重要了。
六月暴雪飞梨花
2023/11/21
1.3K0
运维分享|测试主机间的连通性方法总结
06·Shell编程-企业级实战练习
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
3360
06·Shell编程-企业级实战练习
不使用telnet进行端口测试的方法
1. curl# 测试命令及参数curl -v 10.10.251.132:22# 端口连通示例[oracle@dbtest ~]$ curl -v 10.10.251.132:22* About to connect() to 10.10.251.132 port 22 (#0)* Trying 10.10.251.132...* Connected to 10.10.251.132 (10.10.251.132) port 22 (#0) <<<<<<<> GET / HTTP/
dumpcat
2022/05/18
3.7K0
linux定位问题常用命令
如果要显示所有的网络接口,包含在线(up)的或下线(down)的,使用-a 选项。
聂伟星
2020/08/28
2.7K0
如何使用netstat,lsof和nmap检查Linux中的开放端口
目录 使用 netstat 检查开放端口 使用 lsof 检查开放端口 使用 nmap 检查开放端口 在对网络连接或特定于应用程序的问题进行故障排除时,首先要检查的事情之一应该是系统上实际使用的端口以及哪个应用程序正在侦听特定端口。 网络端口由其编号、关联的 IP 地址和通信协议类型(例如 TCP 或 UDP)标识。最重要的是,开放端口是应用程序或进程侦听的网络端口,充当通信端点。 可以使用防火墙打开或关闭(过滤)每个侦听端口。一般而言,开放端口是接受来自远程位置的传入数据包的网络端口。 使用 netsta
入门笔记
2022/06/02
2.4K0
让人迷糊的 socket udp 连接问题
公司内部的一个 golang 中间件报 UDP 连接异常的日志,问题很明显,对端的服务挂了,自然重启下就可以了。
梦醒人间
2022/03/29
1.8K0
让人迷糊的 socket udp 连接问题
centos 端口测试之nc使用
服务器端口测试是否正常,运维一般使用telnet来检查,但它有局限性,服务器的端口必须存在服务运行。 这时使用nc可以在服务端模拟开启一个端口,再通过nc测试此端口,好用! nc是netcat工具的简称,一个网络工具,可以用来端口扫描、文件传输等功能。 centos上面安装也很简单:
钢铁知识库
2022/08/20
2.2K0
每天学一个 Linux 命令(91):nc
nc 命令是一款功能强大的网络工具。它是一个端口扫描工具,也是一款安全工具,还能是一款监测工具,甚至可以做为一个简单的 TCP 代理。
民工哥
2021/04/21
1.6K0
nc很强大,容易让人蹲号子
对于nc命令来说,可真的是要一行代码调半天。因为这行代码的威力是非常大的!当然,用不好的话,还会给自身带来麻烦。
xjjdog
2020/08/24
8300
nc很强大,容易让人蹲号子
linux查看服务器开放的端口和启用的端口五种方式
Nmap是Network Mapper的简称。Nmap是一款免费、开源的网络发现和侦察工具。Nmap可以扫描网络中的处于活动状态的主机、开放端口、操作系统版本和服务检测以及执行隐匿方式的信息扫描。安装方式如下:
共饮一杯无
2022/11/28
29.1K0
linux查看服务器开放的端口和启用的端口五种方式
Linux – nmap – nc(ncat) 命令 – 扫描端口
特殊说明: 以上文章,均是我实际操作,写出来的笔记资料,不会盗用别人文章!烦请各位,请勿直接盗用!转载记得标注来源!
收心
2022/11/21
4.8K0
Linux – nmap – nc(ncat) 命令 – 扫描端口
网络协议之:socket协议详解之Socket和Stream Socket
不管是在普通的网络编程中还是在netty中,都经常会提到一个词叫做socket,好像socket是一个神奇的东西,使用socket我们可以建立客户端到服务器端的连接,并且和进行客户端和服务器端的通讯,那么socket到底是什么呢?它有哪些分类呢?一起来看看吧。
程序那些事
2022/03/30
2.2K0
手把手教你 3 个 Linux 中快速检测端口的小技巧
监听端口是应用程序监听的网络端口。你要得到的监听端口名单通常可以通过如 ss、netstat 或 lsof 命令查询系统上网络堆栈。每个监听端口都可以使用防火墙打开或关闭(过滤)。
iMike
2020/03/04
5.9K0
Linux端口转发的几种常用方法
在一些实际的场景里,我们需要通过利用一些端口转发工具,比如系统自带的命令行工具或第三方小软件,来绕过网络访问限制触及目标系统。
Bypass
2020/08/27
52K0
端口检测 | 命令行整理篇
前言 使用Linux主机也有一段时间,常常会监测某一个端口是否已经开启了、或者某一个端口被哪一个程序占用了,然而今天就系统整理一下,Share~ ---- 端口类型 说点理论的的东西,额~Unix/Linux服务器的类型有哪些呢?按照端口的分段基本可以分成三大类型: 公认端口(Well Known Port) 公认端口号从0到1023,它们紧密绑定与一些常见服务,例如FTP服务使用端口21、HTTP服务使用端口80 注册端口(Registered Ports) 注册端口一般从1024到49151,它
AlicFeng
2018/06/08
1.9K0
离职前他分享了阿里的核心面试题库
大公司的面试,看中的是你对于基础知识的掌握程度, 因为大公司的产品基本是基于开源产品的二次开发,或者使用自动化平台,而这些二次开发的东西是你在其他公司所无法接触到的,更别提让你熟悉阿里的产品或者工具。所以只能通过面试基础知识来考核你的学习能力
互联网老辛
2020/05/26
6360
Linux问题汇总
在Windows环境下用Notepad++写了个shell脚本,上传到Linux平台后运行报错如下:
炒香菇的书呆子
2023/09/27
3070
Kali Linux 网络扫描秘籍 第三章 端口扫描(三)
另一个可以对远程系统执行 TCP 连接扫描的 替代工具就是 Dmitry。不像 Nmap 和 Metasploit,Dmitry 是个非常简单的工具,我们可以使用它来执行简单快速的扫描,而不需要任何配置。这个秘籍展示了如何使用 Dmitry 来自执行 TCP 连接扫描。
ApacheCN_飞龙
2022/12/01
1.4K0
相关推荐
Linux端口不通检查
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验