Мой вопрос заключается в том, как превратить мои существующие два шага в один шаг.
У меня есть рабочий туннель SSH, установленный между двумя компьютерами с использованием сервера-посредника, например:
Kubuntu_laptop--->nat_fw--->Debian_Server<--nat_fw<--Kubuntu_desktop
В настоящее время я делаю SSH из Kubuntu_laptop в Debian_Server, а затем из Debian_Server в Kubuntu_desktop. Я хотел бы сделать эту одну команду SSH, выданную на моем Kubuntu_laptop в bash, в результате чего я буду подключен к Kubuntu_desktop (shell / bash).
Команды, которые я использую сейчас, следующие. Шаг 1:
me@kubuntu_laptop:~$ ssh -i ~/.ssh/id_rsa admin@debian_server
Шаг 2:
admin@debian_server:$ ssh -p 1234 -i /home/admin/.ssh/id_rsa admin@localhost
Затем я подключаюсь к kubuntu_desktop через SSH (из kubuntu_laptop).
Ключи RSA требуются для всех соединений SSH. Вход с паролем отключен. И обратите внимание, что учетные записи пользователей компьютера на двух компьютерах различны.
Что касается связи для этого этапа:
Debian_Server<--nat_fw<--Kubuntu_desktop
Вот как это установлено:
autossh -M 5234 -N -f -R 1234:localhost:22 user@mydebian.com -p 22
Обратите внимание, что Kubuntu_desktop подключается к посреднику как user@mydebian.com (не admin @ debian_server). Но когда я подключаюсь к Kubuntu_desktop, я подключаюсь как администратор.
Я не могу изменить существующий порт мониторинга (5234) или номер удаленного (- R) порта (1234 в этом примере). Я не могу изменить безопасность SSH, чтобы разрешить вход в систему с паролем. Я не могу открыть какие-либо новые порты брандмауэра. Я не могу изменить учетные записи пользователей (кроме как на ноутбуке).
Ответы:
Убедитесь, что netcat установлен на сервере Debian и используется
ProxyCommand
в локальной конфигурации SSH (~/.ssh/config
).источник
Благодаря @Ignacio Vazquez-Abrams вот все шаги:
Я отредактировал конфигурацию следующим образом:
Содержание:
Затем просто подключите:
Подключение к kubuntu_desktop через SSH за 1 шаг! Отлично
Обновить:
Это делает его более гибким:
Новое содержание:
Тогда просто подключитесь к маме:
И подключиться к папе:
Конечно, маме и папе нужно настроить шаг 0 (из моего первоначального вопроса), где у каждого есть свой собственный порт -R. Пример для папы:
Шаг 0 (для папы):
Необязательный:
источник
ProxyCommand ssh debian_server_fqdn -W localhost:%p
нет необходимости иметь netcat на сервере Debian.