如何使用socat可以访问远程端口?
使用netcat我们可以
p
如何用socat做到这一点?
答案 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