Коробка Ubuntu, на которую я смотрю, находится за прокси-сервером, который поддерживает подключение к портам 80/443. Я установил внешний ssh-сервер на порт 443 и могу без проблем подключиться к нему с помощью corkscrew / ssh
ssh_config:
Host *
ProxyCommand corkscrew corp.proxy.ip 8080 %h %p
командная строка для запуска ssd:
ssh -D 1080 username@external-host.com -p 443
Как я уже сказал, все работает нормально. Проблема в том, что параметр -D, который должен открывать прокси-сервер SOCKS, не совсем работает.
Когда я запускаю прокси-цепочки, я получаю следующее:
user@laptop:$ proxychains git pull
ProxyChains-3.1 (http://proxychains.sf.net)
random chain (1):....127.0.0.1:1080....can't connect to..corp.proxy.ip:8080
Так что, похоже, по какой-то причине он снова инициирует соединение с прокси.
Подобная настройка отлично работает на машине с Windows (Bitvise Tunneller / Freecap), все туннелирование работает нормально.
Я пробовал это:
На этот раз ssh не пытался подключиться к прокси, и соединение прошло нормально, но редактирование конфигурации каждый раз вперед и назад вряд ли является решением.
Итак, есть идеи, как правильно исправить?
Спасибо!
В конце концов, решение довольно простое: сделать так, чтобы ssh подключался к прокси ТОЛЬКО тогда, когда ему впервые нужно установить туннель:
ssh_config:
Host external-host.com
ProxyCommand corkscrew corp.proxy.ip 8080 %h %p
Это здорово работает.
Всем спасибо за просмотр :)