Bash 创建从nmap输出连接到ssh的脚本

Bash 创建从nmap输出连接到ssh的脚本,bash,shell,scripting,Bash,Shell,Scripting,我正试图创建一个脚本,通过ssh连接到服务器,但我是一个bash noob。我不知道ip,必须使用nmap扫描范围。我想要的是一个脚本来连接或尝试从nmap输出连接到ip。用try,我的意思是其中一个ip就是我的ip,所以连接到这个ip是没有用的 到目前为止,我所得到的只是用namp-SP192.168.42.1/24扫描范围 我发现一个nmap过滤器只扫描端口22 这是我得到的 $ nmap --open -p22 192.168.42.* Starting Nmap 7.70 ( http

我正试图创建一个脚本,通过ssh连接到服务器,但我是一个bash noob。我不知道ip,必须使用nmap扫描范围。我想要的是一个脚本来连接或尝试从nmap输出连接到ip。用try,我的意思是其中一个ip就是我的ip,所以连接到这个ip是没有用的

到目前为止,我所得到的只是用namp-SP192.168.42.1/24扫描范围

我发现一个nmap过滤器只扫描端口22 这是我得到的

$ nmap --open -p22 192.168.42.*

Starting Nmap 7.70 ( https://nmap.org ) at 2019-04-08 08:55 CEST

Nmap scan report for 192.168.42.113

Host is up (0.0057s latency).

PORT   STATE SERVICE
22/tcp open  ssh

Nmap done: 256 IP addresses (2 hosts up) scanned in 59.63 seconds

您可以简单地使用快速的netcat。nmap扫描范围太长

for i in {1..254..1}
do
  if nc -w 1 -zv 192.168.42.$i 22 &>> /dev/null
  then
  ssh 192.168.42.$i
  fi
done

如果ssh在该范围内打开时,您得到多个ip…那么?不只是ssh到一个ip,但输出将有2个。一个是我的主机,另一个是我想连接的主机。脚本停止后,它会将我从ssh中踢出,并再次在我的正常shell上执行im。也许是一个无止境的循环?所以我只需要按住ctrl+cOkay键就行了,但扫描范围需要一些时间,比如30秒。在第6行从fi更新到fi,然后并行运行