1 votes

Linux SSSD avec deux domaines AD

J'ai joint ma boîte Centos à un domaine Windows Active Directory avec

realm join --user=DomUser dom2.local

Sans aucun problème. Le domaine a une relation de confiance à sens unique avec Dom1. Nos utilisateurs Windows peuvent :

  • Se connecter avec Dom1/User à Dom1/Host
  • Connexion avec Dom1/Utilisateur à Dom2/Hôte
  • Se connecter avec Dom2/User à Dom2/Host

Sur nos boîtes Linux (dans Dom2), seuls les utilisateurs de Dom2/ peuvent se connecter. J'ai trouvé des preuves en ligne, que sssd peut être configuré avec deux domaines, donc j'ai ajouté un bloc dans la configuration de sssd :

# cat /etc/sssd/sssd.conf 
[sssd]
domains = dom1.local, dom2.local
config_file_version = 2
services = nss, pam

[domain/dom1.local]
ad_domain = dom1.local
krb5_realm = DOM1.LOCAL
realmd_tags = manages-system joined-with-samba 
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
access_provider = ad
enumerate = True

[domain/dom2.local]
ad_domain = dom2.local
krb5_realm = DOM2.LOCAL
realmd_tags = manages-system joined-with-samba 
#cache_credentials = True
cache_credentials = False
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
access_provider = ad
enumerate = True

Maintenant, si j'essaie de me connecter avec un utilisateur Dom2, j'obtiens ce qui suit :

pam_sss(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=host.dom1.local user=user@dom2.local
pam_sss(sshd:auth): received for user user@dom2.local: 6 (Permission denied)
Failed password for user@dom2.local from 10.10.0.10 port 34442 ssh2

Quelqu'un a-t-il réussi à configurer deux domaines AD avec sssd ? Ou une idée sur la manière de le faire ?

Edit1 :

Avec getent passwd je peux voir tous les utilisateurs des deux domaines, et des deux :

id user1@dom1.local
id user2@dom2.local

fonctionnent également.

1voto

uus Points 151

Il s'agit d'un vieux sujet, mais je pense qu'il sera utile à certains d'entre nous.

Si vous voulez utiliser sssd avec plus d'un domaine, vous devez faire ceci :

Desde https://access.redhat.com/solutions/4035171 :

Après la commande realm join, ajoutez un deuxième domaine d'une forêt différente à la section [domain_realm] de /etc/krb5.conf :

.dom1.local = DOM1.LOCAL
dom1.local = DOM1.LOCAL

Et ensuite joindre le domaine dom1.local :

adcli join --host-keytab=/etc/krb5.keytab.dom1.local dom1.local

Modifiez sssd.conf comme suit :

[sssd]
domains = dom2.local,dom1.local
...
[domain/testing.com]
ad_domain = dom1.local
krb5_realm = DOM1.LOCAL
realmd_tags = manages-system joined-with-samba 
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u@%d
access_provider = ad
timeout = 3600
krb5_keytab = /etc/krb5.keytab.dom1.local
ldap_krb5_keytab = /etc/krb5.keytab.dom1.local

et redémarrer sssd : systemctl restart sssd

0voto

jhrozek Points 1280

Vous devez vraiment activer les logs sssd et regarder là, voir https://docs.pagure.org/SSSD.sssd/users/troubleshooting.html

En général, PAM renvoie l'erreur 6 pendant l'authentification lorsque sssd passe en mode hors ligne parce que l'un des serveurs est inaccessible.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X