在 OpenSSH 中,我在需要隧道时使用此设置。这使我可以直接键入sftp server3
,而不必担心先手动启动server2
和server1
隧道。
# ~/.ssh/config
# 连接到server2,隧道通过server1
主机服务器2
ProxyCommand ssh server1 nc %h %p
# 连接server3,通过server2隧道
主机服务器3
ProxyCommand ssh server2 nc %h %p
为了更完整,我通常ssh -oCiphers=arcfour128,arcfour256,arcfour,blowfish-cbc -oControlMaster=no -oForwardX11=no -oForwardAgent=no -oPermitLocalCommand=no -oClearAllForwardings=yes server1 nc %h %p
使用ProxyCommand
.
- 被隧道化的 ssh 连接已经被加密,所以在外层使用较重的
aes
/是没有意义的;并且更快。3des
arcfour
blowfish
- 其余的
-o****
设置是出于偏执,因此即使将Host server1
具有非常奇怪设置的节添加到ssh_config
.
同样,您可以将 PuTTY 配置为使用 proxy 命令plink -P %proxyport -pw %pass %user@%proxyhost nc %host %port
,并在 Connection/Proxy 配置窗格中相应地设置代理主机名/端口/用户/密码。 plink
PuTTY 套件的其余部分(pscp
、psftp
等)加载保存在 PuTTY 图形配置中的任何内容;希望 WinSCP 也是如此。(我不使用它,所以我对它的功能不太熟悉。)