
Мой локальный хост-компьютер — Ubuntu Desktop 16.
Я использую libvirt KVM и Vagrant для создания виртуальных машин.
У меня есть главная машина, которая также рассматривается как веб-сервер (sudo apt-get install apache2).
Я хочу, чтобы несколько пользователей могли получить доступ к веб-странице (введя IP-адрес главного сервера в своем браузере) и загрузить открытый ключ для аутентификации своего доступа к главному серверу.
Однако я моделирую этот сценарий на своем локальном хосте, то есть открываю браузер на своем локальном хосте, открываю веб-страницу главного сервера и нажимаю кнопку, которая загружает открытый ключ для доступа к главному серверу.
Для каждого пользователя должны быть сгенерированы разные публичные ключи. Также я хочу, чтобы публичный ключ или сессия были действительны в течение определенного времени, пока пользователь не закончит свою работу.
Так как же мне этого добиться? Есть ли лучшее решение для моего сценария, учитывая локальную среду, с которой я работаю? Должен ли я генерировать несколько закрытых/открытых ключей или только один закрытый ключ и несколько открытых ключей? Как можно реализовать несколько сеансов доступа на одном главном сервере?
Пожалуйста, помогите мне. Я запутался, и я новичок в Linux, поэтому если кто-то может дать мне точные команды, это будет очень полезно.
Спасибо.
решение1
Публичный-личный ключи — это пары, вы не можете сгенерировать несколько публичных ключей для одного личного ключа. Поэтому вам придется сгенерировать одну пару для каждого пользователя.
Что касается срока годности, то на этот вопрос был дан ответ.здесь. Решение использует ssh-agent, но вы также можете создать задание cron, которое удаляет ключи с сервера каждые X минут.