web-dev-qa-db-fra.com

Comment les administrateurs gèrent-ils les comptes d'utilisateurs sur des centaines de serveurs Linux?

En traitant des centaines de serveurs RHEL, comment pouvons-nous maintenir des comptes root locaux et des comptes d'utilisateurs réseau? Existe-t-il une solution de type Active Directory qui les gère à partir d'un emplacement central?

37
Ronaldo Nascimento

Un composant central d'Active Directory est LDAP, qui est disponible sur Linux sous la forme OpenLDAP et 89DS (et quelques autres). De plus, l'autre composant majeur Kerberos est disponible sous la forme MIT Kerberos et Heimdal . Enfin, vous pouvez même connecter vos machines à AD.

36
Sven

Vous pouvez essayer avec marionnette pour gérer l'utilisateur:

Pourquoi utiliser Puppet pour gérer les comptes d'utilisateurs? (et non NIS, LDAP, etc.)

L'un des avantages de la gestion des comptes d'utilisateurs dans Marionnette est le fait qu'elle est décentralisée. Chaque compte d'utilisateur est juste un compte d'utilisateur normal sur le serveur géré. Il n'y a rien de spécial dans les comptes d'utilisateurs créés par Marionnette, à part le fait qu'ils ont été créés par Marionnette et non par un administrateur humain. La bonne chose à ce sujet est que si l'hôte principal meurt, nous ne perdons pas l'authentification. Ce qui signifie que notre serveur puppetmaster (ou serveur NIS/LDAP) n'a pas besoin d'exigences de disponibilité particulières. En cas d'urgence, nous pouvons nous concentrer sur la mise en place de nos serveurs de production et sur la mise en place du maître des marionnettes "au besoin". L'inconvénient est que la marionnette n'est pas nécessairement vraiment conçue pour gérer les comptes d'utilisateurs de connexion "normaux" (par opposition aux comptes système). La plus grande manière que cela se présente est que, bien que vous puissiez définir le mot de passe dans marionnette, la marionnette surveille continuellement les paramètres du système (bon) et si elle remarque que le mot de passe a changé, le réinitialisera. (mauvais) Je ne veux pas surveiller les mots de passe des utilisateurs sur notre réseau, il doit donc y avoir un moyen de définir un mot de passe et de faire en sorte que les marionnettes arrêtent de surveiller ce mot de passe. Heureusement, une fois que vous avez compris l'astuce, c'est vraiment très facile. Mais tout d’abord, éliminons quelques définitions.

http://docs.puppetlabs.com/pe/2.5/console_auth.html

26
Suku

Comme le mentionne SvenW, il existe 389DS et Kerberos. Depuis RHEL 6.2, Red Hat a inclus IPA dans la distribution (et est donc également dans CentOS). Il s'agit d'une suite complète de gestion des identités qui intègre 389DS et Kerberos, avec un contrôle basé sur des stratégies d'authentification et d'autorisation, et éventuellement DNS. Il peut même être configuré pour une synchronisation unidirectionnelle ou bidirectionnelle avec Active Directory.

IPA nécessite à peu près SSSD sur les hôtes RHEL mais il fonctionne sans. J'ai même testé la connexion de Solaris 10 à IPA (fonctionne, mais un peu délicat). IPA est assez simple à configurer pour les hôtes RHEL.

Ceci est basé sur le projet FreeIPA .

4
James O'Gorman

Pour vos comptes d'utilisateurs réseau OpenLDAP comme SvW mentionné.

Vous devriez également consulter les "systèmes de gestion de configuration" pour gérer vos comptes locaux et tout le reste sur vos serveurs. Jetez un œil à CFEngine, Bcfg2, Puppet et Chef. Si vous utilisez AWS, ils ont un truc Chefy avec OpsWorks.

Si vous avez vraiment besoin de gérer plus de 100 serveurs, vous disposez de 10 administrateurs système ou vous utilisez un logiciel de gestion de la configuration.

1
Matías

Cela peut être une réponse évidente, mais "utilisez Active Directory". Vous devez modifier un peu notre schéma AD, pour inclure des champs spécifiques à Unix, mais une fois que vous l'avez fait, vous avez un répertoire unique de tous vos comptes d'utilisateurs qui fonctionne sur plusieurs plates-formes.

Peut-être moins utile si vous êtes une boutique Unix uniquement - mais je n'en ai pas vu beaucoup. Mais AD est en fait un assez bon maillage des éléments clés de LDAP et Kerberos. Je trouve ça un peu ironique en fait.

Mais ce que vous obtiendrez `` gratuitement '', ce sont les comptes multiplateformes et l'intégration Kerberos afin que vous puissiez effectuer des exportations NFSv4 en appliquant des ACL `` reconnues CIFS '' et des montages NFS krb5i/p, avec une authentification utilisateur renforcée.

1
Sobrique

Comme mentionné par @Sven LDAP est le composant principal pour l'authentification.
Nous pouvons même considérer les outils ci-dessous pour faire une gestion centralisée des utilisateurs sous Linux [~ # ~] sssd [~ # ~] , FreeIPA, gestionnaire d'identité par redhat, privilège de confiance Centrify Zero, Jumpcloud etc. Si vous avez plus de 100+ serveurs, veuillez opter pour la solution Redhat (gestionnaire d'identité) & si les serveurs sont inférieurs à 100, nous pouvons choisir FreeIPA.

Nous pouvons même faire une configuration de confiance avec AD en utilisant FreeIPA ( https://www.freeipa.org/page/Main_Page ) ou [~ # ~] idm [~ # ~] avec lequel nous pouvons considérer les utilisateurs présents si AD peut se connecter à vos serveurs.

Comme vous l'avez mentionné, vous n'avez que des serveurs RHEL, vous pouvez continuer avec IDM et pour maintenir le compte root, désactivez la connexion directe pour root et tout utilisateur ne doit pas passer à root. Pour la gestion des mots de passe des utilisateurs root, envisagez le gestionnaire de mots de passe.

0
Santosh Garole