Connexion sur une active directory

Bonjour à tous,

Voila je suis en train de tester sur machine virtuel, l’authentification sur une active directory.
Pour information voici se que j’ai installer

  • Serveur AD: Windows 2012 + AD + DNS
  • station cliente: debian 8

En suivant un tuto trouvé sur le net, j’ai un gros problème d’authentification sur l’ad. En effet losque je je fait un kinit j’ai le message suivant

kinit Administrateur@al-dom.local
Password for Administrateur@al-dom.local:
kinit: KDC reply did not match expectations while getting initial credentials

Dans un premier temps je me suis dit qu’il ne connait pas le mot de passe et donc j’ai tester avec un mauvais MDP

kinit Administrateur@al-dom.local
Password for Administrateur@al-dom.local:
kinit: Preauthentication failed while getting initial credentials

Alors je suis aller voir si le serveur windows vois bien mon authentification

Un ticket d’authentification Kerberos (TGT) a été demandé.

Informations sur le compte :
	Nom du compte :		Administrateur
	Nom du domaine Kerberos fourni :	al-dom.local
	ID de l’utilisateur :			AL-DOM\Administrateur

Informations sur le service :
	Nom du service :		krbtgt
	ID du service :		AL-DOM\krbtgt

Informations sur le réseau :
	Adresse du client :		192.168.83.129
	Port client :		46822

Informations supplémentaires :
	Options du ticket :		0x10
	Code de résultat :		0x0
	Type de chiffrement du ticket :	0x12
	Type de pré-authentification :	2

Informations sur le certificat :
	Nom de l’émetteur du certificat :		
	Numéro de série du certificat :	
	 Empreinte numérique du certificat :		

Les informations sur le certificat sont fournies uniquement si un certificat a été utilisé pour la pré-authentification.

Les types de pré-authentification, les options de ticket, les types de chiffrement et les codes de résultats sont définis dans la RFC 4120

Et donc j’ai regarder mon fichier de configuration krb5.conf

[logging]
        default = FILE:/var/log/krb5lib.log
        kdc = CONSOLE
        kdc = SYSLOG:INFO:DEAMON
        admin_server = FILE:/var/log/admin_kdc.log
        #admin_server = DEVICE=/dev/tty04

[libdefault]
        default_realm = AL-DOM.LOCAL
        dns_lookup_realm = true
        dsn_lookup_kdc = true
        ticket_lifetime = 24h
        renew_lifetime = 7d
        fowardable = true
        default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc
        default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc


[realms]
        al-dom.local = {
        kdc = SRV-W2012.al-dom.local:88
        admin_server = SRV-W2012.al-dom.local:749
        default_domain = al-dom
}

[domain_realm]
        .al-dom.local = al-dom.local
        al-dom.local = al-dom.local

mais bizarrement lorsque je regarde les informations du serveur Windows avec les 2 commande net ads info et net ads lookup voici le résultat

net ads info
LDAP server: 192.168.83.128
LDAP server name: SRV-W2012.al-dom.local
Realm: AL-DOM.LOCAL
Bind Path: dc=AL-DOM,dc=LOCAL
LDAP port: 389
Server time: sam., 15 avril 2017 05:57:04 CEST
KDC server: 192.168.83.128
Server time offset: 0

net ads lookup
Information for Domain Controller: 192.168.83.128

Response Type: LOGON_SAM_LOGON_RESPONSE_EX
GUID: 28e5a8f3-6eb7-4203-8248-db88b9f0986e
Flags:
        Is a PDC:                                   yes
        Is a GC of the forest:                      yes
        Is an LDAP server:                          yes
        Supports DS:                                yes
        Is running a KDC:                           yes
        Is running time services:                   yes
        Is the closest DC:                          yes
        Is writable:                                yes
        Has a hardware clock:                       yes
        Is a non-domain NC serviced by LDAP server: no
        Is NT6 DC that has some secrets:            no
        Is NT6 DC that has all secrets:             yes
Forest:                 al-dom.local
Domain:                 al-dom.local
Domain Controller:      SRV-W2012.al-dom.local
Pre-Win2k Domain:       AL-DOM
Pre-Win2k Hostname:     SRV-W2012
Server Site Name :              Default-First-Site-Name
Client Site Name :              Default-First-Site-Name
NT Version: 5
LMNT Token: ffff
LM20 Token: ffff

Si quelqu’un aurais une idée pour résoudre le problème je suis preneur.

Bonjour,

J’ai eu le même souci tout à l’heure il faut mettre le domaine tout en majuscule :

kinit Administrateur@AL-DOM.LOCAL

Effectivement cela fonctionne beaucoup mieux.

Merci pour l’info.

Maintenant je souhaiterais savoir, une fois que tout fonctionne y compris la partie de samba, peut-on faire une ouverture de session avec un compte inscrit sur l’AD?
Si oui, dois-je mettre a jours le shadow ou pas?

Oui c’est possible de se connecter sur Linux avec un compte AD, regarde du coté de winbind.

Bonjour

D’ailleurs, je me pose la question

On a winbin, kerberos, et enfin sssd.
IL faut prendre quoi dans l’histoire car sur le net rien d’explicite.

Bonjour Darkar,

