Autenticação do Samba / Winbind do Active Directory quebrada após a atualização para o 14.04

4

Eu estava no desktop Ubuntu 12.04 e tinha juntado ao domínio usando samba / winbind / krb5 - funcionou muito bem sem nenhum problema, eu poderia entrar no meu computador usando minha conta de diretório ativo. Eu atualizei para 14,40 e parece ter quebrado. Parece que o 14.04 foi atualizado para o Samba4 e não tenho certeza se esse é o problema ou não. Fiz algumas alterações no arquivo smb.conf que parecem ser alterações no Samba4 - e isso me permite ingressar no domínio usando anúncios de rede - username --U funciona bem ... meu computador ingressou no domínio - e eu pode obter um ticket usando kerberos e ver se ele é válido. No entanto, quando eu faço logout da minha conta local e tento fazer login novamente usando minha conta de domínio, ela sempre me diz uma senha inválida. alguma ideia? depois de executar o testparm no meu arquivo smb.conf, ele me disse que o idmap uid e o idmap gid não são mais usados .... e também me disse que "security = ads" combinado com "password server" não devem ser combinados. Eu estou querendo saber se esse é o problema.

edit: possivelmente tem algo a ver com meus arquivos pam.d - eu acabei de fazer uma instalação limpa de 14.04 e não consigo logar ... ele nem sequer me pede minha senha ... o que vai se eu voltar para os arquivos pam padrão - aqui está o que eu tenho

/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

aqui está o meu teste /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

e aqui está meu /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

edite: uma última coisa ..... notei que se eu digitar pam-auth-update, não vejo a capacidade de ativar um perfil pam para o diretório ativo ou ldap ... eu juro que estava lá 12.04 ...?

    
por vocoder 22.04.2014 / 14:55

3 respostas

7

getent passwd

Devolve alguma coisa?

Que tal

wbinfo -u

Estou trabalhando na mesma coisa e para mim o wbinfo -u funcionou, mas getent passwd não funcionou. Consegui obter getent passwd para trabalhar adicionando esses pacotes.

 apt-get install libnss-winbind libpam-winbind

Uma vez que getent passwd retornou usuários do domínio, eu pude acessar a máquina com o meu credito de domínio.

    
por gregorcy 22.04.2014 / 19:58
1

Eu estava tendo o mesmo problema, mas através de alguns hacks consegui fazê-lo funcionar finalmente.

Depois de adicionar libnss-winbind-getent passwd funcionou e eu estava recebendo um erro de setgid quando tentei efetuar login como um usuário do AD.

Então comecei a invadir o arquivo smb.conf.

Eu copiei o arquivo smb.conf que eu tinha de um servidor 12.04LTS e fiz algumas pequenas mudanças e funcionou.

Este é meu 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
    
por user3380328 25.04.2014 / 20:40
0

apt-get install O libnss-winbind libpam-winbind também funcionou para mim.

Após a atualização de 12.04 para 14.04, os usuários do Active Directory foram solicitados a fornecer um nome de usuário e uma senha ao tentar acessar os compartilhamentos e suas unidades de rede não mapeariam. Depois de executar o comando acima e 'service smbd restart' para reiniciar o serviço samba, tudo funcionou perfeitamente. Se os usuários tivessem reiniciado e suas unidades mapeadas como de costume. Ufa!

    
por Adam TheGreat 01.10.2014 / 16:47