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

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

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

2 ответа2

1

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

0

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

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

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

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