В OpenSSH я использую эту настройку, когда мне нужны туннели. Это позволяет мне набирать sftp server3
напрямую, не беспокоясь о ручном запуске туннелей server2
и server1
.
# ~/.ssh/config
# to connect to server2, tunnel through server1
Host server2
ProxyCommand ssh server1 nc %h %p
# to connect to server3, tunnel through server2
Host server3
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****
выходят из паранойи, так что ничто не сломается, даже если в ssh_config
.
Аналогично, вы можете настроить PuTTY на использование прокси-команды plink -P %proxyport -pw %pass %user@%proxyhost nc %host %port
и соответственно указать имя хоста / порт / пользователя / пароль прокси на панели конфигурации Connection / Proxy. plink
и остальные наборы PuTTY (pscp
, psftp
и т. Д.) Загружают все, что сохранено в графической конфигурации PuTTY; надеюсь, WinSCP тоже. (Я им не пользуюсь, поэтому не слишком знаком с его функциями.)