Aurais tu un exemple pour l’authentification avec winbind.
Pour information voici mon smb.conf

    [global]
            security = ADS
            realm = al-dom.local
            password server = srv-w2012.al-dom.local
            workgroup = AL-DOM
            winbind separator = /
            idmap uid = 10000-20000
            idmap gid = 10000-20000
            winbind enum users = yes
            winbind enum groups = yes
            template homedir = /home/%D/%U
            template shell = /bin/bash
            client use spnego = yes
            winbind use default domain = no
            domain master = no
            local master = no
            preferred master = no
            os level = 0
            winbind offline logon = yes

    [SAMBA]
            path=/SAMBA
            browseable=yes
            writeable=yes
            valid users=AL-DOM/admin
            admin users=AL-DOM/admin

Bonjour,

Auriez vous un exemple de votre fichier de conf pour winbind car j’ai beau essayé toutes le possibilité mais je n’y arrive pas.

Bonjour

juste à titre d’info, j’utilisai ce type de configuration mais c’etait vraiment prise de tête avec toutes les configs à réaliser.

Depuis 3 ans j’utilise openpbis qui fait la mise sur le domaine et gère l’ouverture de session et tout roule sans soucis.

A cela j’ajoute ensuite pam_mount pour le montage des disques réseaux dans les session des user en fonction de leurs droits et tout roule.

Merci Minus, je vais essayé cette solution ainsi que le script que tu utilise sur cette page

Je vous tiens au courant et j’essaierais de faire un petit tuto simple pour les suivants

Une fois openpbis installé il faut finir l’installation par cette modification:

editer  /etc/pam.d/common-session

rechercher le ligne:
session sufficient pam_lsass.so

Remplacer par
session [success=ok default=ignore] pam_lsass.so

Bonjour

Je j’ai bien suivie la procédure en question mais lorsque je fait une intégration dans le domaine il met mette erreur

Error: ERROR_GEN_FAILLURE [code 0x0000001f]

Par contre il me met bien mon debian dans le domaine

quelqu’un peu m’aider SVP?

oui enleve tout ce qui est en rapport avec avahi:

apt-get remove avahi-daemon

voir même

apt-get purge --auto-remove avahi-daemon

effectivement cela fonctionne très bien par contre les ouverture de sessions en mode graphique coté client cela ne fonctionne pas, une idée?

tu as quoi comme erreur dans le fichier /var/log/auth.log?

as tu bien modifié le fichier /etc/pam.d/common-session comme je t’ai dis de le faire?

Pour les erreurs d’ouverture de session j’ai aussi rencontré le problème mais sur Ubuntu.

Pour le résoudre en console j’ai tapé

pam-auth-update --force

et dans la fenêtre qui apparait “likewise” n’est pas selectionné (c’est l’ancien nom de OpenPbis). Je l’ai donc ajouté et validé. La session s’est alors ouverte sans soucis.

donc à essayer.

Alors, oui j’ai bien modifier le fichier /etc/pam.d/common-session

Je redémarrant le tout, y compte le DC, j’ai réussi a me connecter avec un compte nommé admin (appartenant au groupe des administrateurs). Ensuite j’ai créer un compte toto (simplement utilisateur) et j’ai là plus rien, enfin si il accepte mon mot de passe puis page noir pendant quelques minutes et ensuite il reviens sur la page des logins. Pas grave, je me connecte en ssh sur le serveur via le DC et je tape ta commande
pam-auth-update --force
je décoche likewise dans la choix que l’on me propose mais la il ne reconnait meme plus les mot de passe de l’AD
je fait l’opération inverse et je remet “likewise” puis je redémarre mon client et là je reviens sur la mire de connexion et voici se qu’il me met dans le fichier log

May 11 08:21:26 client-debian polkitd(authority=local): Unregistered Authentication Agent for unix-session:c1 (system bus name :1.24, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale fr_FR.UTF-8) (disconnected from bus)
May 11 08:21:53 client-debian gdm-password]: pam_unix(gdm-password:session): session closed for user AL-DOM\toto
May 11 08:21:54 client-debian gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session opened for user Debian-gdm by (uid=0)
May 11 08:21:54 client-debian systemd-logind[474]: New session c2 of user Debian-gdm.
May 11 08:21:55 client-debian polkitd(authority=local): Registered Authentication Agent for unix-session:c2 (system bus name :1.39 [gnome-shell --mode=gdm], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale fr_FR.UTF-8)

Faut-il que je rajouter quelque part l’autorisation que les compte puisse se connecter sur le client Debian? et pourquoi il garde les comptes déjà connecter sur le client en affichage?

sur Ubuntu dans mon script d’installation de OpenPbis j’ai ajouté cette ligne

sh -c 'printf "[SeatDefaults]\nuser-session=ubuntu\ngreeter-session=unity-greeter\ngreeter-show-manual-login=true\n" >/usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf

a voir sur Debian si il n’y a pas un équivalent à cette commande pour gdm sous debian

désolé mais je n’utilise debian que en ligne de commande, jamais en graphique.

Sinon j’ai trouvé cela mais pour une vieille version de openpbis:

modify /etc/pam.d/common-session

add:
session optional pam_gnome_keyring.so auto_start_if=gdm

run as root:
/opt/pbis/bin/domainjoin-cli configure --enable pam

restart gdm