Forum Linux.debian/ubuntu Probleme LDAP et PAM

Posté par  .
Étiquettes : aucune
0
12
déc.
2011

Bonjour,

J'ai un problème pour utiliser l'option pam_groupdn dans le fichier pam_ldap.conf.
Je veux autoriser la connexion seulement si l'utilisateur est dans le groupe spécifié.

/etc/pam_ldap.conf

host 127.0.0.1
base dc=test,dc=local
ldap_version 3
Group to enforce membership of
pam_groupdn cn=compta,ou=groupes,dc=test,dc=local
Group member attribute
pam_member_attribute memberUid

common-auth :

auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_ldap.so use_first_pass
auth requisite pam_deny.so
auth required pam_permit.so

common-account :

account [success=2 new_authtok_reqd=done default=ignore] pam_unix.so
account [success=1 default=ignore] pam_ldap.so
account requisite pam_deny.so
account required pam_permit.so

common-session :

session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session required pam_unix.so
session optional pam_ldap.so

common-password

password [success=2 default=ignore] pam_unix.so obscure sha512
password [success=1 user_unknown=ignore default=die] pam_ldap.so us$
password requisite pam_deny.so
password required pam_permit.so

Si vous avez une idée je suis preneur. Parfois quand je modifie certains fichier de pam.d j'ai un avertissement comme quoi mon user ne fait pas partie du groupe etc ... mais il fini toujours par se connecter.

Merci pour votre aide.

  • # trace dans les logs

    Posté par  (site web personnel) . Évalué à 1.

    ne serait pas superflu.

    Système - Réseau - Sécurité Open Source

    • [^] # Re: trace dans les logs

      Posté par  . Évalué à -1.

      Aucune à part que l'utilisateur se connecte bien.

      • [^] # Re: trace dans les logs

        Posté par  (site web personnel) . Évalué à 1.

        Si ma mémoire est bonne, il y a une option debug à pam_ldap.

        Système - Réseau - Sécurité Open Source

        • [^] # Re: trace dans les logs

          Posté par  . Évalué à 0.

          ok je regarde ça.

          • [^] # Re: trace dans les logs

            Posté par  . Évalué à 0.

            Voici une partie des log lorsque j'ai activé le debug 5 dans le fichier /etc/pam_ldap.conf

            ldap_parse_result
            ber_scanf fmt ({iAA) ber:
            ber_scanf fmt (}) ber:
            ldap_msgfree
            You must be a memberUid of cn=caciis,ou=groupes,dc=test,dc=local to login.
            ldap_create
            ldap_url_parse_ext(ldap://127.0.0.1)
            ldap_create
            ldap_url_parse_ext(ldap://127.0.0.1)
            ldap_simple_bind
            ldap_sasl_bind
            ldap_send_initial_request
            ldap_new_connection 1 1 0
            ldap_int_open_connection
            ldap_connect_to_host: TCP 127.0.0.1:389
            ldap_new_socket: 4
            ldap_prepare_socket: 4
            ldap_connect_to_host: Trying 127.0.0.1:389
            ldap_pvt_connect: fd: 4 tm: 30 async: 0
            ldap_ndelay_on: 4
            ldap_int_poll: fd: 4 tm: 30
            ldap_is_sock_ready: 4
            ldap_ndelay_off: 4
            ldap_pvt_connect: 0
            ldap_open_defconn: successful
            ldap_send_server_request
            ber_scanf fmt ({it) ber:
            ber_scanf fmt ({i) ber:
            ber_flush2: 14 bytes to sd 4
            ldap_result ld 0x2035170 msgid 1
            wait4msg ld 0x2035170 msgid 1 (timeout 30000000 usec)
            wait4msg continue ld 0x2035170 msgid 1 all 0
            ** ld 0x2035170 Connections:
            * host: 127.0.0.1 port: 389 (default)
            refcnt: 2 status: Connected
            last used: Tue Dec 13 09:47:04 2011

            • [^] # Re: trace dans les logs

              Posté par  . Évalué à 0.

              ldap_parse_result
              ber_scanf fmt ({iAA) ber:
              ber_scanf fmt (}) ber:
              ldap_msgfree
              You must be a memberUid of cn=compta,ou=groupes,dc=test,dc=local to login.
              ldap_create
              ldap_url_parse_ext(ldap://127.0.0.1)
              ldap_create
              ldap_url_parse_ext(ldap://127.0.0.1)
              ldap_simple_bind
              ldap_sasl_bind
              ldap_send_initial_request
              ldap_new_connection 1 1 0
              ldap_int_open_connection
              ldap_connect_to_host: TCP 127.0.0.1:389
              ldap_new_socket: 4
              ldap_prepare_socket: 4
              ldap_connect_to_host: Trying 127.0.0.1:389
              ldap_pvt_connect: fd: 4 tm: 30 async: 0
              ldap_ndelay_on: 4
              ldap_int_poll: fd: 4 tm: 30
              ldap_is_sock_ready: 4
              ldap_ndelay_off: 4
              ldap_pvt_connect: 0
              ldap_open_defconn: successful
              ldap_send_server_request
              ber_scanf fmt ({it) ber:
              ber_scanf fmt ({i) ber:
              ber_flush2: 14 bytes to sd 4
              ldap_result ld 0x2035170 msgid 1
              wait4msg ld 0x2035170 msgid 1 (timeout 30000000 usec)
              wait4msg continue ld 0x2035170 msgid 1 all 0
              ** ld 0x2035170 Connections:
              * host: 127.0.0.1 port: 389 (default)
              refcnt: 2 status: Connected
              last used: Tue Dec 13 09:47:04 2011

  • # sans avoir verifier

    Posté par  . Évalué à 0.

    tu semble faire ton login d'abord sur pam_unix.so puis suis pam_ldap.so

    tes utilisateurs n'ont pas deja un compte linux sur la machine ?
    car si c'est le cas, le pam_ldap ne passera pas outre puisque le pam_unix a dit OK.

    il faut essayer avec des utilisateurs qui n'existent pas du tout sur la machine

    • [^] # Re: sans avoir verifier

      Posté par  . Évalué à -1.

      Non mes utilisateurs n'ont pas de compte sur le machine. J'ai deux utilisateurs dans mon annuaire. Le pam.d/* ci dessus et la configuration faites je suppose par l'installation de libpam-ldap.

      J'ai modifié après plusieurs recherche ceci :

      common-aut :
      auth sufficient pam_ldap.so use_first_pass
      auth required pam_unix.so

      common-account :

      account required pam_ldap.so
      account required pam_unix.so

      Et là j'ai ce message :

      You must be a member uid ....
      su : autorisation refusée
      (ignoré)

      Donc le problème vient de la configuration de pam mais je n'ai pas trouvé la bonne configuration pour qu'il fasse bien le travail que je souhaite lui faire, faire.

  • # ingroup

    Posté par  . Évalué à 1.

    en supposant que le nsswitch est correct

    account requisite pam_succeed_if.so user ingroup compta
    
    
    • [^] # Re: ingroup

      Posté par  . Évalué à -1.

      Non si je rajoute cet argument je ne peux plus me connecter avec mes utilisateurs du LDAP.
      Merci quand même.

  • # Bleh

    Posté par  . Évalué à -2.

    Bon ça ne t'aide pas, mais quand je vois tout ce bazar je me dis
    1) LDAP c'est vraiment mal fichu: "dc=test,dc=local", bôf.

    2) PAM aussi, je comprends que Slackware ne l'installe pas par défaut.

    Bon courage pour résoudre ton problème.

  • # pam access

    Posté par  . Évalué à 1.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.