Mudanças entre as edições de "Tutoriais"

De wikipmp
Ir para: navegação, pesquisa
(Criou página com ' == Introdução == A partir da versão 4.0, Samba é capaz de executar como um controlador de domínio do Active Directory (DC - AD). Se você estiver instalando Samba em um...')
 
(Página substituída por '== SAMBA - server DC ==')
Linha 1: Linha 1:
 
+
== SAMBA - server DC ==
== Introdução ==
 
 
 
A partir da versão 4.0, Samba é capaz de executar como um controlador de domínio do Active Directory (DC - AD). Se você estiver instalando Samba em um ambiente de produção, é recomendado para executar dois ou mais DCs por razões de failover. Esta documentação descrevendo como instalar e configurar SAMBA4 como o primeiro DC para construir uma nova floresta AD.
 
 
 
Com fins de organização e fácil compreendimento vou dividir esse tutorial em três partes.
 
 
 
;Informações básicas
 
* Sistema utilizado: Debian9 (Stretch) 64x
 
 
 
== Preparando o Sistema ==
 
 
 
* Instalação limpa do debian9 (netinstall) somente com servidor ssh.
 
 
 
* Edite os arquivos de host. Onde os mesmos devem conter o nome de domínio totalmente qualificado (FQDN) e o nome do host curto para o endereço IP da LAN da DC.
 
 
 
<code>/etc/hosts</code>:
 
<pre>127.0.0.1 localhost localhost.localdomain
 
192.168.1.1 DC1.dcserver.net DC1</pre>
 
 
 
Nota: DC1 (antes do .) tem que ser o nome da maquina.
 
 
 
<code>/etc/hostname</code>:
 
 
 
<pre>DC1</pre>
 
 
 
* Edite o arquivo o de interfaces para configurações estáticas. O ideal é que o servidor não sofra com modificações de DHCP.
 
 
 
<code>/etc/network/interfaces</code>:
 
 
 
<pre>iface eth0 inet static
 
address 192.168.1.1
 
netmask 255.255.255.0
 
gateway 192.168.1.254</pre>
 
 
 
* Edite o arquivo de resolução de nome contendo apenas o nome do domínio e seu IP e um DNS valido.
 
 
 
<code>/etc/resolv.conf</code>:
 
 
 
<pre>domain dcserver.net
 
nameserver 192.168.1.1
 
nameserver 8.8.8.8</pre>
 
 
 
* Instale os seguintes pacotes:
 
<code># apt install samba smbclient krb5-user winbind ntp libpam-winbind libnss-winbind</code>
 
 
 
 
 
== Configuração e Provisionamento ==
 
 
 
* Apoś concluir os passos acima, efetuar reboot paras configurações de hostname e IP entrarem em vigor. Verificar se todas as configurações anteriores estejam corretas para não haver problemas com o provisionamento.
 
 
 
* Remova os arquivos defult de configuração do Samba e Kerberos:
 
<code># rm /etc/samba/smb.conf</code>
 
 
 
<code># rm /etc/krb5.conf</code>
 
 
 
* Execute o provisionamento Samba:
 
 
 
<code># samba-tool domain provision --use-rfc2307 --interactive</code>
 
 
 
Onde:
 
<pre>Realm: DCSERVER.NET
 
Domain: DCSERVER
 
Server Role (dc, member, standalone) [dc]: dc
 
DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: SAMBA_INTERNAL
 
DNS forwarder IP address (write 'none' to disa ble forwarding) [192.168.1.1]: 8.8.8.8
 
Administrator password: Passw0rd
 
Retype password: Passw0rd</pre>
 
 
 
* No provisionamento foi criado um arquivo de configuração Kerberos no /var/lib/samba/private/krb5.conf, crie uma copia para /etc/krb5.conf.
 
<code># cp /var/lib/samba/private/krb5.conf /etc/</code>
 
 
 
* Kerberos requer um tempo sincronizado em todos os membros do domínio.
 
 
 
:: Mude as permissões das pastas:
 
 
 
<code># ls -ld /var/lib/samba/ntp_signd/</code>
 
<pre>Resultando antes da modificação:
 
drwxr-x--- 2 root root 4096 mai 24 11:21 /var/lib/samba/ntp_signd/</pre>
 
 
 
<code># chown -R root:ntp /var/lib/samba/ntp_signd/</code>
 
 
 
<code># ls -ld /var/lib/samba/ntp_signd/</code>
 
 
 
<pre>Resultando depois da modificação
 
drwxr-x--- 2 root ntp 4096 mai 24 11:21 /var/lib/samba/ntp_signd/</pre>
 
 
 
:: Edite o arquivo <code>/etc/ntpd.conf</code>
 
 
 
<pre># Local clock. Note that is not the "localhost" address!
 
server 127.127.1.0
 
fudge  127.127.1.0 stratum 10
 
 
 
# Where to retrieve the time from
 
server 0.pool.ntp.org    iburst prefer
 
server 1.pool.ntp.org    iburst prefer
 
server 2.pool.ntp.org    iburst prefer
 
 
 
driftfile      /var/lib/ntp/ntp.drift
 
logfile        /var/log/ntp
 
