Pesquisa de site

Junte-se a um Ubuntu DC adicional ao Samba4 AD DC para replicação de failover - Parte 5


Este tutorial mostrará como adicionar um segundo controlador de domínio Samba4, provisionado no servidor Ubuntu 16.04, à floresta Samba AD DC existente em ordem para fornecer um grau de balanceamento de carga/failover para alguns serviços cruciais do AD DC, especialmente para serviços como DNS e esquema LDAP do AD DC com banco de dados SAM.

Requisitos

  1. Crie uma infraestrutura do Active Directory com Samba4 no Ubuntu – Parte 1

Este artigo é uma Parte 5 da série Samba4 AD DC da seguinte forma:

Etapa 1: configuração inicial para configuração do Samba4

1. Antes de começar a realizar a associação de domínio para o segundo DC, você precisa cuidar de algumas configurações iniciais. Primeiro, certifique-se de que o nome do host do sistema que será integrado ao Samba4 AD DC contenha um nome descritivo.

Supondo que o nome do host do primeiro domínio provisionado seja chamado adc1, você pode nomear o segundo DC com adc2 para fornecer um esquema de nomenclatura consistente em seus controladores de domínio.

Para alterar o hostname do sistema você pode emitir o comando abaixo.

hostnamectl set-hostname adc2

caso contrário, você pode editar manualmente o arquivo /etc/hostname e adicionar uma nova linha com o nome desejado.

nano /etc/hostname

Adicione aqui o nome do host.

adc2

2. Em seguida, abra o arquivo de resolução do sistema local e adicione uma entrada com o endereço IP que aponta para o nome abreviado e FQDN do controlador de domínio principal, conforme ilustrado abaixo captura de tela.

Neste tutorial, o nome do DC primário é adc1.tecmint.lan e resolve para o endereço IP 192.168.1.254.

nano /etc/hosts

Adicione a seguinte linha:

IP_of_main_DC		FQDN_of_main_DC 	short_name_of_main_DC

3. Na próxima etapa, abra /etc/network/interfaces e atribua um endereço IP estático para o seu sistema, conforme ilustrado na imagem abaixo.

Preste atenção às variáveis dns-nameservers e dns-search. Esses valores devem ser configurados para apontar de volta para o endereço IP do Samba4 AD DC primário e da região para que a resolução DNS funcione corretamente.

Reinicie o daemon de rede para refletir as alterações. Verifique o arquivo /etc/resolv.conf para garantir que ambos os valores DNS da sua interface de rede sejam atualizados para este arquivo.

nano /etc/network/interfaces

Edite e substitua pelas suas configurações de IP personalizadas:

auto ens33
iface ens33 inet static
        address 192.168.1.253
        netmask 255.255.255.0
        brodcast 192.168.1.1
        gateway 192.168.1.1
        dns-nameservers 192.168.1.254
        dns-search tecmint.lan

Reinicie o serviço de rede e confirme as alterações.

systemctl restart networking.service
cat /etc/resolv.conf

O valor dns-search anexará automaticamente o nome de domínio quando você consultar um host pelo seu nome abreviado (formará o FQDN).

4. Para testar se a resolução do DNS está funcionando conforme o esperado, emita uma série de comandos ping no nome abreviado, FQDN e domínio do seu domínio, conforme mostrado na captura de tela abaixo.

Em todos esses casos, o servidor Samba4 AD DC DNS deve responder com o endereço IP do seu DC principal.

5. A etapa adicional final que você precisa realizar é a sincronização de horário com seu controlador de domínio principal. Isso pode ser feito instalando o utilitário cliente NTP em seu sistema emitindo o comando abaixo:

apt-get install ntpdate

6. Supondo que você queira forçar manualmente a sincronização de horário com o samba4 AD DC, execute o comando ntpdate no DC primário emitindo o seguinte comando.

ntpdate adc1

Etapa 2: Instale o Samba4 com as dependências necessárias

