如何通过ip和端口连接到服务器,并获取有关它的简短信息?
我尝试使用netcat
和curl
进行此操作,但信息太长。我也试过使用telnet,但对我来说这不是一个好方法。
我有一个脚本连接到指定端口上的某些地址,如果它已连接,我想显示有关它的简短信息。
可能吗?有没有其他方法可以解决这个问题?
IP地址不同。它们可以是http,mysql,ssl等。
我附加了一个带连接功能的代码:
if nc -w 10 -z $1 $i; then
printf "\n$1:$i - Port is open\n\nSERVER INFO:\n";
printf "\n$(curl -IL $1)\n";
else
printf "\n$1:$i - Port is closed\n"
fi;
修改 我希望获得服务器响应的示例
{IP number}: ssh - OpenSSH 6.0pl1, http - apache 1.3.67, https - httpd 2.0.57
答案 0 :(得分:0)
你非常接近。您可以像在脚本中一样包含主机。
for port in $(seq 21 23); do
out=$(nc -w 1 -q 1 localhost $port)
echo port ${port}: $out
done
#port 21:
#port 22: SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.7
#port 23: