Openssh в VM аутентифицируют Театрализованное представление использования на хосте

Обновление: похоже, что проектирование сети было абсолютно неправильным, и подлинный поток должен быть наоборот вместо этого. Таким образом, этот вопрос спорен теперь.


Текущая установка: VM Linux (принимают общие и наиболее обновленные как CentOS 7.1 и Ubuntu 15.04) на хосте Windows 7, с помощью Virtualbox.

TL; вопрос о DR: действительно ли возможно иметь openssh, работающий в VM, чтобы не использовать локальный ssh-агент для ключевого автора, но использовать Peagent на хосте Windows вместо этого? Более сложная установка приемлема.

долгий вопрос: Первоначально существует несколько копий, включает хост и VM — формата Шпаклевки на хосте и openssh формат ключа на VMs через совместно используемую папку, и многие из них не защищены паролем для удобства. Но недавно я чувствую потребность консолидировать их и добавить больше защиты. Ключи для удаленного администрирования и проверяющий исходный код через системы управления версиями, главным образом Мерзавец. Вот требования:

  1. Хост Windows может ssh к удаленному серверу и может использовать мерзавца через ssh.
  2. Linux VM может ssh к удаленному серверу и может использовать мерзавца через ssh.
  3. Ключи хранятся на хосте только, не VMs. (Которые означают, что это не будет ssh передающей установкой агента),

Укажите 1 (позволяющий хост Windows использовать театрализованное представление для автора), относительно тривиально; установка мерзавца по существу до установки корректного $GIT_SSH переменная среды. Не только Шпаклевка, даже MinGW openssh может соединиться с театрализованным представлением путем хранения всех ключей в менеджере паролей (использующий KeePass 2.x) и экспортирующий сокет, подходящий для использования как $SSH_AUTH_SOCK использование плагина KeeAgent. См. это сообщение ServerFault для другого подхода.

Но до сих пор нет никакой удачи, получающей доступ к театрализованному представлению с помощью Linux VM. Я попробовал следующий подход, но перестал работать:

  • Сервер SSH установлен на хосте Windows как промежуточный переход (я пробую Mobassh, но выбор не должен иметь значения — продолжает читать).
  • Затем попытайтесь выполниться удаленный plink.exe из VM. Это подобно наивному подходу ssh host1 ssh host2 который в порядке достаточно для моей цели.
  • Однако plink.exe не удалось получить доступ к любому ключу, когда выполнено в сервере Windows SSH. Выполнение plink.exe непосредственно на cmd работы. Большая часть доступного сервера SSH, работающего на Windows, основана на Cygwin. Выглядит весьма схожим с этим putty/cygwin комбинированным отчетом об ошибках.

Примечание: Возможно подобный вопрос здесь, но я не использую Бродягу.

1
задан 16 June 2015 в 13:56
1 ответ

Похоже, первоначальный дизайн был полностью неправильным. Было бы намного проще включить sshd-сервер на каждой виртуальной машине с помощью

AllowAgentForwarding yes

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

1
ответ дан 4 December 2019 в 00:05

Теги

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