Как объединить переадресацию агента SSH и туннелирование?

Как объединить переадресацию агента SSH и туннелирование?

Я пытаюсь Vagrant-ифицировать проект, чтобы упростить настройку зависимостей для моих пользователей. Одна из зависимостей — это туннель SSH, от порта A на хосте B до порта C, с использованием -Lопции ssh.

Я могу успешно использовать команду туннелирования ssh -L <A>:<B>:<C>на моем хост-компьютере и хотел бы иметь возможность делать это в виртуальной машине Vagrant.

Я уже успешно настроил Vagrant для переадресации агента ssh, чтобы использовать ключи ssh хоста для аутентификации в закрытых репозиториях git. Но здесь я достиг конца своих знаний ssh ​​и Vagrant, когда дело доходит до переадресации туннеля агентом. Возможно ли это вообще?

решение1

Оказалось, что ключи пересылались, но ssh использовал vagrantимя пользователя вместо имени пользователя хоста. Когда я исправил имя пользователя, туннелирование ssh заработало в Vagrant.

решение2

Вы не сообщаете, следует ли создавать туннель от хоста к гостю или наоборот, где он находится Bи почему вы не можете получить к нему прямой доступ...

Если вы хотите создать туннель от некоторых интерфейсов хоста к гостевому, вы можете использовать встроенную функцию VagrantПеренаправление порта. Или просто добавьтечастный сетевой адреск ВМ.

Если вы хотите получить туннель от гостя через хост, используйте ssh -Rвместо ssh -Lfrom the host. Но в большинстве случаев вы можете просто подключиться к месту назначения напрямую из виртуальной машины.

Связанный контент