ssh_config
我有一个 SOCKS 代理设置到网关服务器,它是通过在我的 to use中设置主机定义来创建的DynamicForward localhost:9876
。为了通过 SSH 连接到远程服务器,我设置了另一个要使用ProxyCommand /usr/bin/nc -x localhost:9876 %h %p
的主机定义,一切正常。
但是,我的结构脚本需要连接到该远程服务器。我如何告诉它在连接时使用 SOCKS 代理?
您可以使用 tsocks 和 OpenSSH 客户端的内置支持来创建 SOCKS 隧道。它需要一些配置,但效果很好。下面是我如何开始使用 Ubuntu 10.04。
# Install the tsocks library and shell script.
sudo apt-get install tsocks
# Configure the range of IP addresses you need access to.
sudo nano /etc/tsocks.conf
# Use the OpenSSH client to create a socks proxy (stepping
# stones are hosts used to gain access to private subnets).
ssh -D 1080 stepping.stone
# Now connect to any given address in your configured range.
# tsocks will intercept the connection and route it using
# the SOCKS proxy we created with the previous command.
tsocks ssh 1.2.3.4
Fabric 在没有 VPN 连接的情况下无法工作的事实对我来说是一个交易破坏者,所以这是一个很好的解决方案;它所需要的只是对一台主机的 SSH 访问。
关于Fabric (1.12.0)
(文档):
env.use_ssh_config = True