我使用socat快速抓取远程登录横幅,如下所示:
for ip in $list
do
socat -T 1 - tcp:$ip:23 &
done它循环遍历指定的IP地址列表,并为每个IP地址调用socat,后者将端口23上的TCP socket与stdin (-)链接起来,并在一秒钟后断开连接,同时在后台运行。问题是所有的后台进程都使用相同的stdin,所以它们都会挂起。我尝试了readline选项,也尝试了用</dev/null抑制stdin,但没有结果。例如,除非指定-d忽略输入,否则netcat的行为与此相同。
我指定的socat行是用于其他目的的脚本的一部分,所以如果问题可以在不求助于masscan、nmap或netcat的情况下得到解决,那就太好了。谢谢。
发布于 2020-03-05 16:54:20
一定有更好的方法来做到这一点,但到目前为止我还没有找到它。
echo -n |的问题是,当echo完成时,会向socat发送一个sigpipe。
所以为了解决这个问题,我这样做了
执行睡眠10;完成|套接字-T 1- tcp:$ip:23
这给出了一个管道,并且不会结束。
https://stackoverflow.com/questions/32927808
复制相似问题