Можно ли настроить SSH-сервер Linux (и Solaris) для аутентификации пользователей таким образом:
т.е. пользователь john является членом группы Project1_Developers в Active Directory.
у нас есть что-то на сервере A (под управлением Linux, сервер имеет доступ к AD через, например, LDAP) в конфигурации аутентификации LDAP (или другого модуля) SSH-сервера, например root = Project1_Developers, Company_NIX_Admins.
когда Джон подключается к серверу A, используя свое имя пользователя «john» и пароль домена, сервер проверяет группу пользователя в домене и, если группа - «Project1_Developers» или «Company_NIX_Admins», делает его локально как root с привилегиями root.
Идея также состоит в том, чтобы на сервере были только «root» и системные пользователи, без добавления пользователя «john» ко всем серверам, на которых Джон может войти в систему.
Любая помощь или идея, как сделать выше или что-то подобное выше? Предпочтительно использовать AD, но возможно и другое подобное решение.
p.s. пожалуйста, не открывайте обсуждения, безопасно ли входить через ssh как root или нет, спасибо :)
По сути, вы имеете в виду аутентификацию Linux PAM через привязку PAM-LDAP с сервером Active Directory. В этом случае вы должны настроить Linux-сервер для аутентификации с помощью AD через PAM (централизованные библиотеки «контроллера аутентификации»).
Таким образом, Джон войдет в ящик со своим собственным идентификатором пользователя и паролем, указанными в AD.
Кроме того, вы можете посмотреть сетевые группы или Kerberos, чтобы определить, разрешено ли Джону подключаться к этому конкретному ящику.
Наконец, поскольку вы конкретно упомянули SSH, вам также может быть интересно посмотреть патчи LPK для LDAP, которые позволяют хранить сертификаты аутентификации Джона для SSH в LDAP.
Вам не нужно (вручную) добавлять john на все серверы. Настройте NSS, PAM и sudo для использования LDAP.