Задать вопрос
alexey_bille
@alexey_bille
Web developer

Существует ли инструмент для управления серверами ssh?

Проблема:

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

Какие решения вижу:

1. Есть какой то ssh proxy через который подключаются к конечным серверам разработчики, в этом прокси есть gui/webui на котором можно добавлять новые сервера, управлять доступом разработчиков, добавлять ssh ключи/пароли от серверов. Соответственно на клиентской машине настраивается ssh таким образом что подключение доступно только с этой proxy.
64675d3373d21331389588.png

2. Есть какой то сервер (назовем его ssh manager) с webui/gui в котором можно добавить сервер и управлять доступом разработчиков к серверам. SSH manager может подключаться к серверам и добавлять/удалять ssh ключи. Соответственно в webui когда выдали разработчику доступ к серверу, этот ssh manager пошел на сервер и добавил ключ разработчика. Разработчик на прямую будет подключаться к серверу по своему ключу.

Вопрос - существует какой то похожий инструмент для решения моей задачи?

В интернете находил только https://goteleport.com/ - но часть функционала платная и он использует свою консольную утилиту, а не найтивный ssh.
  • Вопрос задан
  • 938 просмотров
Подписаться 8 Средний 2 комментария
Пригласить эксперта
Ответы на вопрос 8
saboteur_kiev
@saboteur_kiev Куратор тега SSH
software engineer
Я бы замутил велосипед на ансибл.
настроить все sshd, чтобы ключи читались только из /etc/ssh/keys/%user/, чтобы никто себе руками ничего не ковырял. И все. Раз в сутки по всем машинам пробежался, обновился и готово
Ответ написан
Комментировать
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Есть directory services для Linux, например FreeIPA https://www.freeipa.org/ - c централизованным управлением и пользователями и серверами.
Вариант проще - это менеджмент с помощью ansible.
Ответ написан
ky0
@ky0 Куратор тега Системное администрирование
Миллиардер, филантроп, патологический лгун
Как верно заметили выше - FreeIPA умеет рулить пользователями и группами. Но кроме того, о чём часто забывают - она же умеет хранить SSH-ключи юзеров и контролировать гранулярные sudo-права.
Ответ написан
Комментировать
Sanes
@Sanes
Ответ написан
Комментировать
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
sssd+AD
ключик прямо в профиле пользователя лежит.
ну и в догонку, как-то сервера прям в интернет топорщить ssh-ем не очень. я б за VPN спрятал. Ушел разраб - отозвали доступ в VPN.
Ответ написан
Комментировать
karabanov
@karabanov
Системный администратор
Ответ написан
Комментировать
YuriyGrinev
@YuriyGrinev
Посмотри в сторону https://guacamole.apache.org
Ответ написан
Комментировать
@GrimAnEye
Webmin
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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