tuto:ipasserelle:authentification:fedora_sssd_on_sme

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tuto:ipasserelle:authentification:fedora_sssd_on_sme [22/03/2011 11:59]
dani [Configurer SSSD]
tuto:ipasserelle:authentification:fedora_sssd_on_sme [28/09/2015 11:34] (Version actuelle)
dani
Ligne 8: Ligne 8:
  
 <code bash> <code bash>
-yum install oddjob-mkhomedir+yum install oddjob-mkhomedir sssd policycoreutils-python
 </code> </code>
  
Ligne 19: Ligne 19:
 semanage fcontext -a -e /home /home/e-smith/files/users semanage fcontext -a -e /home /home/e-smith/files/users
 restorecon -R /home/e-smith/files/users restorecon -R /home/e-smith/files/users
 +restorecon -R /var/lib/sss
 </code> </code>
  
-Il faut ensuite configurer le module oddjob_mkhomedir (qui s'occupera de créer les répertoires personnels au premier login) pour qu'il utilise un umask raisonnable. Pour cela, il faut éditer le fichier **/etc/oddjobd.conf.d/oddjobd-mkhomedir.conf** et modifier les directives -u en les faisant passer de 0002 à 077:+===== Activer et démarrer le démon oddjobd ===== 
 +Ce démon se chargera de créer les répertoires personnels durant la première connexion:
  
-<code xml+<code bash
- +systemctl start oddjobd.service 
-<?xml version="1.0"?> +systemctl enable oddjobd.service
- +
-<!-- This configuration file snippet controls the oddjob daemon.  It +
-     provides access to mkhomedir functionality via a service named +
-     "com.redhat.oddjob_mkhomedir", which exposes a single object +
-     ("/"). +
-     The object allows the root user to call any of the standard D-Bus +
-     introspection interface's methods (these are implemented by +
-     oddjobd itself), and also defines an interface named +
-     "com.redhat.oddjob_mkhomedir", which provides two methods.  --> +
- +
-<oddjobconfig> +
- +
-  <service name="com.redhat.oddjob_mkhomedir"> +
- +
-    <object name="/"> +
- +
-      <interface name="org.freedesktop.DBus.Introspectable"> +
- +
-        <allow min_uid="0" max_uid="0"/> +
-        <!-- <method name="Introspect"/> --> +
- +
-      </interface> +
- +
-      <interface name="com.redhat.oddjob_mkhomedir"> +
- +
-        <method name="mkmyhomedir"> +
-          <helper exec="/usr/libexec/oddjob/mkhomedir -u 077" +
-                  arguments="0" +
-                  prepend_user_name="yes"/> +
-          <!-- no acl entries -> not allowed for anyone --> +
-        </method> +
- +
-        <method name="mkhomedirfor"> +
-          <helper exec="/usr/libexec/oddjob/mkhomedir -u 077" +
-                  arguments="1"/> +
-          <allow user="root"/> +
-        </method> +
- +
-      </interface> +
- +
-    </object> +
- +
-  </service> +
- +
-</oddjobconfig>+
 </code> </code>
  
 ===== Configurer SSSD ===== ===== Configurer SSSD =====
  
-La configuration de SSSD se trouve dans le fichier **/etc/ssshd/sssd.conf**. Dans ce fichier, il faut principalement configurer le domaine SSSD qui sera utilisé: +La configuration de SSSD se trouve dans le fichier **/etc/sssd/sssd.conf**. Ce fichier n'existe pas par défaut, il faut le créer, et impérativement mettre les permissions 600 dessus (sans quoi le démon sssd refusera de démarrer).  
-<code> +<code bash
-domain = sme +cat <<'_EOF' /etc/sssd/sssd.conf 
-</code>+[sssd] 
 +config_file_version = 2 
 +services = nss, pam 
 +domains = LDAP
  
-Puis rajouter une section pour notre domaine:+[nss] 
 + 
 +[pam]
  
-<code> 
 [domain/LDAP] [domain/LDAP]
 id_provider = ldap id_provider = ldap
 auth_provider = ldap auth_provider = ldap
 ldap_schema = rfc2307 ldap_schema = rfc2307
-ldap_uri = ldap://sme.domain.org +ldap_uri = ldap://sme.domain.tld 
-ldap_default_bind_dn = uid=auth,ou=Users,dc=domain,dc=org+ldap_default_bind_dn = uid=auth,ou=Users,dc=domain,dc=tld
 ldap_default_authtok = something_very_secret ldap_default_authtok = something_very_secret
 ldap_default_authtok_type = password ldap_default_authtok_type = password
