我已经设置了一个通过跳转主机的隧道:
ssh -o ProxyCommand ='ssh -W%h:%p堡垒'-i my-emr.pem -ND 8888 [email protected]
堡垒是我在〜/ .ssh / config中定义的主机
通过这种方式,我可以通过SOCKS5代理访问ip-my.ec2.internal等。我想测试是否可以通过SOCKS5代理访问此主机。有没有我可以使用的命令?我可以使用以下命令测试堡垒主机是否可访问:nc -G 2 -z my-bastion.com 22
无论如何,我可以扩展以上命令来测试最终主机是否为ip-my.ec2.internal?
[似乎您在nc
命令中进行的所有测试都是在22秒内端口22是否允许连接。是否可以与my-bastion建立SSH连接不是同一回事。它甚至都不能证明您可以连接到我的堡垒。防火墙接受不会传递任何数据的连接的情况并不少见。
如果您希望进行相同级别的弱测试,则可以按照以下步骤进行相同的操作:
ssh bastion nc -G 2 -z ip-my.ec2.internal 8888
有很多方法可以使此错误返回不可达的状态,就像其他nc
命令可能失败的方法一样。但这可能会给您一些有关管理UI的有用信息。
了解是否可以建立网络连接的唯一方法是尝试所需的实际网络连接。通常,您不应预检网络连接。只需尝试使用它们,然后处理连接错误(即使飞行前通过也可能发生)。如果目标是避免长时间的等待,请缩短超时时间(当网络较慢时,这将导致更多的假阴性)。