ntpsigndsocket  /var/lib/samba/ntp_signd/
 
 
 
# Access control
 
# Default restriction: Allow clients only to query the time
 
restrict default kod nomodify notrap nopeer mssntp
 
 
 
# No restrictions for "localhost"
 
restrict 127.0.0.1
 
 
 
# Enable the time sources to only provide time to this host
 
restrict 0.pool.ntp.org  mask 255.255.255.255    nomodify notrap nopeer noquery
 
restrict 1.pool.ntp.org  mask 255.255.255.255    nomodify notrap nopeer noquery
 
restrict 2.pool.ntp.org  mask 255.255.255.255    nomodify notrap nopeer noquery</pre>
 
 
 
* Configurando o Winbindd para autenticação.
 
 
 
:: Edite o arquivo <code>/etc/samba/smb.conf</code> acrescentando na seção [global].
 
 
 
<pre>template shell = /bin/bash
 
template homedir = /home/%U</pre>
 
 
 
* Habilite a biblioteca de chave de serviço de nome (NSS) para tornar usuários e grupos de domínio disponíveis para o sistema local:
 
 
 
:: Edite o arquivo <code>/etc/nsswitch.conf</code> somente nos bancos de dados descritos abaixo.
 
 
 
<pre>passwd: files winbind
 
group:  files winbind</pre>
 
 
 
* Verifique se o link das bibliotecas foram devidamente criados.
 
 
 
:: PAM_WINBIND
 
<code>/lib/x86_64-linux-gnu/security/pam_winbind.so</code>
 
 
 
:: LIBNSS_WINBIND
 
<code># ln -s /lib/x86_64-linux-gnu/libnss_winbind.so.2 /lib/x86_64-linux-gnu/libnss_winbind.so</code>
 
<code># ldconfig</code>
 
 
 
 
 
 
 
== Teste de Funcionameto ==
 
 
 
Reinicie os serviços ou reboot na maquina. O samba não inicia juntamente com o sistema. "Chame" o <code>samba</code> antes de efetuar os testes. Os resultados dos testes devem ser semelhantes ao mostrados abaixo.
 
 
 
* Teste se o DC esta funcionando:
 
<code># smbclient -L localhost -U%</code>
 
 
 
Resultado:
 
<pre>Domain=[DCSERVER] OS=[Windows 6.1] Server=[Samba 4.5.8-Debian]
 
 
 
Sharename      Type      Comment
 
---------      ----      -------
 
netlogon        Disk     
 
sysvol          Disk     
 
IPC$            IPC      IPC Service (Samba 4.5.8-Debian)
 
Domain=[DCSERVER] OS=[Windows 6.1] Server=[Samba 4.5.8-Debian]
 
 
 
Server              Comment
 
---------            -------
 
 
 
Workgroup            Master
 
---------            -------
 
WORKGROUP            DEVAPP</pre>
 
 
 
* Teste a autenticação DC:
 
<code># smbclient //localhost/netlogon -UAdministrator -c 'ls'</code>
 
 
 
Resultado:
 
<pre>Enter Administrator's password:
 
Domain=[DCSERVER] OS=[Windows 6.1] Server=[Samba 4.5.8-Debian]
 
  .                                  D        0  Wed May 24 10:51:37 2017
 
  ..                                  D        0  Wed May 24 10:51:45 2017
 
 
 
15415240 blocks of size 1024. 13580456 blocks available</pre>
 
 
 
* Teste se a configuração DNS do Active Directory (AD) funcionam corretamente, consulte alguns registros DNS:
 
<code># host -t SRV _ldap._tcp.dcserver.net.</code>
 
 
 
Resultado:
 
<pre>_ldap._tcp.dcserver.net has SRV record 0 100 389 dc1.dcserver.net.</pre>
 
 
 
* Teste o registro de recurso _kerberos SRV baseado no udp no domínio:
 
<code># host -t SRV _kerberos._udp.dcserver.net.</code>
 
 
 
Resultado:
 
<pre>_kerberos._udp.dcserver.net has SRV record 0 100 88 dc1.dcserver.net</pre>
 
 
 
* Teste  o registro A do controlador de domínio:
 
<code># host -t A dcserver.net</code>
 
 
 
Resultado:
 
<pre>dcserver.net has address 192.168.1.1</pre>
 
 
 
* Teste Kerberos, conta domain administrator.
 
<code># kinit administrator</code>
 
 
 
Resultado:
 
<pre>Password for administrator@DCSERVER.NET:
 
Warning: Your password will expire in 41 days on qua 05 jul 2017 10:51:46 -03</pre>
 
 
 
* Teste liste os tickets em cache do Kerberos:
 
<code># klist</code>
 
 
 
Resultado:
 
<pre>Ticket cache: FILE:/tmp/krb5cc_0
 
Default principal: administrator@DCSERVERPMP.NET
 
 
 
Valid starting      Expires              Service principal
 
24-05-2017 11:39:08  24-05-2017 21:39:08  krbtgt/DCSERVERPMP.NET@DCSERVERPMP.NET
 
renew until 25-05-2017 11:39:03</pre>
 
 
 
 
 
 
 
SHOW!
 

Edição das 16h13min de 16 de abril de 2018

SAMBA - server DC