scala或java库,将读取.ssh / config

时间:2018-03-26 21:13:32

标签: java scala ssh ammonite

我的.ssh/config文件中有一个条目如下:

主持人ip-172-16 - *

ProxyCommand ssh jeff@jumpdev.example.org nc %h %p
User ubuntu
IdentityFile ~/.ssh/id_rsa_aws
StrictHostKeyChecking no
ForwardAgent yes

众所周知,这将允许我运行: ssh ip-172-16-2-108.ec2.internal我作为Ubuntu EC2实例的默认用户 - ubuntu进入私有服务器。我想在创建上采取一些具体行动。

最终我要找的是与scala-sshjassh或直接来自jsch

相同的功能

我不是要求任何人建议一个库,只是如何/如果支持这个功能。使用jassh,我尝试使用代理选项而没有运气。

最终我可以直接发送到ssh,但即使使用ammonite,如果使用%('ssh, Symbol("ip-172-16-2-108.ec2.internal"),它也不会加载配置。我认为这会使用基本的ssh,它会加载配置和匹配,就像裸ssh一样。我还可以设置我的配置,不要使用nc

这听起来好像我要求一个图书馆,所以如果它被关闭了,那就这样吧,但我已经直接尝试了4,没有,似乎完全支持.ssh/config

TIA, 杰夫

1 个答案:

答案 0 :(得分:0)

我知道还有其他答案,但我发现在ProxyCommand允许ProxyJump.ssh/config切换到ammonite可以完美地运作。此外,因为我需要的只是这个问题的解决方案,并且我已经在使用ammonite,这是一个很好的匹配。

如果其他人有其他经验,我认为这是一个很好的问题,因为我们讨论的是Jcsh内建的特定图书馆。

FWIW,我的.ssh/config现在看起来像:

Host ip-172-16-*
  ProxyJump jeff@jumpdev.example.org
  User ubuntu
  IdentityFile ~/.ssh/id_rsa_aws
  StrictHostKeyChecking no
  ForwardAgent yes

希望这有助于某人。