1

Я пытаюсь подключиться к одному из моих внутренних компьютеров (частный IP) с помощью SSH через Интернет. Порт SSH этого компьютера не отображается, поэтому сначала я создаю туннель через публичный ресурс (публичный ip).

ssh <public ip> -p 2022 -l root -L 127.1.1.1:2222:<private ip>:22

После этого я могу создать SSH-соединение следующим образом:

ssh username@127.1.1.1 -p 2222

Можно ли выполнить это с помощью одной команды?

1 ответ1

0

Вы всегда можете просто запустить команды, одну за другой:

ssh root@<public ip> -p 2022 -L 127.1.1.1:2222:<private ip>:22 && 
    ssh username@127.1.1.1 -p 2222

Чтобы избавить себя от ненужного набора текста, используйте псевдонимы bash. Добавьте такую строку в ваш $HOME/.bashrc:

alias ssh_tunnel='ssh <public ip> -p 2022 -l root -L 127.1.1.1:2222:<private ip>:22 && ssh username@127.1.1.1 -p 2222'

Теперь откройте новый терминал, и вы можете запустить туннель и подключиться, запустив

ssh_tunnel

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .