O Samba compartilha com o Windows AD escolhendo o nome de usuário incorreto

1

Eu tenho um problema estranho, no qual não encontrei respostas para a Web.

Eu tenho o Ubuntu 12.04 LTS com o Samba 3.6. 3 (ntp krb5-usuário smbfs smbclient winbind)

No começo, tudo funciona bem, os grupos no AD têm o acesso adequado aos arquivos e as permissões de usuário funcionam, exceto por uma anomalia:

Existem 2 usuários com o mesmo nome:

simon loucura e simon wally

Se eu fizer login no Windows como Simon e tentar acessar seu compartilhamento, eu receberei permissão negada. Quando vejo samba.log é estados:

  

[2014/03/24 20: 39: 04.702632, 2]   smbd / service.c: 627 (create_connection_session_info) user   'WINDOMAIN \ simon loucura' (da configuração da sessão) não tem permissão para acessar   esta parte (simonw)

Como você pode ver acima, o nome de usuário errado foi autenticado. Parece que ele encontra o primeiro nome da lista e escolhe aquele.

Então para testar minha teoria eu mudei o nome de usuário no arquivo smb.conf para "simon loucura" e com certeza quando logado como simon wally eu tenho acesso total à minha participação ??

Isso aconteceu com alguém e como consertá-lo?

Aqui está minha participação no smb.conf

note: when I change wally to folly then wally has full access.
otherwise below gets denied.    

[simonw]
    comment = Simon Only
    path = /sharing/ceo
    valid users = "WINDOMAIN\simon wally"
    force group = "domain users"
    writable = yes
    read only = no
    force create mode = 0660
    create mask = 0777
    directory mask = 0777
    force directory mode = 0770
    access based share enum = yes
    hide unreadable = yes

agradeço antecipadamente por sua ajuda:)

    
por IT Buff 24.03.2014 / 13:13

1 resposta

1

Esse problema é causado pela falta de suporte para espaços dentro de nomes de usuários com samba, isso é porque eles são usados como seperatores.

A seguinte solução pode ser usada para resolver esse problema, isso cria um alias para o nome de usuário com espaços:

  1. Defina um mapa de nome de usuário colocando o seguinte dentro da sua configuração do samba:

    username map = /usr/local/private/usermap.txt
    
  2. Adicione o seguinte conteúdo a /usr/local/private/usermap.txt

    WINDOMAIN\simonwally = "WINDOMAIN\simon wally"
    WINDOMAIN\simonfolly = "WINDOMAIN\simon folly"
    

    Isso cria um alias, então o nome pode ser o usuário sem espaços

  3. Altere a seção de usuários válidos dentro de sua configuração para:

    valid users = "WINDOMAIN\simonwally"
    

    Por causa dos mapeamentos que fizemos antes, isso será mapeado para a conta do usuário com um espaço e, por causa disso, ele aceitará o usuário no compartilhamento.

  4. Verifique se a configuração do samba contém erros (sempre recomendamos após uma modificação) Execute o seguinte código em um terminal como o bash:

    testparm && echo "Syntax OK" || echo "Syntax Error"
    
  5. Reinicie o samba:

    sudo service smbd restart
    

Ref 1 : explica como usar espaços dentro da configuração.

Ref 2 : Código para verificar se o samba configuração contém erros.

    
por Ferrybig 24.03.2014 / 14:01