-ldap_search_base = dc=domain,dc=org +ldap_search_base = dc=domain,dc=tld 
-ldap_user_search_base = ou=Users,dc=domain,dc=org +ldap_user_search_base = ou=Users,dc=domain,dc=tld 
-ldap_group_search_base = ou=Groups,dc=domain,dc=org+ldap_group_search_base = ou=Groups,dc=domain,dc=tld
 ldap_user_object_class = inetOrgPerson ldap_user_object_class = inetOrgPerson
 ldap_user_gecos = cn ldap_user_gecos = cn
Ligne 100: Ligne 61:
 ldap_id_use_start_tls = true ldap_id_use_start_tls = true
 # à dé-commenter si votre serveur SME est une iPasserelle # à dé-commenter si votre serveur SME est une iPasserelle
-# ldap_user_shell = desktopLoginShell+#ldap_user_shell = desktopLoginShell
 cache_credentials = true cache_credentials = true
 enumerate = true enumerate = true
 +# Il est possible de limiter l'accès via un filtre LDAP en
 +# dé-commentant ces deux lignes. Dans cet exemple, seuls les
 +# membres du groupe netusers seront valides sur cet hôte
 +# posixMemberOf est un attribut disponible uniquement sur une iPasserelle
 +#access_provider = ldap
 +#ldap_access_filter = (|(posixMemberOf=admins)(uid=backup))
 +_EOF
 +chmod 600 /etc/sssd/sssd.conf
 </code> </code>
 +
 +Puis rajouter une section pour notre domaine:
  
 Dans cet exemple: Dans cet exemple:
-  * sme.domain.org est le nom DNS de votre SME +  * sme.domain.tld est le nom DNS de votre SME 
-  * auth est un compte valide sur votre SME+  * auth est un compte utilisateur sur votre SME (ne doit pas disposer de privilèges spéciaux, juste un utilisateur avec un mot de passe)
   * domain.org est votre domaine principal sur SME   * domain.org est votre domaine principal sur SME
   * /etc/pki/tls/certs/ca.pem contient la CA qui a signé le certificat de votre SME   * /etc/pki/tls/certs/ca.pem contient la CA qui a signé le certificat de votre SME
-  * la ligne ldap_user_shell peut être dé-commenté si votre serveur est une iPasserelle. L'attribut ldap desktopLoginShell permet de spécifier un shell pour le serveur iPasserelle lui-même (loginShell) et un shell différent pour les stations. Si cette ligne est active, le système Fedora utilisera la valeur stockée dans desktopLoginShell au lieu de loginShell. La valeur de ces attributs peut être modifié dans le panel "Informations Utilisateurs" de votre iPasserelle+  * la ligne ldap_user_shell peut être dé-commentée si votre serveur est une iPasserelle. L'attribut ldap desktopLoginShell permet de spécifier un shell pour le serveur iPasserelle lui-même (loginShell) et un shell différent pour les stations. Si cette ligne est active, le système Fedora utilisera la valeur stockée dans desktopLoginShell au lieu de loginShell. La valeur de ces attributs peut être modifiée dans le panel "Informations Utilisateurs" de votre iPasserelle 
 + 
 +===== Démarrer et activer le démon sssd ===== 
 +Il faut maintenant configurer ce démon pour se lancer au démarrage: 
 + 
 +<code bash> 
 +systemctl start sssd.service 
 +systemctl enable sssd.service 
 +</code> 
 + 
 +<note tip>Il est possible de débuguer le fonctionnement en lançant sssd à la main: 
 +<code bash> 
 +systemctl stop sssd.service 
 +sssd -i -d5 
 +</code> 
 +</note> 
 + 
 +Il faut également vérifier que sss est bien déclaré comme source dans le fichier **/etc/nsswitch.conf** (c'est normalement fait automatiquement): 
 + 
 +<code> 
 +[...] 
 +passwd:     files sss 
 +shadow:     files sss 
 +group:      files sss 
 +[...] 
 +</code>
  
 ===== Configurer le tout ===== ===== Configurer le tout =====
-Il ne reste plus qu'à configurer le système poru utilsier SSSD. Cette configuration se fait assez simplement avec l'outil authconfig:+Il ne reste plus qu'à configurer le système pour utiliser SSsssdSD. Cette configuration se fait assez simplement avec l'outil authconfig:
  
 <code> <code>
Ligne 119: Ligne 115:
 </code> </code>
  
-Et voilà, enjoy :-D 
  
  • tuto/ipasserelle/authentification/fedora_sssd_on_sme.1300791582.txt.gz
  • Dernière modification: 22/03/2011 11:59
  • de dani