Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

1. Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Rafael Braga
rsbraga

(usa Ubuntu)

Enviado em 22/09/2016 - 10:37h

Olá, já pesquisei bastante mas não achei solução para meu problema.

Estou renovando um servidor de arquivos antigo. Era Debian mas optei por experimentar o Ubuntu Server 16.04.
Fiz a instalação padrão do sistema e dos pacotes do Samba4. No sistema anterior, que tinha mais de 5 anos, o Samba era de versão mais antiga.

Depois de criada a estrutura das pastas, dei permissão 777 a todas e copiei o smb.conf antigo para o novo local. Restart no Samba para ativar o serviço.

Em meu note com Ubuntu, o compartilhamento funcionou bem, mas quando tento acessar através de máquinas Windows o serviço pede o login e senha, mas retorna o erro:
\\TOOLSUL_SERVER não está acessível. Talvez você não tenha permissão para usar este recurso de rede. Contate o administrador deste servidor para saber se você tem permissões de acesso.

Erro de protocolo de chamada de procedimento remoto (RPC)



Informações
Ubuntu Server 16.04
Samba: Version 4.3.9-Ubuntu
Instalado XFCE a pedido do cliente (xubuntu-desktop)


# ls -l /arquivos/
total 32
drwxrwxrwx 6 root root 4096 Set 21 17:22 administrativo
drwxrwxrwx 2 root root 4096 Set 21 17:15 compras_e_pcp
drwxrwxrwx 2 root root 4096 Set 21 17:15 vendas
...entre outros


smb.conf
[global]
workgroup = TOOLSUL
netbios name = toolsul_server
server string = ServidorToolsul
log file = /var/log/samba/%m.log
max log size = 50
log level = 1
security = user
passdb backend = tdbsam
public = yes
printing = cups
printcap name = cups
load printers = yes
wins support = yes

# ======================= Pastas Pessoais
[homes]
path = /home
comment = "Diretório Pessoal"
writable = yes
browseable = yes


# ======================= Pastas Compartilhadas Restritas
[Adm]
browseable = yes
writeable = yes
write list = @admin
path = /arquivos/administrativo
comment = "Arquivos da Administração"
valid users = luciana augusto anderson mara
create mode = 777
directory mode = 777

[Compras e PCP]
comment = "Arquivos de Compras e PCP"
path = /arquivos/compras_e_pcp
create mode = 777
directory mode = 777
guest ok = no
browseable = yes
writable = yes
valid users = luciana augusto anderson mara
write list = @admin @adm

[Vendas]
comment = Vendas
path = /arquivos/vendas
create mode = 777
directory mode = 777
guest ok = no
browseable = yes
writable = yes
valid users = luciana augusto anderson mara marcos erik alencastro
write list = @admin @adm @projeto @producao

# ======================= Pastas Compartilhadas Abertas
[Publica]
delete readonly = yes
writeable = yes
path = /home/arquivos/publica
guest ok = yes
comment = Publica
create mode = 777
public = yes
directory mode = 777

[PDF]
path = /var/tmp
comment = PDF Generator (only valid users)
browseable = yes
printable = yes
print command = /usr/share/samba/scripts/print-pdf "%s" "%H" "//%L/%u" "%m" "%I" "%J" &
lpq command = /bin/true
guest ok = yes
writable = yes
printing = bsd

# ================================= Impressoras
[printers]
comment = Impressoras
path = /var/lib/samba/printers
printable = yes
guest ok = yes
browseable = no
writable = no



Já procurei informações sobre o erro mas não encontrei solução, alguém tem alguma dica ou problema similar?


  


2. Re: Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Eduardo
vchacal

(usa Debian)

Enviado em 22/09/2016 - 11:02h

Da uma olhada neste link: https://www.vivaolinux.com.br/topico/Samba/Erro-de-instalacao-do-Samba

Houve algumas mudanças do samba 3.x p/ 4.x.
Se quer liberar acesso a um compartilhamento publico, sem usuário e senha deve configurar o compartilhamento anonimo.
Na solução do tópico eu posto o link da wiki oficial do samba. Da uma olhada lá que eu acho que vai te ajudar.



3. Re: Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Rafael Braga
rsbraga

(usa Ubuntu)

Enviado em 22/09/2016 - 12:03h

Campacci escreveu:
...
Na solução do tópico eu posto o link da wiki oficial do samba. Da uma olhada lá que eu acho que vai te ajudar.


Obrigado Campacci, estou lendo os links que enviou para tentar a solução.

Mas me chamou atenção uma consulta que fiz, veja o resultado:
# samba-tool user list
Could not find machine account in secrets database: Failed to fetch machine account password for TOOLSUL from both secrets.ldb (Could not find entry to match filter: '(&(flatname=TOOLSUL)(objectclass=primaryDomain))' base: 'cn=Primary Domains': No such object: (null)) and from /var/lib/samba/private/secrets.tdb: NT_STATUS_CANT_ACCESS_DOMAIN_INFO
ERROR(ldb): uncaught exception - ldb_search: invalid basedn '(null)'
File "/usr/lib/python2.7/dist-packages/samba/netcmd/__init__.py", line 175, in _run
return self.run(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 292, in run
attrs=["samaccountname"])


Talvez o erro esteja no arquivo ou gerenciamento das senhas (acho)
sabe me orientar sobre como solucionar isso?




4. Re: Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Eduardo
vchacal

(usa Debian)

Enviado em 22/09/2016 - 12:55h

rsbraga escreveu:

Campacci escreveu:
...
Na solução do tópico eu posto o link da wiki oficial do samba. Da uma olhada lá que eu acho que vai te ajudar.


Obrigado Campacci, estou lendo os links que enviou para tentar a solução.

Mas me chamou atenção uma consulta que fiz, veja o resultado:
# samba-tool user list
Could not find machine account in secrets database: Failed to fetch machine account password for TOOLSUL from both secrets.ldb (Could not find entry to match filter: '(&(flatname=TOOLSUL)(objectclass=primaryDomain))' base: 'cn=Primary Domains': No such object: (null)) and from /var/lib/samba/private/secrets.tdb: NT_STATUS_CANT_ACCESS_DOMAIN_INFO
ERROR(ldb): uncaught exception - ldb_search: invalid basedn '(null)'
File "/usr/lib/python2.7/dist-packages/samba/netcmd/__init__.py", line 175, in _run
return self.run(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 292, in run
attrs=["samaccountname"])


Talvez o erro esteja no arquivo ou gerenciamento das senhas (acho)
sabe me orientar sobre como solucionar isso?



O samba-tool eu uso e vejo outros usarem apenas para tarefas com o controlador de domínio.
Se vc não tem domínio configurado neste servidor, não vejo muita utilidade com este comando. Pois este comando faz exatamente isso, eu tenho um controlador de domínio e com este comando ele vai apresentar todos os usuários criados e existentes, assim como samba-tool groups list vai apresentar os grupos.

No samba 3 isso é feito separado, pois o OpenLDAP é separado e temos que integrar se quisermos um controlador de domínio é claro. Caso seja apenas compartilhamento é apenas o samba.

No samba 4 é diferente, já é tudo junto. Então por mais que vc use pra compartilhamento de arquivos apenas, ele ainda possui o LDAP.






5. Re: Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Rafael Braga
rsbraga

(usa Ubuntu)

Enviado em 22/09/2016 - 13:06h

Campacci escreveu:
...
No samba 4 é diferente, já é tudo junto. Então por mais que vc use pra compartilhamento de arquivos apenas, ele ainda possui o LDAP.


Entendo, mas este erro não está influenciando?
Pois meu problema é permissões, e penso que se há algum erro referente aos usuários no samba, ele pode não permitir o acesso.

Ainda não consegui solucionar :/


6. Re: Samba 4 + Ubuntu Server - Erro de acesso com clientes Windows

Eduardo
vchacal

(usa Debian)

Enviado em 22/09/2016 - 14:54h

rsbraga escreveu:
Entendo, mas este erro não está influenciando?
Pois meu problema é permissões, e penso que se há algum erro referente aos usuários no samba, ele pode não permitir o acesso.

Ainda não consegui solucionar :/


É que vc esta tentando consultar uma base de usuarios no samba que não existe. Por isso o erro, mais acredito que não esteja influenciando no funcionamento de compartilhamento.

Tanto é que do Ubuntu vc acessa normal certo. No Windows, quando ele pedir usuário e senha tenta inserir um usuário e senha que vc tem criado no servidor samba. É pra funcionar.

Funcionando vc tem duas opções, faz o mapeamento salvando a senha ou cria o compartilhamento anonimo.

O seu smb.conf exige que tenha um usuário autenticado por causa do parâmetro security = user.
No samba 3 bastava ser security = share ... que no samba 4 no post do colega lah não deu certo.
Ele teve que tirar este parametro security = share da sessão global e colocar guest account = nobody e no compartilhamento guest ok = yes

[global]
workgroup = TOOLSUL
netbios name = toolsul_server
server string = ServidorToolsul
log file = /var/log/samba/%m.log
max log size = 50
log level = 1
guest account = nobody
passdb backend = tdbsam
public = yes
printing = cups
printcap name = cups
load printers = yes
wins support = yes

[Publica]
delete readonly = yes
writeable = yes
path = /home/arquivos/publica
guest ok = yes
comment = Publica
create mode = 777
public = yes
directory mode = 777


Resumindo, troque security = share da sua sessão global para guest account = nobody, reinicia o samba e faz um teste.

Os outros compartilhamentos eu vi que tem usuários específicos que podem acessar. Neste caso vc tem que criar estes usuários no servidor tmb.