Будут дополняться

Local Port Forwarding

Пробросить порт 5432 c хоста host2.0xbbeer.ru на порт 6432 локальной машины:

1ssh -L 6432:localhost:5432 user@host2.0xbbeer.ru

Мы можем пробрасывать порт не только с хоста, к которму подключаемся, но и с хоста, недоступного локальной машине, но доступного удаленной. Пробросим порт 5432 с host3.0xbbeer.ru на порт 6432 локальной машины.

1ssh -L 6432:host3.0xbbeer.ru:5432 user@host2.0xbbeer.ru

При пробросе портов в локальную машину можно указать интерфейс на который его делать, например, пробросим порт на все доступные интерфейсы (0.0.0.0):

1ssh -L 0.0.0.0:5432:localhost:5432 user@host2.0xbbeer.ru

Действия выше можно использовать по цепочке localhost –> host2 –> host3 и т.д., например:

1ssh -t -L 9090:localhost:9090 user@host2.0xbbeer.ru ssh -t -L 9090:localhost:80 user@host3.0xbbeer.ru

Результатом команды будет проброс 80 порта с host3 к нам на локальную машину на порт 9090. Заметьте, что в аргументах добавилась опция “-t”, она позволяет нам пробросить управлящий терминал, чтобы мы могли управлять конечным сервером (host3) с локальной машины, в противном случае подключение состоится, но вводить какие-либо команды мы не сможем, а в терминале будет сообщение:

Pseudo-terminal will not be allocated beacause stdin is not a terminal

Remote Port Forwarding

С помощью Remote Port Forwarding можно сделать доступными ресурсы локальной машины на удаленной, например:

1ssh -R 6432:localhost:5432 user@host2.0xbbeer.ru

Здесь мы пробросили порт 5432 локальной машины на порт 6432 host2.

X11-Forwarding

SSH позволяет нам работать с графическими приложениями, расположенными на удаленных серверах, для этого нужно запустить команду с параметром -X или включить X11.Forwading в /etc/sshd/ssh_config

1ssh -X user@host2.sgc.local
2gnome-calculator

В примере подключились к host2 с разрешенным пробросом графики и запустили калькулятор с удаленной машины.

Agent-Forwarding

Для того чтобы на удаленных машинах не хранить ключи доступа, можно пробросить ssh-агента с локальной машины:

1shh -A user@host2.0xbbeer.ru

Proxy-Jump

Если нужна переадресация агента, рекомендуют использовать опцию ProxyJump как более безопасную:

1ssh -J  bastion.0xbbeer.ru internal.0xbbeer.ru

Подключились к internal.0xbbeer.ru через bastion.0xbbeer.ru , при этом все ключи локального ssh-агента доступны на internal.0xbbeer.ru

Полезные ссылки