web-dev-qa-db-fra.com

Authentification Active Directory Samba / Winbind rompue après la mise à niveau vers 14.04

J'étais sur le bureau Ubuntu 12.04 et si celui-ci avait été intégré au domaine à l'aide de samba/winbind/krb5 - fonctionnait très bien sans problème, je pouvais me connecter à mon compte en utilisant mon compte Active Directory. Je suis passé à 14h40 et il semble avoir cassé. Il semble que 14.04 soit passé à Samba4 et je ne suis pas sûr que ce soit le problème ou non. J'ai apporté quelques modifications à mon fichier smb.conf qui semblent être des modifications de Samba4 - et cela me permet de rejoindre le domaine à l'aide de Net Ads Join -U nom_utilisateur - fonctionne correctement ... mon ordinateur est connecté au domaine - et moi peut obtenir un ticket en utilisant kerberos et voir qu'il est valide. Toutefois, lorsque je me déconnecte de mon compte local et que je tente de me reconnecter à l'aide de mon compte de domaine, le mot de passe invalide est toujours indiqué. des idées? après avoir exécuté testparm sur mon fichier smb.conf, il m'a dit que idmap uid et idmap gid ne sont plus utilisés ... et qu'il ne fallait pas non plus associer "security = ads" à "server server". Je me demande si c'est le problème.

edit: peut-être quelque chose à voir avec mes fichiers pam.d - je viens de faire une nouvelle installation du 14.04 et je ne parviens pas à me connecter .... il ne me demande même pas mon mot de passe ... revenir aux fichiers pam par défaut - voici ce que j'ai

/etc/pam.d/common-account:

    account sufficient pam_winbind.so
    account required pam_unix.so

/etc/pam.d/common-auth:

    auth sufficient pam_winbind.so
    auth required pam_unix.so nullok_secure use_first_pass

/etc/pam.d/common-password:

    password required pam_unix.so nullok obscure min=4 max=50 md5

/etc/pam.d/common-session:

    session required pam_mkhomedir.so umask=0022 skel=/etc/skel

voici mon test /etc/samba/smb.conf:

    [global]

    workgroup = MYDOMAIN
    security = ADS
    realm = MYDOMAIN.COM
    netbios name = trusty

    idmap config *:backend = tdb
    idmap config *:range = 70001-80000
    idmap config MYDOMAIN:backend = ad
    idmap config MYDOMAIN:schema_mode = rfc2307
    idmap config MYDOMAIN:range = 500-40000

    winbind nss info = rfc2307
    [test]
    path = /srv/samba/test
    read only = no

et voici mon /etc/krb5.conf

    [libdefaults]
    default_realm = MYDOMAIN.COM
    ticket_lifetime = 24000
    allow_weak_crypto = yes
    [realms]
    MYDOMAIN.COM = {
            kdc = my.domain.com
            admin_server = my.domain.com
            default_domain = MYDOMAIN.COM
    }


    [domain_realm]
    .mydomain.com = MYDOMAIN.COM
    mydomain.com = MYDOMAIN.COM
    [login]
    krb4_convert = true
    krb4_get_tickets = false

/etc/nsswitch.conf

    passwd:         compat winbind
    group:          compat winbind
    shadow:         compat winbind

    hosts:          files mdns4_minimal [NOTFOUND=return] dns wins
    networks:       files

    protocols:      db files
    services:       db files
    ethers:         db files
    rpc:            db files

    netgroup:       nis

edit: une dernière chose ..... J'ai remarqué que si je tape pam-auth-update, je ne vois pas la possibilité d'activer un profil pam pour Active Directory ou LDAP ... Je jure que c'était là dans 12.04 .. .

4
vocoder

Est-ce que

getent passwd

Retourner quelque chose?

Que diriez-vous

wbinfo -u

Je travaille sur la même chose et pour moi wbinfo -u a fonctionné mais getent passwd ne l’a pas fait. J'ai pu obtenir getent passwd au travail en ajoutant ces paquets.

 apt-get install libnss-winbind libpam-winbind

Une fois que getent passwd a renvoyé les utilisateurs du domaine, j’ai pu entrer dans ssh sur la machine avec mon identifiant de domaine.

7
gregorcy

J'avais le même problème mais, grâce à un piratage informatique, j'ai finalement réussi à le faire fonctionner.

Après avoir ajouté libnss-winbind - getent passwd a fonctionné et une erreur setgid a été détectée lorsque j'ai tenté de me connecter en tant qu'utilisateur AD.

J'ai donc commencé à pirater le fichier smb.conf.

J'ai copié le fichier smb.conf que j'avais sur un serveur 12.04LTS en état de fonctionnement et y ai apporté quelques modifications mineures.

Ceci est mon smb.conf.

[global]
allow trusted domains = Yes
workgroup = DOMAIN
server string = 'Test Server'
security = ads
realm = DOMAIN.COM
password server = 0.0.0.0
domain master = no
local master = no
preferred master = no
idmap backend = tdb
idmap uid = 10000-99999
idmap gid = 10000-99999
idmap config DOMAIN:backend = rid
idmap config DOMAIN:range = 10000-99999
winbind separator = +
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
winbind nested groups = yes
winbind refresh tickets = yes
template homedir = /home/DOMAIN.COM/%U
template Shell = /bin/bash
client use spnego = yes
client ntlmv2 auth = yes
encrypt passwords = true
restrict anonymous = 2
log file = /var/log/samba/log.%m
max log size = 50
1
user3380328

apt-get install libnss-winbind libpam-winbind a également fonctionné pour moi.

Après la mise à niveau de 12.04 à 14.04, les utilisateurs Active Directory ont été invités à entrer un nom d'utilisateur et un mot de passe lorsqu'ils tentaient d'accéder aux partages et que leurs lecteurs réseau ne correspondaient pas. Après avoir exécuté la commande ci-dessus et le "service smbd restart" pour redémarrer le service samba, tout fonctionnait parfaitement. Les utilisateurs ont-ils redémarré et leurs lecteurs mappés comme d'habitude. Phew!

0
Adam TheGreat