Escrito por Francies Silva de Lima.
Olá para todos.
Conforme o
prometido, vou apresentar uma forma simplificada de ativar um Active
Directory no Linux utilizando o Samba 4.
Vou utilizar a
versão mais atual do Ubuntu Server, o 14.10, em forma de VM
utilizando o VirtualBox com as seguintes configurações.
- Um núcleo do processador core 2 quad de 2.8 Ghz;
- 512 MB de RAM e 32 MB de video;
- HD de 10,5 GB de tamanho fixo, sendo que 512 MB será utilizado como Swap.
Não vou mostrar
como instalar o sistema, apenas a configuração básica para ativar
o AD. Recomendo apenas que após a instalação, aplique o apt-get
dist-upgrade para atualizar todo o sistema, reinicie e vamos para a
primeira etapa que será a preparação do sistema antes de ativar o
serviço.
Preparando o Servidor
Iniciamos a
preparação do servidor setando manualmente as configurações de
rede. O edite o arquivo de configuração das interfaces de rede.
# vim
/etc/network/interfaces
Coloquei a rede da
VM em modo bridge e agora vou setar um IP fixo nela. Veja o exemplo
abaixo.
Agora vamos alterar
o arquivo de resolução de nomes /etc/resolv.conf. Se ele não
estiver configurado corretamente, o DNS interno não vai funcionar e
nem vai ser possível acessar a internet para atualizar e instalar os
pacotes.
O arquivo é gerado
automaticamente pelo sistema quando recebemos o endereço IP via
DHCP. Não adianta alterá-lo, pois ele sempre é apagado e um novo é
gerado.
Faça o seguinte,
apague o arquivo /etc/resolv.conf e crie um novo usando o editor de
texto. Vou configurá-lo adicionando o endereço do servidor Samba e
o endereço do DNS para acesso à internet.
# rm
/etc/resolv.conf
# vim
/etc/resolv.conf
Segue abaixo o
modelo do meu arquivo.
Salve e vamos
inserir o atributo somente leitura para que o sistema não reescreva
o arquivo. É uma espécie de trava mas que pode ser desativada para
futuras alterações.
# chattr +i
/etc/resolv.conf
Para destravar o
arquivo, basta repetir o comando alterando o sinal de + para -.
O passo seguinte
será alterar os arquivos de hosts que são: /etc/hosts e
/etc/hostname.
No arquivo
/etc/hosts, o servidor estará com o ip de lookback e o nome que foi
setado na instalação. Será preciso alterá-lo substituindo o
endereço IP 127.0.1.1 pelo endereço que foi setado na configuração
anterior. O nome do host receberá o sufixo de DNS local. Veja o
exemplo abaixo.
# vim /etc/hosts
No arquivo
/etc/hostname será adicionado o sufixo de DNS ao nome do host.
# vim /etc/hostname
Com isso,
finalizamos a primeira etapa. Reinicie o sistema para que as
alterações surtam efeito.
Instalando os pacotes
Agora vamos instalar
os pacotes do servidor samba.
# apt-get update
# apt-get install
samba smbclient heimdal-clients
O pacote
heimdal-clients é usado para autenticação Kerberos. Vamos
configurar os parâmetros do Kerberos a seguir.
- Na primeira tela vamos digital em caixa alta o nome do domínio local.
- Na segunda tela ele pede o nome dos controladores de domínio. No caso, como estamos usando apenas um servidor, digite apenas o nome dele em caixa baixa.
- Na terceira tela, ele pede o nome do servidor que vai armazenar as senhas dos usuários do domínio, do PDC.
Ativando o serviço de AD/DC
Concluída a
instalação, vamos ativar o AD. Mas antes disso, renomeie o arquivo
/etc/samba/smb.conf para /etc/samba/smb.conf.original. Com isso, será
criado um novo arquivo de configuração e o Samba não acusará erro
após o preenchimento dos parâmetros no wizard.
Digite o seguinte
comando para ativar o wizard do Samba:
# samba-tool domain
provision --use-rfc2307 --interactive
Realm:
FGRE.LOCAL (Nome do Domínio)
Domain:
FGRE (Nome Wins)
Server
role: dc (Modo de operação. A opção dc significa Domain
Controller.)
DNS
Backend: SAMBA_INTERNAL (Será usado o servidor DNS embutido no
Samba. Mas ele aceita o BIND como opção.)
DNS
Forwarder: IP do DNS Externo para acesso à internet
Password:
Senha do usuário Administrator do AD.
Mostrando
a mensagem parecida com a imagem abaixo, quer dizer que a
configuração foi realizada com sucesso.
Caso
apresente erro, renomeie o arquivo /etc/samba/smb.conf e tente
novamente.
A
dica abaixo achei num outro tutorial. Achei interessante e adicionei
na configuração.
Vamos
ajustar o arquivo /etc/security/limits.conf para não ficar mostrando
erro no Samba. Adicione no final do arquivo as quatro linhas a
seguir:
Reinicie
o servidor para que as novas configurações surtam efeito e para
continuarmos o processo de configuração do AD.
Testando as configurações
Vamos
testar a conexão com o Samba usando o cliente SMBClient.
#
smbclient -L localhost -U%
#
smbclient //localhost/netlogon -Uadministrator%´P@ssw0rd´
-c ´ls´
Testando as configurações de DNS
#
nslookup fgre.local
#
host -t SRV _ldap._tcp.fgre.lpcal
#
host -t SRV _kerberos._udp.fgre.local
#
host -t A adfsl.fgre.local
Copiar
o arquivo de configuração do Kerberos para a pasta /etc e editá-lo.
#
cp /usr/share/samba/setup/krb5.conf /etc
#
vim /etc/krb5.conf
Testando o Kerberos
Criando
o token Kerberos, ou ticket como alguns costumam chamar.
#
kinit administrator@FGRE.LOCAL
#
klist
Testando
a autenticação no Samba utilizando o token do Kerberos.
#
smbclient -k //adfsl.fgre.local/netlogon -c ´ls´
