Com o lançamento do Samba 4 vou começar uma série de posts sobre o mesmo, por ser uma novidade ainda estou estudando o seu funcionamento, e o objetivo desse post é a compilação, instalação e primeira configuração (provisionamento) do mesmo.
O Samba 4 pode substituir um controlador de domínio AD, e é compatível com SMB 3.0 e SMB 2.1. Os cliente podem ser Windows XP, Windows 7 e novo Windows 8. Para isso o samba traz consigo um servidor DNS, Kerberos, Ldap todos modificados para funcionarem integrados com o Samba.
Vamos ao nosso ambiente:
Versões testadas:
- Debian 6 (Squeeze), Debian 7 (Wheezy), Debian 8 (Jessie)
- Ubuntu 12.4, Ubuntu 14.04
Instalação dos pacotes:
Obs.: Caso esteja compilando para a versão 8 do Debian troque libgnutls-dev por libgnutls28-dev
# apt-get install libreadline-dev git build-essential libattr1-dev libblkid-dev autoconf python-dev python-dnspython libacl1-dev gdb pkg-config libpopt-dev libldap2-dev dnsutils acl attr libbsd-dev docbook-xsl libcups2-dev libgnutls-dev
Vamos aos preparativos
# vi /etc/fstab
/dev/sda1 / ext3 errors=remount-ro,acl,user_xattr,barrier=1 0 1
# mount -o remount /
OBS.: Acrescente apenas as opções acl,user_xattr,barrier=1 após o errors=remount-ro e nada mais.
Download do código fonte do samba 4:
# cd /usr/src
# wget http://www.samba.org/samba/ftp/stable/samba-4.1.18.tar.gz
# tar -xzvf samba-4.1.18.tar.gz
# cd samba-4.1.18
# ./configure --prefix=/opt/samba
# make
# make install
# cd /opt/samba
# bin/samba-tool domain provision --realm=empresa.net --domain=empresa --adminpass='p@ssw0rd' --server-role=dc
Vamos testar
# sbin/samba -i -M single
-i – Modo interativo (O normal é o daemon)
-M single – Apenas um processo (sem filhos)
Se não houve nenhuma mensagem de erro podemos cancelar o teste, para isso utilize a combinação de teclas CTRL+C para encerrar o processo.
# sbin/samba -V
Version 4.1.18
Agora vamos iniciar o Samba4
# sbin/samba
Outro pequeno teste
# bin/smbclient -L localhost -U%
Domain=[EMPRESA] OS=[Unix] Server[Samba 4.1.18] Sharename Type Comment --------- ---- ------- netlogon Disk sysvol Disk IPC$ IPC IPC Service (Samba 4.1.18) Domain=[EMPRESA] OS=[Unix] Server=[Samba 4.1.18] Server Comment --------- ------- Workgroup Master --------- -------
Se tudo estiver OK basta iniciar o samba sem nenhum parâmetro.
Agora precisamos de um script para iniciar e parar o Samba4.
# vi /etc/init.d/samba
#! /bin/bash ### BEGIN INIT INFO # Provides: samba # Required-Start: $network $local_fs $remote_fs # Required-Stop: $network $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start Samba daemons ### END INIT INFO # # Start/stops the Samba daemon (samba). # Adapted from the Samba 3 packages. # SAMBAPID=/opt/samba/var/run/samba.pid # clear conflicting settings from the environment unset TMPDIR # See if the daemon and the config file are there test -x /opt/samba/sbin -a -r /opt/samba/etc/ || exit 0 . /lib/lsb/init-functions case "$1" in start) log_daemon_msg "Starting Samba 4 daemon" "samba" if ! start-stop-daemon --start --quiet --oknodo --exec /opt/samba/sbin/samba -- -D; then log_end_msg 1 exit 1 fi log_end_msg 0 ;; stop) log_daemon_msg "Stopping Samba 4 daemon" "samba" start-stop-daemon --stop --quiet --name samba $SAMBAPID # Wait a little and remove stale PID file sleep 1 if [ -f $SAMBAPID ] && ! ps h `cat $SAMBAPID` > /dev/null then # Stale PID file (samba was succesfully stopped), # remove it (should be removed by samba itself IMHO.) rm -f $SAMBAPID fi log_end_msg 0 ;; restart|force-reload) $0 stop sleep 1 $0 start ;; *) echo "Usage: /etc/init.d/samba {start|stop|restart|force-reload}" exit 1 ;; esac exit 0
Dê permissão de execução ao script.
# chmod +x /etc/init.d/samba
Agora precisamos que o script inicie nos níveis de execução 2345 e pare em 016.
# update-rc.d samba defaults
Vamos atualizar o resolv.conf.
# vi /etc/resolv.conf
search empresa.net nameserver 127.0.0.1
Obs.: Pode ser que no ubuntu ao reiniciar esses valores sejam trocados, isso ocorre por conta do pacote resolvconf que vem instalado. Caso não queira remover basta editar o arquivo /etc/network/interfaces e/ou acrescentar/modificar o parâmetro dns-nameservers e ser feliz.
Mais um teste.
# dig ANY empresa.net +multiline
; <<>> DiG 9.8.1-P1 <<>> ANY empresa.net +multiline ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63659 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;empresa.net. IN ANY ;; ANSWER SECTION: empresa.net. 3600 IN SOA ubsmb4.empresa.net. hostmaster.empresa.net. ( 1 ; serial 900 ; refresh (15 minutes) 600 ; retry (10 minutes) 86400 ; expire (1 day) 0 ; minimum (0 seconds) ) empresa.net. 900 IN NS ubsmb4.empresa.net. empresa.net. 900 IN A 10.3.1.120 ;; Query time: 2 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Mon Mar 11 16:50:33 2013 ;; MSG SIZE rcvd: 113
Pronto! Samba compilado e provisionado e com direito a script de inicialização. Espero que tenham gostado do post e não deixem de comentar.
Irei no próximo post demonstrar o ingresso de uma estação Windows 7 no Samba 4. Até lá.
Fontes:
http://pastebin.com/Ka9rwPZS
http://wiki.samba.org/index.php/Samba4
Parabéns pelo post.
Aproveitando, gostaria de saber se você pode postar algo sobre o MON.
Obrigado.
Att,
Erick Neves Martinez
Erick,
Obrigado, mas o post ainda não estava completo por isso alterei a data, quanto ao MON (Service Monitoring Daemon) eu nunca utilizei mas posso dar uma olhada no mesmo e quem sabe gerar um post.
Abraços
Por favor, alguem me ajuda. Onde fica o smb.conf para configurar?
Parabéns, mestre Ricardo! Show!
Jerney,
Grande, obrigado. Rsrs
Abraços
É estou prestes a restar, logo logo estarei fazendo talvez neste domingo. Até acabei de
configurar o bind9 e apache2. Samba4 sera o próximo, valeu pela dica.
Wellington,
Você irá gostar, e o samba 4 já possui BIND,LDAP,KERBEROS integrado.
Abraços
Adorei o post, pra mim sera muito util…
Muito bem explicado, parabens!!
Abraços,
Ale
Alessandra,
Espero que faça bom uso, e qualquer dúvida basta perguntar.
Abraços
Muito bom Ricardo, irei testá-lo agora, parabéns pela iniciativa. Abçs
Marcos,
Obrigado pelo comentário, espero que dê tudo certo.
Abraços
Muito bom Meu nobre Amigo ricardo.. Meus Parabéns..
Marcelo,
Grande apache, obrigado pela visita e comentário.
Abraços
Ricado, Muito legal o post.
Agora “gogogo” fazer um post com video e comentado, ai vai ficar ótimo.
Parabéns;
Grande Nelson,
Está nos planos completar com o vídeo e já iniciei o próximo post com Windows 7 e RSAT para administração do Samba 4. Obrigado pela visita e comentário.
Abraços
Show de bola Ricardo.
Vou testar no CentOS e te dou um retorno.
Douglas,
OK, fico no aguardo.
Abraços
Ricardo,
Funcionou muito bem, me baseei no seu tutorial, que por sinal está muito claro e simples e fiz umas alterações necessárias para o CentOS.
Quer que eu te envie o que eu fiz?
Adoraria contribuir.
Abração
Douglas,
Sim claro, vou montar também para o CentOS para ficar completo.
Abraços
Parabéns Ricardo ótimo post como sempre.
cara se for possível você postar a configuração do bind que você fez, agradeço
pois na hora de colocar a maquina no domínio, não estou conseguindo.
sendo que eu consigo pingar empresa.net normalmente e aparentemente esta tudo ok
Francisco,
Quanto ao bind eu não fiz nada, pois o mesmo está integrado com o Samba 4.
Abraços
Blz, então besteira, de qualquer forma meu arquivo de
zona tava assim.
vou começar de novo. obrigado
$TTL 3600;
@ IN SOA empresa.net. postmaster.empresa.net. (
0120130312 ;serial
800 ;refresh
300 ;retry
18600 ;expired
3600 ) ;minimum
@ IN NS empresa.net.
@ IN A 192.168.10.10
ns IN A 192.168.10.10
debian-srv01 IN A 192.168.10.10
_kerberos._tcp.empresa.net. IN SRV 0 100 88 debian-srv01.empresa.net.
_ldap._tcp.empresa.net. IN SRV 0 100 389 debian-srv01.empresa.net.
_kpasswd._udp.empresa.net. IN SRV 0 0 464 debian.dominio.net.
Francisco,
Como você pode observar no post eu não tive nenhum problema para ingressar a máquina no domínio.
A máquina é a seven com IP 10.3.1.140.
# dig seven.empresa.net
;; ANSWER SECTION:
seven.empresa.net. 1200 IN A 10.3.1.140
Utilizei o usuário Administrator como primeiro login.
Abraços
Francisco,
Segui a risca o tutorial do Ricardo, ainda que adaptando alguns comandos para CentOS, e consegui fazer tudo normalmente!
Valeu mestre Ricardo, agora vai da certo.
Francisco,
Estou na torcida.
Abraços
Samba 4 funcionando redondo.
valeu ricardo!
Francisco,
De nada, qualquer problema reporte aqui nos comentários.
Abraços
esta dando erro
Unable to find build target matching –prefix=/opt/samba
help
Marcio,
O certo é # ./configure –prefix=/opt/samba
Abraços
RICARDO HELP AQUI
QUANDO DIGITO ESSE COMANDO : sbin/samba -i -M single GERA ESSE ERRO ABAIXO:
samba version 4.0.3 started.
Copyright Andrew Tridgell and the Samba Team 1992-2012
samba: using ‘single’ process model
p11-kit: duplicate configured module: gnome-keyring.module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so
Failed to listen on 0.0.0.0:53 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
Failed to bind to 0.0.0.0:53 TCP – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
task_server_terminate: [dns failed to setup interfaces]
/opt/samba/sbin/smbd: p11-kit: duplicate configured module: gnome-keyring.module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so
samba_terminate: dns failed to setup interfaces
Marcio,
A porta 53 esta ocupada por outro processo e o que impede o Samba de iniciar. Verifique com o comando:
# netstat -natup
Qual o processo esta associado a porta e resolva.
Abraços.
Grande mestre
me mata um duvida estou começando a brincar com samba 4 e seu tuto esta muito bom ja esta ma minha lista de favoritos
como seria o processo de migrar um dominio samba3+ldap para o samba 4
outra pergunta como o samba4 ja tem ldap integrado posso usar o lam para acessar esse meu ldap do samba4 ?
abs grande mestre
Jeferson,
Sim é possível migrar segundo a wiki do samba 4. Eu ainda não testei o LAM com o Samba 4.
Abraços
Prezado Ricardo,
Tenho na minha empresa o Samba 3 usando o LDAP como backend. Agora estamos pensando a migração para o Samba 4. Acontece que o LDAP é usado para prover autenticação unificada entre diversos sistemas, com a já conhecida facilidade de “um único usuário e uma única senha” para tudo. Você sabe se é possível migrar a minha estrutura para o Samba 4, já que ele tem o próprio LDAP?
Leonardo,
Ainda não preparei nada desse tipo, mas na wiki do samba tem um tutorial de como fazer isso. segue o link:
http://wiki.samba.org/index.php/Samba4/samba-tool/domain/classicupgrade/HOWTO
Abraços
Valeu, Ricardo!
Logo que fizer a migração compartilho o tutorial.
Abraços
Leonardo,
Obrigado, esse é o espírito.
Abraços
Show Ricardo …
sei que isso vai ser do 2º módulo, mas vamos testando antes né =D
abraço … boas aulas ai =]
Leonan,
Samba 4 ainda não é abordado em nenhum exame. Você verá mesmo é o Samba 3.
Abraços e valeu por comentar. :-)
Ae Professor fiz exatamente o que o senhor ensinou no tutorial acima e olha o que aparece:
samba version 4.0.4 started.
Copyright Andrew Tridgell and the Samba Team 1992-2012
samba: using ‘single’ process model
/opt/samba/sbin/samba_dnsupdate: Traceback (most recent call last):
/opt/samba/sbin/samba_dnsupdate: File “/opt/samba/sbin/samba_dnsupdate”, line 508, in
/opt/samba/sbin/samba_dnsupdate: get_credentials(lp)
/opt/samba/sbin/samba_dnsupdate: File “/opt/samba/sbin/samba_dnsupdate”, line 121, in get_credentials
/opt/samba/sbin/samba_dnsupdate: creds.get_named_ccache(lp, ccachename)
/opt/samba/sbin/samba_dnsupdate: RuntimeError: kinit for LORIEN$@VLK.COM.BR failed (Cannot contact any KDC for requested realm)
/opt/samba/sbin/samba_dnsupdate:
../source4/dsdb/dns/dns_update.c:294: Failed DNS update – NT_STATUS_ACCESS_DENIED
Mauricio,
Pode ser um monte de coisa, já tive problemas com a complexidade de senha, hora, processos ocupando a mesma porta. Preciso de mais detalhes de sua instalação para poder lhe ajudar.
Abraços
Ricardo fiz o tutorial passo a passo exatamente como passado mas na hora de usar o comando: sbin/samba -i -M single
Obtive o seguinte erro:
samba version 4.0.3 started.
Copyright Andrew Tridgell and the Samba Team 1992-2012
samba: using ‘single’ process model
Failed to listen on 0.0.0.0:53 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
Failed to bind to 0.0.0.0:53 TCP – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
task_server_terminate: [dns failed to setup interfaces]
samba_terminate: dns failed to setup interfaces
Luiz,
A porta 53 esta ocupada por outro processo impedindo o Samba de iniciar. Verifique qual o processo com o comando:
# netstat -natup
Abraços.
Prof. Ricardo, me ajuda ai no meu comentário acima ?
Salve Linuxers!!! comigo deu o mesmo do nosso amigo Luiz Felipe! e postei a saída do comando: # netstat -natup
root@virtualbox-ubuntu1204:/opt/samba# sbin/samba -i -M single
samba version 4.0.3 started.
Copyright Andrew Tridgell and the Samba Team 1992-2012
samba: using ‘single’ process model
Attempting to autogenerate TLS self-signed keys for https for hostname ‘VIRTUALBOX-UBUN.empresa.net’
TLS self-signed keys generated OK
Failed to listen on 0.0.0.0:53 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
Failed to bind to 0.0.0.0:53 TCP – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
task_server_terminate: [dns failed to setup interfaces]
samba_terminate: dns failed to setup interfaces
root@virtualbox-ubuntu1204:/opt/samba# netstat -natup | grep 53
tcp 0 0 127.0.0.1:53 0.0.0.0:* OUÇA 865/dnsmasq
udp 0 0 127.0.0.1:53 0.0.0.0:* 865/dnsmasq
Mike,
O ubuntu traz o dnsmasq por padrão e esse serviço fica ouvindo na porta 53, o dnsmasq provê os serviços de DNS e DHCP e apartir do Ubuntu 12.04 ele é configurado como um namecaching local e esse serviço tem atrapalhado o samba4. Só precisa parar esse serviço para que o samba 4 possa trabalhar corretamente.
Abraços
segundo minha pouca experiencia a solução seria trocar a porta usada pelo serviço “dnsmasq” ou derrubar a minha interface 127.0.0.1??!?!
Ricardo, bom dia!
Preciso da sua ajuda, segue abaixo o erro,
root@server:/usr/local/samba# sbin/samba -i -M single
samba version 4.0.3 started.
Copyright Andrew Tridgell and the Samba Team 1992-2012
samba: using ‘single’ process model
Failed to listen on 0.0.0.0:389 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
ldapsrv failed to bind to 0.0.0.0:389 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
task_server_terminate: [Failed to startup ldap server task]
samba_terminate: Failed to startup ldap server task
root@server:/usr/local/samba# netstat -natup
Conexões Internet Ativas (servidores e estabelecidas)
Proto Recv-Q Send-Q Endereço Local Endereço Remoto Estado PID/Program name
tcp 0 0 127.0.0.1:3306 0.0.0.0:* OUÃA 988/mysqld
tcp 0 0 0.0.0.0:139 0.0.0.0:* OUÃA 2843/smbd
tcp 0 0 0.0.0.0:10000 0.0.0.0:* OUÃA 1209/perl
tcp 0 0 0.0.0.0:80 0.0.0.0:* OUÃA 1066/apache2
tcp 0 0 192.168.1.130:53 0.0.0.0:* OUÃA 2745/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* OUÃA 2745/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* OUÃA 855/sshd
tcp 0 0 127.0.0.1:953 0.0.0.0:* OUÃA 2745/named
tcp 0 0 0.0.0.0:445 0.0.0.0:* OUÃA 2843/smbd
tcp 0 0 0.0.0.0:389 0.0.0.0:* OUÃA 2932/slapd
tcp 0 0 192.168.1.130:22 192.168.1.200:6158 ESTABELECIDA 1216/sshd: root@not
tcp 0 404 192.168.1.130:22 192.168.1.200:6216 ESTABELECIDA 1383/0
tcp 0 0 192.168.1.130:10000 192.168.1.200:7130 ESTABELECIDA 2947/perl
tcp 0 0 192.168.1.130:22 192.168.1.200:6260 ESTABELECIDA 1758/sshd: root@not
tcp6 0 0 :::139 :::* OUÃA 2843/smbd
tcp6 0 0 :::53 :::* OUÃA 2745/named
tcp6 0 0 :::22 :::* OUÃA 855/sshd
tcp6 0 0 ::1:953 :::* OUÃA 2745/named
tcp6 0 0 :::445 :::* OUÃA 2843/smbd
tcp6 0 0 :::389 :::* OUÃA 2932/slapd
udp 0 0 192.168.1.130:53 0.0.0.0:* 2745/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 2745/named
udp 0 0 0.0.0.0:10000 0.0.0.0:* 1209/perl
udp6 0 0 :::53 :::* 2745/named
O erro ocorreu depois que instalei o ldap conforme os post;
http://www.mundotibrasil.com.br/primeira-configuracao-ldap/
http://www.mundotibrasil.com.br/administrando-ldap-com-ldap-account-manager/
Antes conseguia iniciar o samba normalmente, obs.: não havia conseguido ingressar cliente windows 7.
Alguma dica?
Atenciosamente,
Raynerson Moura
Raynerson,
Na série de posts sobre o OpenLdap eu escrevi antes do samba 4 ser lançado. O Samba 4 traz entre outros serviços um servidor ldap próprio por isso o problema aconteceu pois o slapd está ouvindo na porta 389 que o Samba 4 está tentando vincular.
Estou com o mesmo erro, porem não tem nada rodando nessa porta, poderia me ajudar?
Ricardo, boa noite!
Removi o ldap, agora consigo iniciar o samba, mais ainda não consigo logar pela primeira vez!
root@server:~# kinit administrator@RRSERVICES.COM.BR
kinit: Cannot contact any KDC for realm ‘RRSERVICES.COM.BR’ while getting initial credentials
Alguma dica?
Raynerson,
Testei diversas vezes essa configuração e não obtive nenhum problema, verifique a hora das máquinas se o resolv.conf do servidor está apontando para ele mesmo, e se o cliente está com o DNS do servidor Samba, fora isso ainda não vi esse erro. Caso resolva o problema não se esqueça de postar aqui a solução.
Abraços
Ricardo, boa tarde!
O erro era por falta de atenção!
O usuário e o administrator e não administrador!
Atenciosamente,
Raynerson Moura
Fala ae grande mestre
Seu tutorial esta Show como sempre
se me permite um sugestao
o samba 4 tem um servidor de dns interno
e os clientes windows tem que esta com o dns primario sendo o mesmo ip do servidor samba
com isso os clientes windows não consegue resolver nomes fora do dominio empresa.net
para resolver isso e so editar o arquivo
/opt/samba/etc/smb.conf
e adicionar a linha
allow dns update = true
e editar a linha
dns fowardes = 8.8.8.8
# como exemplo do dns do google
dentro das conf [global]
Aii grande mestre to com alguns artigos para publica
ainda esta de pe o convite para cotribui com seu site ?
se estiver me fala
abs mano
Jefferson,
Se tudo foi feito corretamente, o /etc/resolv.conf já foi preenchido corretamente e no provisionamento ele pegaria essa informação. Claro que se houver algum problema com o resolv.conf ou não estiver preenchido ele realmente não preencheria a opção dns forwardes.
O convite sempre e ainda está de pé. rsrs Sei que você tem muito a contribuir. Abraços
Já tenho um AD Microsoft configurado… O que eu gostaria era de configurar um servidor com o Samba4 e adicionar ele ao domínio já existente e após isto ir delegando para ele todas as funções que hoje estão nos servidores Windows. Aí, depois disso ir retirando os servidores windows até ficar só com o Samba 4.
Já seguí algumas receitas prontas mas, sempre, sempre dá um errinho… nesta hora a gente fica desanimado.
Boa tarde estou configurando o centOS em uma VM e qundo chega no comando ./configure –enable-debug –enable-selftest –prefix=/opt/samba . . ele não executa, como no exemplo feito acima foi o download no comando wget http://ftp.samba.org/pub/samba/samba-4.0.4.tar.gz só troquei o samba-4.0.6.tar.gz.
Bom dia,
Quando eu executo o comando bin/smbclient -L localhost -U%
o sistema me retorna o erro:
session setup failed: NT_STATUS_CONNECTION_REFUSED
como resolvo isso?
abraço
Max,
Verifique se o samba está iniciado e quais portas estão abertas.
Abraços
Caso queira verificar as portas abertas pode usar o nmap
nmap localhost
e ver as portas que estão abertas
Ola ! samba4 + rsat funcionando 100 % consigo criar usuario , listar , remover tudo pelo windows 7 sem erro nenhum.
Pergunta: mapear o home do user no smb.conf ou pelo windows ! poderia me dar uma luz ? não consegui entender.
No samba 3 tambe tinha um script acl na qual gerenciava os diretorios , todos usuarios criado e conforme departamento ia criando , no samba4 não esta rolando
#!/bin/bash
LEITURA_ESCRITA_TODOS=””
LEITURA_TODOS=” ”
I=0
############ INICIO DOS DIRETORIOS ##############
#################################################
DIRETORIO[I]=”/home/dados/Infra”
LEITURA_ESCRITA[I]=”lucas”
LEITURA[I]=””
let I++
############### FIM DOS DIRETORIOS ##############
for ((count=0;count<$I;count++)); do
echo Diretório: "${DIRETORIO[$count]}"
echo RW: "${LEITURA_ESCRITA[$count]}" $LEITURA_ESCRITA_TODOS
echo R: "${LEITURA[$count]}" $LEITURA_TODOS
echo
Olá Ricardo, como faria para logar no samba 4 uma máquina usando Linux Mint? Tenho ambiente Misto e estou pensando em migrar meu ad e Ldap para o samba 4.
Olá RIcardo, como faria pra logar no samba 4 uma máquina usando ubuntu, e usar os usuários e cotas criados no samba 4 AD. Também gostaria de saber qual o procedimento para atualizar o samba 4, uma vez que ele foi instalado de forma compilada, e não através do apt-get install.
Sergivaldo,
Há 2 forma de autenticar o Ubuntu no Samba4/AD:
A fácil:
http://geek.linuxman.pro.br/tutoriais/como-autenticar-no-ad-com-ubuntu
E a não tão fácil:
http://wiki.ubuntu-br.org/AutenticandoAD
Quanto ao procedimento de atualização no diretório do fonte do samba 4 existe o documento “upgrading-samba4.txt” que orienta como proceder.
Abraços
Ricardo, primeiramente gostaria de agradecer pelo excelente tutorial, mas ao executar o passo acima citado estou com o seguinte erro:
‘configure’ finished successfully (1m52.940s)
Selected embedded Heimdal build
Unable to find build target matching –prefix=/opt/samba
Podes me ajudar?
att
Ruberval
Ruberval,
Verifique se você utilizou 2 traços, pois o editor do wordpress o transforma em um só.
Abraços
Você é o cara, deu certo a velha mania do ruindows é f…., eu havia copiado o comando, agora que digitei deu certo, muito obrigado e seguindo o restante.
Abraços
Ruberval
Ruberval,
:-) fico feliz que tenha dado tudo certo.
Abraços
Muito obrigado vc amigo, pela rapidez na resposta, mas nem tudo sao flores, ocorreu o seguinte erro, vou postar pelo pastebin, pois acho que polui muito aqui se colocar textos grandes: http://pastebin.com/fEbKxEXx
Já li as repostas aqui do site e a saida no netstat é esta: http://pastebin.com/QgSRPajE
no aguardo
att
Ruberval
Ruberval,
As saídas indicam que um outro processo está utilizando a porta 53 e enquanto isso não for resolvido você não irá conseguir iniciar o samba 4.
Abraços
Desculpe, mas sou iniciante nesse mundo linux, vou pesquisar como posso resolver, mas de qualquer jeito mandei reiniciar a maquina e só apos as 18:00 horas que terei como resolver, se tiver alguma dica de tuto, manda aeeeeeeee….
abraços
ruberval
é amigo, mesmo reiniciando nao deu certo, ocorre o mesmo erro, alguma dica em especial???
Ruberval,
Acredito que você esteja rodando o dnsmasq e o mesmo em algumas ocasiões atrapalha bastante e enquanto não remover você não irá iniciar o samba4.
Abraços
Ruberval,
Acredito que você esteja rodando o dnsmasq e o mesmo em algumas ocasiões atrapalha bastante e enquanto não remover você não irá iniciar o samba4.
Abraços
Me ocorreu a seguinte coisa, estou com um servidor apache rodando localmente (uso para o joomla), será que isso que ta atrapalhando?
Outra coisa quando tento executar o dnsmasq aparece o seguinte:
dnsmasq: failed to create listening socket for port 53: Endereço já em uso
Cara desculpe tantos post, mas preciso que isso funcione aqui na minha casa, instalei o nmap e saiu o seguinte:
sudo nmap 0.0.0.0 -p 53
Starting Nmap 6.00 ( http://nmap.org ) at 2013-10-01 19:19 BRT
Nmap scan report for 0.0.0.0
Host is up.
PORT STATE SERVICE
53/tcp filtered domain
Nmap done: 1 IP address (1 host up) scanned in 13.08 seconds
A ip e porta estao corretos né?
Ricardo, poderia jurar que deixei mais dois comentários mas não ta aparecendo aqui?
bem apos, bastante apanhar eu consegui mas como disse tive que matar o processo que estava rodando naquela porta, usei o comando sudo netstat -lnp, peguei todos processo rodando naquela maledita porta e matei, ai consegui resolver o problema, mas infelizmente agora tenho outro problema, tenho dois hds na maquina, um é o principal e o outro é um particionado, quando reiniciei com o samba rodando uma das partições sumiu devido a esta linha:
/dev/sda1 / ext3 errors=remount-ro,acl,user_xattr,barrier=1 0 1
o que posso fazer para contornar?
outra coisa, se eu nao postar aqui nao consigo ver minhas postagem ou se vc respondeu, somente postando que eu vejo, será que temos um problema aqui?
desde já agradeço pela atenção.
Ruberval
Ruberval,
Você só precisava acrescentar acrescentar as opções acl,user_xattr,barrier=1 na sua partição existente e nada mais.
Abraços
desculpe mas nao entendi, como ficaria a linha entao?
Você não acrescentaria essa linha no arquivo, apenas iria localizar os dispositivos existentes no /etc/fstab e acrescentaria apenas as opções que mencionei.
Pessoal encontrei um problema no começo da instalação, segue o modo correto:
Trocar esse:
./configure –prefix=/opt/samba
Por esse:
./configure –prefix=/opt/samba
Robson,
O problema esta no wordpress que converte 2 traços em um.
Abraços
Ricardo, muito obrigado pela dica! Foi de extrema importância!
Entretanto, estou com problema no momento da inicialização do samba: quanto insiro o comando /usr/local/samba/sbin/samba -i, aparece o seguinte erro:
../source4/dsdb/dns/dns_update.c:294: Failed DNS update – NT_STATUS_IO_TIMEOUT
você poderia me ajudar? desde já agradeço.
oi todo atualização que eu tento fazer da o mesmo erro:
sub-process /usr/bin/dpkg/ returned an error code(1)
Mue velho…grande tutorial…mas to com um problem… depois dos comandos
# cd samba-4.0.10
# ./configure –prefix=/opt/samba
# make
# make install
e vou tentar acessar o /opt/samba , a pasta samba nao ta criada =(, e to tentando e tentando e nao cria, te, algum macete??? vlw ai gran mestre
Ricardo,
Certifique que seu usuário, caso não seja o root, tenha permissão de escrita no diretório /opt.
Abraços
Ricardo , vlw pela dica da minha duvida postada, mas to com o seguinte problema:
Failed to listen on 0.0.0.0:53 – NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
Failed to bind to 0.0.0.0:53 TCP NT_STATUS_ADDRESS_ALREADY_ASSOCIATED
samba_terminate: dns failed to setup interfaces
e to usando uma VM no virtualbox e usando Debian 7 e no samba , to usando o DNS interno dele…
Desde ja agraço pela ajuda :D
Ricardo,
Vou possui um serviço que já está ocupando a porta 53, isso impossibilita o samba 4 de vincular a porta e o impede de iniciar.
Abraços
E vc sabe como eu poderia “consertar” isso meu gran mestre??? pq acho q so isso ta me impossibilitando de continuar na configuraçao do samba4….
Ricardo,
Primeiro você precisa identificar qual processo esta rodando na porta udp/53, rode o comando:
netstat -naup
Abraços
rodei o comando e deu isso q era o -u bind , mas vou tentar refazer a maq virtual a maq fisica, estao zoneadas rsrsr….mas vlw pelas dicas e toques ;) qq coisa eu volto a falar por aki ;) Abs
Mestre, fiz o passo a passo (exceto colocar na pasta OPT) e na hora em que ingresso a estação W7 no Samba, chega a pedir usuário e senha, depois dá erro na tentativa de resolver o DNS. Coloquei o próprio ip fixo como nameserver no network/interfaces mas nada deu certo. Minha distro é Ubuntu Server 13.10 x64. O que posso fazer para conseguir?
Tiago,
Testei as configurações e ingressei sem problemas a máquina windows 7. Verifique se o DNS do windows 7 aponta para o IP do Samba 4.
Abraços
Ricardo
Realmente, havia me esquecido. Obrigado pela dica.
Outra coisa que não estou conseguindo fazer é setar as GPOs. É necessário setar esta opção na instalação ou algo parecido?
bom dia amigos! estou configurando o samba4 pela primeira vez, quando vou configurar bin/samba-tool domain provision –realm=empresa.net –domain=empresa –adminpass=’p@ssw0rd’ –server-role=dc dar o erro bin/samba-tool já dei permissão desativei o firewall e o selinux..
desde ja agradeço pela ajuda!
Tiago,
Peguei um problema desse. Mas resolvi habilitando o suporte a Wins no samba além de configurar o DHCP para distribuir o endereço do servidor Wins.
Na parte [global] do samba adicione:
wins support = yes
wins proxy = no
dns proxy = no
max wins ttl = 518400
min wins ttl = 21600
Salve e saia.
Faça isso e nos retorne!
Excelente tutorial prof. Ricardo,
Apenas uma dúvida:
Quando digito o comando:
root@server:/usr/local/samba# sbin/samba_dnsupdate –verbose –all-names
Recebo o seguinte erro:
IPs: [‘192.168.1.115’]
Traceback (most recent call last):
File “sbin/samba_dnsupdate”, line 510, in
get_credentials(lp)
File “sbin/samba_dnsupdate”, line 123, in get_credentials
raise e
RuntimeError: kinit for SERVER$@EMPRESA.NET failed (Cannot contact any KDC for requested realm)
Poderia me ajudar a solucioná-lo?
Desde já agradeço.
—–
Segue abaixo conteúdo dos arquivos:
/etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.115
netmask 255.255.255.0
gateway 192.168.1.254
/etc/resolv.conf
search empresa.net
nameserver 127.0.0.1
Linha alterada em /etc/fstab
# /home was on /dev/sda4 during installation
UUID=a2299e53-8f64-4f44-89f4-296110dacb32 /home ext4 errors=remount-ro,acl,user_xattr,barrier=1 0 1
Olá gostaria muito de uma ajuda dos colegas dessa comunidade, pesquiso muito antes de fazer qualquer pergunta em um post como esse, estou tentando instalar o SAMBA 4 PDC no Debian 7 Wheezy ao executar o comando “kinit administrator@MEUDOMINIO.LOCAL” ele retorna esse erro – “Cannot contact any KDC for realm ‘RRSERVICES.COM.BR’ while getting initial credentials”
Vi logo acima um problema parecido pedindo para verificar o resolv.conf já verifiquei e aponta para o servidor local, lembrando que o erro se dá durante a instalação e teste de autenticação do Kerberos no próprio servidor LINUX e não ao tentar ingressar no domínio nas estações. Agradeço toda ajuda, e será muito bem vinda.
Obrigado!
Desculpa colei o erro acima do colega e esqueci de mudar o nome do domínio ““Cannot contact any KDC for realm ‘DOMINIO.LOCAL’ while getting initial credentials”
Olá,
Será que alguém pode me dar uma ajuda?
Configurei tudo certo, porem Quando vou adicionar a maquina windows 7 obtenho o seguinte erro:
Observação: estas informações se destinam a administradores de rede. Caso você não seja um, contate o administrador de rede e notifique-o de que recebeu estas informações, que estão registradas no arquivo C:\Windows\debug\dcdiag.txt.
Êxito ao consultar o DNS para obtenção de registro do recurso de serviço local (SRV) usado para localizar um controlador de domínio para o domínio “PPGP.LOCAL”:
A consulta foi feita para o registro SRV para _ldap._tcp.dc._msdcs.PPGP.LOCAL
A consulta identificou os seguintes controladores de domínio:
ubuntu-fileserv.ppgp.local
ubuntu-fileserver.ppgp.local
No entanto, não foi possível contatar nenhum controlador de domínio.
As causas mais comuns deste erro são:
– Registros de host (A) ou (AAAA) que mapeiam os nomes dos controladores de domínio para seus respectivos endereços IP estão faltando ou contêm endereços incorretos.
– Os controladores de domínio registrados no DNS não estão conectados à rede ou não estão em execução.
Alguma sugestão?
Parabéns, muito bom.
Obrigado por compartilhar, vou implementar aqui na empresa.
Gostaria de saber se eu posso criar um Servidor de domino secundário para alta disponibilidade.
Ola. Primeiramente parabéns pelo ótimo tutorial. Estou utilizando o Samba4 +- em produção(apenas em um setor da empresa),
e ate o momento estou com apenas um problema: +- de 5 em 5 dias o serviço de DNS Interno não resolve os nomes do servidor DNS que esta em foward.
Ai preciso reiniciar o serviço do Samba4 pra voltar a funcionar. No caso tem +- 180 maquinas utilizando o serviço de DNS do Samba4
e apenas umas 6 utilizando propriamente o serviço de domínio e de compartilhamento de arquivo desse servidor Samba4. Alguém ja passou por isso?
Deste ja, Obrigado.
Marluzio, você está usando o dns como samba internal, pelo que entendi. Não passei por isso, mas, pelo consultei na internet, você precisa verificar se não tem nenhum serviço cron que esteja resetando o conf do dns para o default. Aconteceu comigo um problema bem besta: perdendo a senha do admin do samba. Resolvi isto retirando uma tarefa do cron.d (weekly) que utilizava o conf original.
Sinceramente, eu acho o DNS interno do samba muito fraco. Recomendo estudar e utilizar o BIND, que é bem melhor (na minha humilde opinião, claro).
Boa sorte amigo!
Ola, primeiramente obrigado pela atenção. Sim, estou utilizando o internal, ate porque ja tenho um bind rodando, ai o internal esta apenas como foward para esse bind. Pois é..se eu nao conseguir resolver isso no internal..vou ter que ver utilizando o Bind..que pelo que vi há mais opções de configuração.
Sobre o cron nao há tarefa para essa função.
Pelo que estou vendo há algum limite que esta sendo alcançado..mas não encontrei ainda documentação sobre isso.
Mas obrigado pelas dicas hehe. Abraço.
Marluzio, tem mais algumas coisas que vi sobre dns forwarding:
1 – O samba internal não resolve endereços (caching de dns, por exemplo)
2 – há um problema com dns dinâmico para a versão 4.0.7. Caso seja a sua versão, atualize-a.
Outra dica que vi: verifique o arquivo named.conf. Lá você tem algumas opções para passar o internal para outro BIND9.
Se conseguir avançar neste passo, me avise.
Espero ter ajudado
Ola, estava de ferias, por isso a demora.
Acho que resolvi o problema de travar a resolucao do DNS. Meu log level no smb.conf estava level 10, ai alterei para level 1 e a principio parou o problema.
Minha versao é a:Samba 4.1.6.
Sobre o bind, vou estudar agora sobre a implementação do mesmo, pois o servidor ja esta em producao, ai nao quero correr tanto risco rsrs.
Desde ja Obrigado pela ajuda.
Precisando estamos ai.
Abraço.
Bom dia!
Quando passo o comando:# bin/smbclient -L localhost -U%
Aparece a msg: Error NT_STATUS_IO_TIMEOUT
Alguém já passou por isso? O que fazer?
Abraço
Boa tarde. Faz um teste com o firewall desabilitado e o selinux desabilitado.
Aguardamos resultado.
Boa tarde Pessoal, Muito bom o material parabéns, estou com o seguinte problema fiz a instalação conforme o manual e consegui compartilhar pastas criar grupos e usuários, porém passando alguns dias as máquinas com o win7 não conseguem mais entrar no dominio sendo necessário alterar o reg do Windows depois de tirar do dominio e rodar o reg e colocar novamente fica funcionado, alguém já passou por situação parecida ?
Valeu
ao executar o comando : ./configure –prefix=/opt/samba
me retorna este erro Unable to find build target matching –prefix=/opt/samba voce poderia me ajudar
Por conta do editor do WP ele não mostra que são 2 (Traços) –Prefix
Mestre, se me permite.
Estava dando um erro muito peculiar no, quando queria inserir uma máquina Windows 7 no domínio dava seguinte mensagem de erro “não foi possivel contatar o controlador de dominio”.
Resolvi da seguinte forma, alterei o arquivo de configuração /etc/samba/smb.conf
dns proxy = no
Único problema que tive.
Parabéns pelo post e muito obrigado por deixar esse tutorial público.
Bom tarde gostaria de ter pergunta se vc ja instalo o samba 4.2 estou tendo problema com ele na parte de rdp.
Lucas,
Que problemas você está tendo com RDP?
Era bug da versão na epoca
Como faço para ingressar ubuntu 15.04 (samba4) em um domínio MS?
Ricardo Boa tarde.
Levantei meu samba Master e Slave, esta funcionando show, o meu pro é que não quero logar no meu DC com a conta local e sim com as contas criadas no DC. Como posso fazer isso.
Opa quando estive tendo problema era bug versao contudo alguemcheo usa ele no 2012 microsft ta bloqueando recursos de comunicao do linux com windows fazendo ele n achar seus caminhos.
Bom dia pessoal, como posso resolver esse problema: “Levantei meu samba Master e Slave, esta funcionando show, o meu pro é que não quero logar no meu DC com a conta local e sim com as contas criadas no DC. Como posso fazer isso”
Para logar local vc digita o nome da estacao\nome do usuário So isso
Bom dia. Jose, ja tentou criar uma conta no dominio com perfil de Domain Admin?
Bom dia.
Instalei o samba versão 4.3.1, e saiu a versão 4.3.3 que corrige vários problemas de segurança, como faço para atualizar para essa versão, sendo que já estou utilizando o servidor em produção?
Ola, Ricardo, Primeiramente parabéns pelo o seu artigo feito 2/2013 e ate hoje tem muitos seguidores dessa bela receita de bolo do samba4.
Estou tendo um problema que é igual a 3 ou 4 membros ja postaram aqui, porem nao vi nenhuma resposta de solução.
SO: DEBIAN 8.0
ver: Samba 4.3.3
***ERRO***
###/opt/samba/var/log.samba
[2016/02/03 10:44:44.843618, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler)
/opt/samba/sbin/samba_dnsupdate: RuntimeError: kinit for SERVIDOR$@LACAIO.LOCAL failed (Cannot contact any KDC for requested realm)
[2016/02/03 10:44:44.844747, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler)
/opt/samba/sbin/samba_dnsupdate:
[2016/02/03 10:44:44.864908, 0] ../source4/dsdb/dns/dns_update.c:294(dnsupdate_nameupdate_done)
../source4/dsdb/dns/dns_update.c:294: Failed DNS update – NT_STATUS_ACCESS_DENIED
***CONFS***
###smb.conf
# Global parameters
[global]
workgroup = LACAIO
realm = LACAIO.LOCAL
netbios name = SERVIDOR
server role = active directory domain controller
dns forwarder = 192.168.0.254
nsupdate command=/usr/bin/nsupdate
##resolve.conf
# Generated by NetworkManager
domain lacaio.local
search lacaio.local
servidor 192.168.0.254
nameserver 189.4.0.152
nameserver 189.4.0.177
nameserver 192.168.0.254
OBRIGADO!
Marco,
Obrigado pelo elogio, fico feliz que este artigo apesar do tempo que foi escrito ainda tem ajudado muitos profissionais de TI e isso não tem preço.
Quanto ao erro em questão você pode fazer um teste… Comente a linha nsuṕdate command… e adicione allow dns updates = unsecure
Execute o comando testparm e verifique se não há nenhum erro e faça novos testes.
Devo confessar que hoje em dia no Debian eu não compilo mais o Samba uso um simples apt-get e depois realizo o provisionamento.
Abraços
Boa tarde,
Consegui logar uma maquina, criei o usuário, até ai tudo bem, porem quando vou instalar algum programa, ele me pede login e senha de algum usuário com permissão administrativa no ldap, coloco mas nada acontece, ele não aceita o login e senha
Pois o usuário q vc logo vc não adiciono a permisao dele com isso ele liga com usuário básico acesse o usuário local da máquina adicione o usuário criado com a permisao de adm q ele n vai mais pedir
boa noite pessoal vi que teve um colega que passou por um problema parecido com o que tenho enfrentado, de tempo em tempo o samba parece que trava no servidor, eu consigo acesso ao mesmo, realizo alguns comandos mas por exemplo um simples top, não retorna nada fica travado, isso começou a ser mais constante implementei em produção o servidor e passou quase 1 mês ok, depois começaram sintomas, um ou outro usuário não logava, e outros não conseguem acesso aos compartilhamentos na máquina, comecei então a observar que ao mesmo tempo as máquinas paravam de resolver alguns nomes externos. Aí que li algumas coisas na web de pessoas com problemas de alto consumo do samba 4, eu simplesmente mato o processo e inicio de novo, e tudo volta ao normal. Ainda estou atrás, mas se alguem já passou por isso, o problema não é todo dia, parece que algo depois de algum período trava e então iniciando do zero, tudo volta. estou usando o DNS internal do samba.
obrigado!
Qual a versão do Linux q está usando qual a versão do samba q está usando qual e tipo tipo de firewall q está usando.
Lucas,
Esse post foi criado em Debian 6 e depois revisado para funcionar com o Debian 7 e Ubuntu 12.04. Recentemente refiz o Post para o Debian 8 e Ubuntu 16.04 com instalação via apt-get e para o CentOS 7 foi compilado mesmo.
Abraços
Pergunto a versão pois tive muito problema do debian 6,7 funciono blz. Mas Debian 8 tipo problema de travamento e outros erros por isso perguntei a versão do sistema.
Sim contudo qual a versão do samba 4 que esta usando e qual tipo de firewall ??
Obrigado pelo retorno pessoal desculpem a demora, erro meu devia ter posto já no inicio, bem o samba é Samba version 4.5.0 e esta em um Centos 6.7.
Sobre o Firewall eu até desabilitei ele e o Selinux pois vi alguns fóruns o pessoal repassando que poderia ser algo nesse sentido, mas persiste, agora mesmo tive de matar o processo e iniciar novamente. O mais estranho é que eu não consigo nem listar processos ou ver por exemplo o que esta fazendo esse “travamento” com o top. Neste últimos dias até achei mais alguns usuários pela web com problemas de alto consumo com o samba 4 em DC.
Sigo pesquisando por aqui, vou tentar montar um lab para ver se consigo o mesmo erro, o estranho é que antes dessa implantação fiz um lab por 3 meses, mas possivelmente por estar com poucas máquinas usando esse incidente nunca aconteceu.
Estou com problemas para acessar as pastas SYSVOL e LOGON…só consigo acessar através do Administrador…sabe me dizer o que pode ser?
Como eu monto o servidor slave ?
consegui subir o Samba4 AD dns samba internal
usuários criados, maquinas adicionadas todos via estação windows, porém notei q
não consigo pingar maquina nenhuma pelo nome.
criei as zonas reversas pois tenho netmask 22 e criei as zoas para 10.0.0. a 10.0.3.
mesmo assim sem sucesso.
e não consigo gerar pelo msktutil a chave pra usar com o squid autenticando via Kerberos.
Preciso ter 2 servidores? o AD e o DNS em vms separadas?
iniciante em linux, mas com vontade de aprender rsrsrs se alguém puder me ajudar fico grato.
Perfeito! Ajudou muito… minha única dificuldade é inserir uma máquina linux no AD
Obrigada
quando apliquei o comando ./configure –prefix=/opt/samba ao final deu o seguinte erro: ValueError; list.remove(x): x not in list. Pode me ajudar???
Estou usando Debian 9.
Boa tarde Reginaldo,
Ainda não tive a oportunidade de testar com a versão 9 do Debian.
Abraços