我需要在网络中的20k+机器上执行某种扫描(都是linux),我使用ssh连接到每台机器,在它上运行一个小命令,并收集输出。我运行的并行线程与大约3k到4k的机器在每台。
问题是,对于某些机器来说,登录是不工作的,在我的例子中,这表明机器没有得到适当的配置。SSH大约需要一分钟才能超时,这1分钟延迟了过载扫描。
在结束连接和显示消息的尝试之前,是否有任何选项可以缩短ssh必须等待的超时时间:
ssh: connect to host xxxxx port 22: Connection timed out
然后转移到下一台机器?这将大大加快扫描的总体速度,不仅是当我对太多的机器进行扫描时,甚至是
我正在使用cygwin通过ssh进入一个远程linux机器,并使用cygwin XWin服务器来显示gui应用程序。
当我第一次连接到远程机器时,会显示以下警告:
Warning: untrusted X11 forwarding setup failed: xauth key data not generated
Warning: No xauth data; using fake authentication data for X11 forwarding.
尽管有这些警告,XWin一开始似乎工作得很完美。过了一段时间(通常大约15分钟),它将不可避免地失去连接。cygwin X服务器图标
很长时间的读者。第一次的海报。我到处寻找解决方案,但我被卡住了。
我重新启动了一台linux服务器,然后在我的本地机器(Mac)上运行以下循环:
while true; do ssh sudo-user@10.10.10.10; sleep 1; done
这将一直循环,直到它能够成功建立SSH连接:
ssh: connect to host 10.10.10.10 port 22: Operation timed out <-- still rebooting
ssh: connect to host 10.10.10.10 port 22: Operation timed out &
在远程服务器上工作时,我在终端ssh remote_username@remote_host中打开SSH连接。
由于某种原因,如果我把这个连接闲置太久,终端就会失去响应,例如,无论我按什么键,绝对不会发生任何事情。
但是过了一段时间,我又回到了底层的本地终端上,我可以再次工作:
remote_user@remote_server:~$ # <--- whatever I type, nothing happens
# many minutes later, this is printed:
remote_user@remote_server:~$ client_loop: send di
我希望传入的ssh-会话在安全关键服务器不活动时自动断开连接。
我已经设置了以下设置
TCPKeepAlive no
ClientAliveInterval 30
ClientAliveCountMax 0
我希望sshd不会发送KeepAlive--由于TCPKeepAlive和ClientAliveCountMax而导致的包--以及30秒后我的会话超时。最重要的是,我认为TCPKeepAlive在默认情况下应该是yes。
我已经检查过这样的会议了:
root@<server>:/etc/apache2# w
06:53:51 up 2 days, 21:25, 2 use