7. Para registrar o sistema Ubuntu 16.04 em seu domínio, primeiro instale o Samba4, o cliente Kerberos e alguns outros pacotes importantes para uso posterior nos repositórios oficiais do Ubuntu, emitindo o comando abaixo:

apt-get install samba krb5-user krb5-config winbind libpam-winbind libnss-winbind

8. Durante a instalação, você precisará fornecer o nome do domínio Kerberos. Escreva seu nome de domínio em letras maiúsculas e pressione a tecla [Enter] para finalizar o processo de instalação.

9. Após a conclusão da instalação dos pacotes, verifique as configurações solicitando um ticket Kerberos para um administrador de domínio usando o comando kinit. Use o comando klist para listar o ticket Kerberos concedido.

kinit domain-admin-user@YOUR_DOMAIN.TLD
klist

Etapa 3: Ingresse no Samba4 AD DC como controlador de domínio

10. Antes de integrar sua máquina ao Samba4 DC, primeiro certifique-se de que todos os daemons Samba4 em execução em seu sistema estejam parados e, também, renomeie o arquivo de configuração padrão do Samba para iniciar limpar. Ao provisionar o controlador de domínio, o samba criará um novo arquivo de configuração do zero.

systemctl stop samba-ad-dc smbd nmbd winbind
mv /etc/samba/smb.conf /etc/samba/smb.conf.initial

11. Para iniciar o processo de adesão ao domínio, primeiro inicie apenas o daemon samba-ad-dc, após o qual você executará o samba-tool comando para ingressar no domínio usando uma conta com privilégios administrativos em seu domínio.

samba-tool domain join your_domain DC -U "your_domain_admin"

Trecho de integração de domínio:

