如何代理net-sftp?
How to proxy net-sftp?
我正在使用依赖于 net-ssh
gem.
的 net-sftp
我正在尝试通过 SFTP 连接到远程日志服务,它需要 IP 白名单。我当前所有的服务器都有动态 IP。
我正在尝试在 Google 云中设置静态、安全的代理服务器。我不太了解所有代理类型之间的所有差异,但 net-ssh 似乎支持...
- 袜子4
- 袜子5
- 'jump'代理
我研究过使用 Dante 设置 socks5 代理,但仅通过它中继 SFTP 连接似乎有点过分,更不用说我认为它以纯文本形式发送密码。
我将如何以最简单的方式通过某些服务器代理 net-sftp?
最简单的方法是设置一个可以到达目标服务器的跳转主机服务器,然后通过让跳转主机服务器代理您的连接来连接到目标服务器。
SSH 让一切变得简单:
ssh -J user@jump-host myuser@target-host
在您的 .ssh/config 中,您可以执行以下操作:
### First jump-host. Directly reachable
Host jump-host
HostName jum-phost.example.org
### Host to jump to via jump-host.example.org
Host target-host
HostName target-host.example.org
ProxyJump jump-host
这将允许您照常使用 net-ssh。如果您不想更改配置文件,则必须 use 'net/ssh/proxy/jump'
:
require 'net/ssh/proxy/jump'
proxy = Net::SSH::Proxy::Jump.new('user@proxy')
Net::SSH.start('host', 'user', :proxy => proxy) do |ssh|
...
end
查看此 article 了解有关 Jump Hosts 的更多信息。
我正在使用依赖于 net-ssh
gem.
net-sftp
我正在尝试通过 SFTP 连接到远程日志服务,它需要 IP 白名单。我当前所有的服务器都有动态 IP。
我正在尝试在 Google 云中设置静态、安全的代理服务器。我不太了解所有代理类型之间的所有差异,但 net-ssh 似乎支持...
- 袜子4
- 袜子5
- 'jump'代理
我研究过使用 Dante 设置 socks5 代理,但仅通过它中继 SFTP 连接似乎有点过分,更不用说我认为它以纯文本形式发送密码。
我将如何以最简单的方式通过某些服务器代理 net-sftp?
最简单的方法是设置一个可以到达目标服务器的跳转主机服务器,然后通过让跳转主机服务器代理您的连接来连接到目标服务器。
SSH 让一切变得简单:
ssh -J user@jump-host myuser@target-host
在您的 .ssh/config 中,您可以执行以下操作:
### First jump-host. Directly reachable
Host jump-host
HostName jum-phost.example.org
### Host to jump to via jump-host.example.org
Host target-host
HostName target-host.example.org
ProxyJump jump-host
这将允许您照常使用 net-ssh。如果您不想更改配置文件,则必须 use 'net/ssh/proxy/jump'
:
require 'net/ssh/proxy/jump'
proxy = Net::SSH::Proxy::Jump.new('user@proxy')
Net::SSH.start('host', 'user', :proxy => proxy) do |ssh|
...
end
查看此 article 了解有关 Jump Hosts 的更多信息。