Открыть терминал для локально перенаправленного порта
Я использую для доступа к удаленному серверу через переадресацию локального порта. Однако это первый раз, когда я использую
ssh -N -i ~/.ssh/id_rsa -L local_port:destination_server_ip:remote_port remote_username@ssh_server_hostname
который затем запрашивает пароль, который успешно аутентифицирует меня.
Это может быть очевидный вопрос, но как открыть сеанс терминала на удаленном сервере (destination_server_ip)?
Я видел подобные руководства , в которых объясняется переадресация локальных портов, но, похоже, там не говорится, как открыть терминал на удаленном сервере.
1 ответ
Ваша команда, показанная в вопросе, не предназначена для простого открытия оболочки в удаленной системе . Это используется для туннелирования доступа к приложению через зашифрованный туннель, например, доступа веб-браузера к удаленному серверу интрасети или для доступа вашего SQL-клиента к SQL-серверу.
Эти приложения достигнут удаленного сервера, обратившись кlocalhost:local_port
вместо недостижимого удаленного адреса.
Если вы просто хотите открыть терминальную оболочку в удаленной системе, ваша команда может быть проще:
ssh -i ~/.ssh/id_rsa remote_username@ssh_server_hostname
введите пароль (ключаid_rsa
)... и у вас есть оболочка.
Поскольку вы не знаете пароль удаленного_пользователя, вам необходимо использовать аутентификацию по ключу, поскольку ключ у вас есть. Опция-i ~/.ssh/id_rsa
дает ключ.
Чтобы упростить ежедневную обработку, вы можете настроить доступ к этому хосту в файле:
# Your Project Server:
Host REMOTE_SERVER
Port REMOTE_PORT
User REMOTE_USERNAME
IdentityFile ~/.ssh/id_rsa
AddKeysToAgent yes
Аннотации к файлу конфигурации:
- Ключевая линия – это
Host ...
. - Все записи, следующие за этой строкой, назначаются определенному там серверу до тех пор, пока следующая строка не определит следующий сервер (или файл не закончится).
- Глобальные настройки должны быть записаны перед первыми.
host
-линия
ЛинияAddKeysToAgent yes
позволяет ssh-агенту сохранить пароль ключа, чтобы в следующий раз вам не пришлось вводить пароль повторно.
После настройки~/.ssh/config
, ваша команда открытия удаленной оболочки становится короче:
ssh REMOTE_SERVER
Это тот ответ, которого вы ожидали?
Что-нибудь пропало?