Instalação, passo a passo, do
Samba 4 como controlador de domínio.
Configurações iniciais
Configurar o repositório:
# nano /etc/apt/sources.list
Apagar tudo e colocar apenas esse repositório brasileiro:
deb http://ftp.br.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.br.debian.org/debian/ stretch main contrib non-free
Descobri que a suíte de ferramentas
net-tools, que possui o "ifconfig", não vem instalada no
Debian 9. Então dei um
apt-get install net-tools pra poder adicionar o comando "ifconfig".
Caso não saiba sua placa de rede e o "ifconfig" não esteja instalado, o comando "ip" substitui o velho "ifconfig":
# ip link (Exibe as placas de rede disponíveis)
# ip link
enp0s3 Mostra minha interface
# dhclient -v enp0s3 (para pegar ip dinâmico e poder instalar os pacotes na internet)
Meus pacotes pessoais:
# apt-get update ; apt-get install vim lynx links links2 elinks w3m net-tools
Pacotes do Samba:
# apt-get install samba krb5-config winbind smbclient
Quando terminar de instalar esses pacotes, ele fará 3 perguntas:
- Qual o nome do domínio completo. Ex.: empresa.matriz
- Qual o domínio e o nome do servidor completo. Ex.: samba4.empresa.matriz
- Repete a mesma coisa da 2 opção [ NÃO ERRAR !!! ]
Renomear o arquivo padrão do Samba, para não perder e até mesmo pra consulta posterior:
# mv /etc/samba/smb.conf /etc/samba/smb.conf.original
Configurando a Placa de Rede
No meu caso "enp0s3", se tiver algo do tipo:
# auto enp0s3
# iface enp0s3 inet auto (Pode excluir a config pra ficar como abaixo com ip fixo
Manter as configurações de loopback auto lo e cia:
# nano /etc/network/interfaces
auto lo
iface lo inet loopback
auto enp0s3
iface enp0s3 inet static
address 192.168.0.252
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameserver 192.168.0.1
dns-nameserver 8.8.8.8
Reinicie a máquina e confira se pegou IP FIXO.
Aqui SIM, prover o servidor de domínio do Samba 4. Leia atentamente durante o processo, é simples.
# samba-tool domain provision
- Realm: aqui é o nome do domínio ex: empresa.matriz
- Domain: aqui é so o domínio básico ex: empresa (Geralmente uso isso quando mando buscar pra ingressar na rede)
- Server Role: use " dc " pra dizer que se trata de um Controlador de Domínio
- DNS backend: use "SAMBA_INTERNAL", geralmente já vem setado e é só dar enter
- DNS forwarder: coloca o ip do seu Gateway ex: "192.168.0.1"
Senha sugerida "P@ssword", por conta das políticas chatas de complexidade de senhas, depois você muda.
Copiar o arquivo gerado de configuração do kerberos:
# cp /var/lib/samba/private/krb5.conf /etc/
Ajustes derrubar os serviços que não serão usados:
# systemctl stop smbd.service nmbd.service winbind.service
Desativar pra não serem iniciados no boot, impossibilitando o AD de subir:
# systemctl disable smbd.service nmbd.service winbind.service
Liberando o AD de ser iniciável pelo sistema:
# systemctl unmask samba-ad-dc.service
Iniciando o AD:
# systemctl start samba-ad-dc.service ou /etc/init.d/samba-ad-dc start
Setando o AD pra iniciar no boot:
# systemctl enable samba-ad-dc.service
Testando o Samba 4:
# smbclient -L nome_do_servidor -U Administrator
Resultado é exibindo informações do Domínio:
# samba-tool domain level show
Mais informações, você vera que ele vai exibir como se o Samba4 fosse um Windows Server 2008R2.
Criando usuário no Samba, por linha de comando:
# samba-tool user create marcos
Desabilitando obrigatoriedade de troca de senha a cada 45 dias:
# samba-tool user setexpiry administrator --noexpiry
Desabilitando obrigatoriedade de complexidade de senha:
# samba-tool domain passwordsettings set complexity=off
Desabilitando tamanho mínimo de senhas para o Samba:
# samba-tool domain passwordsettings set --min-pwd-length=0
Depois reiniciar o servidor e tentar ingressar as máquinas normalmente não esquecendo de apontar o DNS Primário para o Servidor Samba. Outros Bugs que eu peguei, foi um erro ao ingressar máquinas W7, 8 e 10, algumas vezes e ele dá usuário e senha inválidos, porém estavam corretos; isso não era um erro, mas um problema de compatibilidade de versão com NTLM. O Windows 7 usa NTLM versão 2 (NTLMv2) autenticação, enquanto sistemas do Windows 2000 para trás, usam versão 1.
Abaixo, uma referência de um problema SIMILAR que eu tive.
Caso ocorra, corrija usando a solução abaixo, reinicie e tente ingressar novamente:
- Abra o Registro, vá até a chave: HKLM\System\CCS\Services\LanmanWorkstation\Parameters
- Clique com o botão da direita e crie a chave abaixo (Dword 32 independete de ser 64)
DWORD DomainCompatibilityMode = 1
DWORD DNSNameResolutionRequired = 0
Opcionais:
# apt-get install nscd
# nscd (Limpa o cache do DNS a cada 5 minutos, melhorando performance)