у меня есть несколько ssh-хостов (дюжина), для простоты host1
, host2
и т. Д.
Мне часто нужно перенаправлять порт, например
ssh -L 8888:localhost:8888 host1
ssh -L 8889:localhost:8888 host2
ssh -L 8890:localhost:80 host2
Это раздражает, поскольку 1) мне нужно запомнить отображение локальных портов на хосты и 2) мне нужно сделать это вручную
Я хотел бы реализовать какую-то систему, которая прослушивает определенные хосты (локально, на моя машина), например host1.8888.ssh.local
и автоматически открыл туннель на этот адрес.
Все это можно настроить в конфигурационном файле ssh, который обычно находится по адресу: $HOME/.ssh/config
например:
Host abc
Hostname 1.2.3.4
Port 345
IdentityFile /path/to/id_rsa
LocalForward 8888 localhost:8888
User root
Host def
Hostname 2.3.4.5
User root
LocalForward 8889 localhost:8889
Таким образом, вам просто нужно ввести ssh abc
и все ваши настройки, которые вы укажете внутри, будут применены. Доступные параметры можно найти на справочной странице.