目录
[使用 nc(netcat)临时监听端口](#使用 nc(netcat)临时监听端口)
[使用 socat 监听端口](#使用 socat 监听端口)
在 Linux 服务端启动一个端口,本质上是让某个服务监听指定的端口,以便接收外部的网络请求
Linux
使用 nc
(netcat)临时监听端口
nc
是一个简单且强大的网络工具,可用于创建 TCP 或 UDP 连接,也能用来临时监听端口。
- 监听 TCP 端口:如果要监听 TCP 协议的 8080 端口,在终端输入以下命令:
bash
nc -l -p 8080
参数解释:
-
-l
:开启监听模式。 -
-p
:指定要监听的端口号。 -
监听 UDP 端口:若要监听 UDP 协议的 9090 端口,使用如下命令:
bash
nc -ul -p 9090
其中 -u
选项表示使用 UDP 协议。
使用 socat
监听端口
socat
是一个多功能的网络工具,能够处理各种网络连接场景。
- 监听 TCP 端口:要监听 TCP 协议的 8888 端口,可执行以下命令:
bash
socat TCP-LISTEN:8888,fork STDOUT
参数解释:
-
TCP-LISTEN:8888
:表示监听 TCP 协议的 8888 端口。 -
fork
:当有新的连接请求时,socat
会创建一个子进程来处理该连接,这样可以同时处理多个连接。 -
STDOUT
:将接收到的数据输出到标准输出。 -
监听 UDP 端口:若要监听 UDP 协议的 7777 端口,使用命令:
bash
socat UDP-LISTEN:7777,fork STDOUT
Windows
telnet
这个命令在windows/linux上通用,要是在windows上,首先要看这个服务是不是开启的。
控制面板 -> 程序 -> 启用或关闭 Windows功能 -> Telnet客户端
用法:(注意中间是空格,不是冒号了)
bashtelnet ip port
开放的端口
bash
[appuser&dp-core-bat ~]$ telnet 10.172.123.253 28080
Trying 10.172.123.253...
Connected to 10.172.123.253
不开放的端口
bash
[appuser&dp-core-bat ~]$ telnet 10.172.123.253 28081
Trying 10.172.123.253...
telnet: connect to address 10.172.123.253: Connection refused
ssh
用法
ssh -v -p port ip
说明:
v 调试模式(会打印日志)
p 指定端口
username:远程主机的登录用户
ip:远程主机
开放的端口
C:\Users\Z1561>ssh -v -p 28031 192.168.96.62
OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2
debug1: Connecting to 192.168.96.62 [192.168.96.62] port 28031.
debug1: Connection established. 建立debug1: identity file C:\\Users\\Z1561/.ssh/id_rsa type 0
debug1: identity file C:\\Users\\Z1561/.ssh/id_rsa-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ecdsa type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ecdsa-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ecdsa_sk type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ecdsa_sk-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ed25519 type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ed25519-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ed25519_sk type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_ed25519_sk-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_xmss type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_xmss-cert type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_dsa type -1
debug1: identity file C:\\Users\\Z1561/.ssh/id_dsa-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_for_Windows_9.5
未开放的端口
C:\Users\Z1561>ssh -v -p 28031 192.168.96.62
OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2
debug1: Connecting to 192.168.96.62 [192.168.96.62] port 28031.
debug1: connect to address 192.168.96.62 port 28031: Connection refused
ssh: connect to host 192.168.96.62 port 28031: Connection refused 拒绝
curl
url 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。
用法
curl ip:port
开放的端口
appuser\&dp-core-bat \~\]$ curl 10.172.123.253 28080 \ \
\Error 404 - Not Found\ \ \\
未开放的端口
appuser\&dp-core-bat \~\]$ curl 10.172.123.253 28081 curl: (7)Failed connect to 10.172.123.253:28081; Connection refused
wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载。
用法
wget ip:port
开放的端口
wget 10.172.123.253:28080
Connecting to 1.1.1.1:8000... connected.
未开放的端口
wget 10.172.123.253:28081
failed: Connection timed out. Retrying.
tcping
这是个第三方工具,下载地址 tcping.exe - ping over a tcp connection。这个工具还可以用来测试TCP的延迟。在官网下载下载 tcping.exe, 复制到 'C:\Windows\System32' 就可以在cmd里面用了。
用法
tcping ip port
总结 :用telnet、ssh 就可以,其他了接即可
参考:https://blog.csdn.net/qq_43842093/article/details/121914310