samba-tool domain join tecmint.lan DC -U"tecmint_user"
Saída de amostra
Finding a writeable DC for domain 'tecmint.lan'
Found DC adc1.tecmint.lan
Password for [WORKGROUP\tecmint_user]:
workgroup is TECMINT
realm is tecmint.lan
checking sAMAccountName
Deleted CN=ADC2,CN=Computers,DC=tecmint,DC=lan
Adding CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Adding CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding CN=NTDS Settings,CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding SPNs to CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Setting account password for ADC2$
Enabling account
Calling bare provision
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Provision OK for domain DN DC=tecmint,DC=lan
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[402/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1550/1550] linked_values[0/0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[402/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[804/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1206/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1608/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1614/1614] linked_values[28/0]
Replicating critical objects from the base DN of the domain
Partition[DC=tecmint,DC=lan] objects[97/97] linked_values[24/0]
Partition[DC=tecmint,DC=lan] objects[380/283] linked_values[27/0]
Done with always replicated NC (base, config, schema)
Replicating DC=DomainDnsZones,DC=tecmint,DC=lan
Partition[DC=DomainDnsZones,DC=tecmint,DC=lan] objects[45/45] linked_values[0/0]
Replicating DC=ForestDnsZones,DC=tecmint,DC=lan
Partition[DC=ForestDnsZones,DC=tecmint,DC=lan] objects[18/18] linked_values[0/0]
Committing SAM database
Sending DsReplicaUpdateRefs for all the replicated partitions
Setting isSynchronized and dsServiceName
Setting up secrets database
Joined domain TECMINT (SID S-1-5-21-715537322-3397311598-55032968) as a DC

12. Depois que o software Ubuntu com samba4 for integrado ao domínio, abra o arquivo de configuração principal do samba e adicione as seguintes linhas:

nano /etc/samba/smb.conf

Adicione o seguinte trecho ao arquivo smb.conf.

dns forwarder = 192.168.1.1
idmap_ldb:use rfc2307 = yes

   template shell = /bin/bash
   winbind use default domain = true
   winbind offline logon = false
   winbind nss info = rfc2307
        winbind enum users = yes
        winbind enum groups = yes

Substitua o endereço IP do encaminhador de DNS pelo seu próprio IP do encaminhador de DNS. O Samba encaminhará todas as consultas de resolução de DNS que estão fora da zona autoritativa do seu domínio para este endereço IP.

13. Finalmente, reinicie o daemon samba para refletir as alterações e verifique a replicação do diretório ativo executando os seguintes comandos.

systemctl restart samba-ad-dc
samba-tool drs showrepl

14. Além disso, renomeie o arquivo de configuração inicial do Kerberos do caminho /etc e substitua-o pelo novo arquivo de configuração krb5.conf gerado pelo samba durante o provisionamento. o domínio.

O arquivo está localizado no diretório /var/lib/samba/private. Use o link simbólico do Linux para vincular este arquivo ao diretório /etc.

mv /etc/krb5.conf /etc/krb5.conf.initial
ln -s /var/lib/samba/private/krb5.conf /etc/
cat /etc/krb5.conf

15. Além disso, verifique a autenticação Kerberos com o arquivo samba krb5.conf. Solicite um ticket para um usuário administrador e liste o ticket armazenado em cache emitindo os comandos abaixo.

kinit administrator
klist

Etapa 4: validações adicionais de serviços de domínio

16. O primeiro teste que você precisa realizar é a resolução do Samba4 DC DNS. Para validar a resolução DNS do seu domínio, consulte o nome do domínio usando o comando host em alguns registros AD DNS cruciais, conforme apresentado na captura de tela abaixo.

O servidor DNS deve ser reproduzido agora com um par de dois endereços IP para cada consulta.

host your_domain.tld
host -t SRV _kerberos._udp.your_domain.tld  # UDP Kerberos SRV record
host -t SRV _ldap._tcp.your_domain.tld  # TCP LDAP SRV record

17. Esses registros DNS também devem estar visíveis em uma máquina Windows inscrita com ferramentas RSAT instaladas. Abra o Gerenciador DNS e expanda para os registros TCP do seu domínio, conforme mostrado na imagem abaixo.

18. O próximo teste deverá indicar se a replicação LDAP do domínio funciona conforme o esperado. Usando a samba-tool, crie uma conta no segundo controlador de domínio e verifique se a conta é replicada automaticamente no primeiro Samba4 AD DC.

No adc2:
samba-tool user add test_user
Em adc1:
samba-tool user list | grep test_user

19. Você também pode criar uma conta em um console do Microsoft AD UC e verificar se a conta aparece em ambos os controladores de domínio.

Por padrão, a conta deve ser criada automaticamente em ambos os controladores de domínio samba. Consulte o nome da conta em adc1 usando o comando wbinfo.

20. Na verdade, abra o console AD UC no Windows, expanda para Controladores de Domínio e você deverá ver as duas máquinas DC inscritas.

Etapa 5: ativar o serviço Samba4 AD DC

21. Para ativar os serviços samba4 AD DC em todo o sistema, primeiro desative alguns daemons Samba antigos e não utilizados e ative apenas o serviço samba-ad-dc executando os comandos abaixo :

systemctl disable smbd nmbd winbind
systemctl enable samba-ad-dc

22. Se você administra remotamente o controlador de domínio Samba4 a partir de um cliente Microsoft ou possui outros clientes Linux ou Windows integrados ao seu domínio, certifique-se de mencionar o endereço IP do adc2 máquina às configurações de IP do servidor DNS da interface de rede para obter um nível de redundância.

As capturas de tela abaixo ilustram as configurações necessárias para um cliente Windows ou Debian/Ubuntu.

Supondo que o primeiro DC com 192.168.1.254 fique offline, inverta a ordem dos endereços IP do servidor DNS no arquivo de configuração para que ele não tente consultar primeiro um endereço indisponível Servidor dns.

Por fim, caso você queira realizar autenticação local em um sistema Linux com uma conta Samba4 Active Directory ou conceder privilégios de root para contas AD LDAP no Linux, leia as etapas 2 e 3 do tutorial Gerenciar infraestrutura AD Samba4 a partir da linha de comando do Linux.