我有一个脚本,它使用 openssl 的 s_client 命令来为大量主机提取证书。由于防火墙的原因,其中一些主机不可避免地无法访问。是否可以将 s_client 超时设置为比默认值短得多的值?我在手册页/帮助文件中没有看到这个。
这个或者某种包装命令将在 X 秒后自动终止 openssl -s_client。
如果可能的话,我不愿意预先测试主机/端口的可用性。
答案1
答案2
对于第一个循环:while read servername;do
超时 2 bash -c "/dev/tcp/$servername/$Port" && echo 端口打开。 || echo 端口关闭。
完毕
但开放端口比较困难:timeout 1 openssl s_client -showcerts -connect $servername:$Port