Используйте mosh с удаленным Vagrant box без публичной сети

448
filaton

На работе у меня есть мощная машина, на которой установлен Debian Linux, но, к сожалению, у меня нет прав администратора на этой машине, так что, среди прочего, больно обновлять или устанавливать пакеты. Тем не менее, у меня установлен Vagrant (v.1.6.5, довольно старый…), и я хотел бы использовать его, чтобы упростить работу с этой машиной.

Теперь я могу сделать следующее:

  • если я запускаю ssh jdoe@my-server.net, он регистрирует меня на хосте Debian
  • если я запускаю ssh -p 2222 -o HostKeyAlias='alias' -o CheckHostIP='no' vagrant@my-server.net, он регистрирует меня в окне Vagrant, запущенном на моем хосте Debian, в котором у меня есть более высокие привилегии и я могу установить все, что захочу

Я достиг этого просто используя переадресацию портов в моем Vagrantfile, с:

config.vm.network :forwarded_port, guest: 22, host: 2222, host_ip: "0.0.0.0", id: "ssh", auto_correct: true 

Он работает нормально, за исключением случаев, когда я не физически в офисе, тогда набираю слишком медленно и т. Д. Поэтому я хотел бы использовать mosh вместо SSH, но не могу найти способ сделать это.

Я пытался:

  • mosh --ssh="ssh -p 2222 -o HostKeyAlias='alias' -o CheckHostIP='no'" vagrant@my-server.netкоторый, я полагаю, не может получить сообщения обратно mosh-serverи дает мне сообщение «mosh: ничего не получено от сервера через UDP-порт 60001».
  • переадресация порта с гостя Vagrant на хост Debian, socat UDP4-RECVFROM:60001,fork UDP4-SENDTO:10.205.129.26:60001но, конечно, тогда предыдущая команда mosh сообщит об использовании порта 60001 и выберет порт 60002
  • настройка частной сети для моего Vagrant box: ничего не изменилось

Требования:

  • Я не могу использовать другое имя хоста и IP-адрес, чем IP-адрес "my-server.net", поэтому я не могу использовать функцию публичной сети Vagrant
  • Я не могу запустить любую команду от имени администратора на хосте Debian, поэтому я не могу устанавливать новые пакеты или даже обновлять существующие

Вещи, которые я знаю:

  • Я знаю, что mosh не поддерживает перенаправление портов SSH, но я не уверен, что это применимо в моем случае
  • Я знаю, что ящики Vagrant не поддерживают обратную переадресацию портов с гостя на хост

Мой главный вопрос: «Возможно ли то, что я хочу сделать?» и если да, «Что мне не хватает?». Если вы видите другой способ решить более серьезную проблему (подключиться удаленно к ВМ / контейнеру, работающему на машине, на которой вы не являетесь администратором), я буду рад прочитать ваши предложения.

0

0 ответов на вопрос

Похожие вопросы