使用socat可以访问如何测试远程端口

时间:2017-12-16 08:54:15

标签: linux socat

如何使用socat可以访问远程端口?

使用netcat我们可以

p

如何用socat做到这一点?

2 个答案:

答案 0 :(得分:2)

我认为手册页中的第一个例子可以正常工作

socat - TCP4:www.domain.org:80

对于您的示例,这将是(并添加2秒连接超时):

socat - TCP4:192.168.1.15:22,connect-timeout=2

并且响应将是sshd连接横幅(如果这是正在收听的)

SSH-2.0-OpenSSH_5.3

socat[12650] E connecting to AF=2 192.168.189.6:23: Connection timed out

答案 1 :(得分:0)

当OP请求等效于-z时,以下socat命令将确保它不等待输入,而只是检查端口是否在侦听。

socat /dev/null TCP:remote:port

这可以在Docker上下文中使用,尤其是在alpine/socat映像的运行状况检查中。这是一个示例,该示例将smtp服务的转发器设置为mailhog服务,并检查连接是否建立

services:
  smtp:
    image: alpine/socat
    command: tcp-listen:25,fork mailhog:1025
    healthcheck: socat /dev/null mailhog:1025