【问题标题】:Unable to forward remote(ec2) port to the local port using ruby "net/ssh" gem in window environment无法在窗口环境中使用 ruby​​“net/ssh”gem 将远程(ec2)端口转发到本地端口
【发布时间】:2017-11-29 00:04:29
【问题描述】:

我正在尝试将远程(ec2)端口转发到本地端口,以在我的本地浏览器中查看作业跟踪器,该浏览器在亚马逊 ec2 集群上运行。但无法转发远程端口。

这是我的代码:

Net::SSH.start('ec2-23-23-4-229.compute-1.amazonaws.com' ,'hadoop' ,:keys =>"mykeypair.pem",:forward_agent => true) do |ssh|  
    ssh.forward.remote(9033, "localhost",9101,"ec2-23-22-4-249.compute-1.amazonaws.com")  
    ssh.loop { !ssh.forward.active_remotes.include?([9033, "localhost"]) }  
end

【问题讨论】:

  • 这不能直接回答您的问题,但可能会有所帮助。我为查看jobtrackers网页所做的工作是通过带有-D选项(socks代理)的ssh连接到它:ssh -i ec2key root@ec2instance -D20000。然后我在浏览器中配置了 socks 代理(localhost:20000),并可以通过它们的私有 IP 连接到 NameNode/JobTracker 网页。
  • 找到了解决方案。它可能对某人有帮助: ssh=Net::SSH.start(dns, 'hadoop' ,:keys => ["src/#{$parameters_hash['pem_file_name']}"],:forward_agent => true) ssh.forward .local(port_available, 'localhost', 9100)

标签: ssh portforwarding net-ssh


【解决方案1】:

根据原海报:

找到了解决办法。它可能会帮助某人:

ssh=Net::SSH.start(dns, 'hadoop' ,:keys => ["src/#{$parameters_hash['pem_file_name']}"],:forward_agent => true) 
ssh.forward.local(port_available, 'localhost', 9100)

【讨论】:

    猜你喜欢
    • 2011-02-26
    • 2017-04-27
    • 1970-01-01
    • 2015-03-16
    • 2011-02-19
    • 1970-01-01
    • 2014-04-28
    • 2011-03-25
    • 1970-01-01
    相关资源
    最近更新 更多