Понадобилось подключаться к серверу по ssh через прокси с авторизацией, по другому никак ибо так настроен сервер. Сервер заказчика подвергался атакам, а однажды и вовсе потерял данные, после чего была организована такая защита периметра.
Самый простой вариант использовать putty, но в мой повседневный набор входит именно OpenSSH клиент, поэтому нужно через него.
Недолгие поиски в интернете привели к использованию ProxyCommand с использованием утилиты nc, однако авторизироваться на прокси сервере таким образом мне не удалось. Однако, ProxyCommand
нам понадобиться дальше.
Дальнейшие поиски в интернетах подсказали использвать утилиту connect-proxy с использованием переменной SOCKS5_PASSWD
.
Устанавливаем connect-proxy
:
$ sudo apt install connect-proxy
Пробуем подключится таким образом:
$ SOCKS5_PASSWD=password \
ssh \
-o "ProxyCommand=connect-proxy -5 -S proxy_user@proxy_server:proxy_port %h %p" \
user@ip
Здесь:
SOCKS5_PASSWD
- пароль от прокси-5
- использовать socks5
протокол прокси-S
- опция адреса соединенияproxy_user@proxy_server:proxy_port
- имя пользователя, сервер и порт прокси сервера соответственноuser@ip
- пользователь и IP
адрес ssh
сервера