completo e próximo a realidade. Aproveito então para mostrar a instalação e configuração do Samba 4 como Controlador primário e como Controlador Backup.
Como quase tudo nessa vida, é mais simples do que parece. Vamos utilizar o Debian 8 como base. Configure a rede com ip fixo, hostname “pdc” e FQDN “pdc.meudominio.local”.
Feito isso, baixe a ultima versão do Samba diretamente no site oficial.
Vamos começar?
Instalando as dependências:
[code type="Cole no terminal ROOT e pressione ENTER"]apt-get install gcc flex make gdb python-ldap python-dev libacl1-dev[/code
Descompacte os arquivos na sua home de root mesmo, entre na pasta e compile:
[code type="Cole no terminal ROOT e pressione ENTER"]./configure –enable-debug –enable-selftest[/code]
[code type="Cole no terminal ROOT e pressione ENTER"]make[/code]
[code type="Cole no terminal ROOT e pressione ENTER"]make install[/code]
Pronto! Samba 4 instalado. Agora você precisa criar seu domínio. Utilizamos a ferramenta “samba-tool” para isso. Por padrão, o samba 4 instalado dessa forma ficará com o path “/usr/local/samba”. Use o comando para provisionar seu domínio respondendo o que for solicitado. Atenção apenas na hora que ele solicitar o mecanismo de “DNS”, utilize o “samba internal”.
[code type="Cole no terminal ROOT e pressione ENTER"]/usr/local/samba/bin/samba-tool domain provision[/code]
Agora sim! Vamos testar?
Instale o pacote “dnsutils” via apt-get e digite os comandos abaixo para testar o funcionamento do seu samba 4 como “PDC”.
[code type="Cole no terminal ROOT e pressione ENTER"]host -t SRV _ldap._tcp.meudominiolocal[/code]
[code type="Cole no terminal ROOT e pressione ENTER"]host -t SRV _kerberos._tcp.meudominio.local[/code]
Não funcionou? Calma.. você precisa dar o start no serviço.
[code type="Cole no terminal ROOT e pressione ENTER"]/usr/local/samba/sbin/samba[/code]
Teste novamente.
Agora vamos ao “BDC”.
Apesar do trabalho incansável dos desenvolvedores, o samba ainda não possui todos os recursos do AD micro$oft. Questão de tempo, mas nada que não possa ser resolvido com o kit de ferramentas que temos disponíveis em nosso amado Pinguim.
Em outra máquina, instale as dependências e compile o samba da mesma forma que fizemos no “PDC”. O que muda aqui, é que agora vamos ingressar no domínio como controlador Backup. Utilizamos o “samba-tool” com parâmetros específicos pra isso.
[code type="Cole no terminal ROOT e pressione ENTER"]./samba-tool domain join meudominio.local DC Uadministrator –realm=meudominio.local –dns-backend=SAMBA_INTERNAL[/code]
###Não se esqueça de configurar sua rede e usar o PDC como servidor DNS. Isso deve ser feito para todas as máquinas que ingressarão no domínio###
Após isso, inicie o samba e use o comando abaixo para verificar se os controladores começaram a se falar.
[code type="Cole no terminal ROOT e pressione ENTER"]./samba-tool drs showrepl[/code]
A administração pode ser feita via samba-tool, porém isso fica pra outro post. Vamos utilizar as ferramentas de administração de servidor remoto. Instale no seu Windows 7 mesmo obtendo aqui.
Para gerenciar seu ad, sua máquina windows deve estar no domínio. Para isso ela deve estar na mesma rede do “PDC”, que deve ser apontado como DNS também.
Crie alguns usuários, “GPO”, “OU’s” e comece a modelar seu AD. Feito isso, vamos acertar um último detalhe. Repare que se você conectar no “BDC”, os usuários e a estrutura do seu AD estarão replicados, porém se você for mexer nas GPO’s do BDC, receberá a mensagem de “Arquivo não encontrado”.
O que ocorre é: As GPOS que você criar no “PDC” não são replicadas no BDC nativamente, portanto você precisa fazer isso na mão, neste caso, com “RSYNC” e “CRON”.
Instale o rsync via apt-get. Nos dois servidores.
Agora precisamos replicar a pasta “SYSVOL” que contém os arquivos das GPOS. O rsync cuidará disso tranquilamente, e o cron se encarrega de repetir a operação a cada 5 minutos para manter tudo sincronizado.
Como o Cron fará tudo sem nossa intervenção, precisamos configurar alguns parâmetros de autenticação e da pasta que será sincronizada. Para isso o rsync deverá rodar como DAEMON, o que pode ser feito no debian alterando o arquivo “/etc/default/rsync”, trocando a linha “RSYNC_ENABLE” de false para true.
# start rsync in daemon mode from init.d script?
# only allowed values are “true”, “false”, and “inetd”
# Use “inetd” if you want to start the rsyncd from inetd,
# all this does is prevent the init.d script from printing a message
# about not starting rsyncd (you still need to modify inetd’s config yourself).
RSYNC_ENABLE=true
Agora você pode startar o rsync como serviço, através do comando “#service rsync start”, mas não faça isso ainda. Para configurar o que pode ser sincronizado e a autenticação que o serviço aceitará para a tarefa, crie o arquivo “/etc/rsyncd.conf”.
Deixe ele assim:
[sysvol] path = /usr/local/samba/var/locks/sysvol/
comment = Samba Sysvol
uid = root
gid = root
read only = yes
auth users = sysvol-replication
secrets file = /usr/local/samba/etc/rsyncd.secret
##Parece um arquivo de configuração do samba né? Simples assim##
O que fizemos foi criar um compartilhamento rsync chamado “sysvol”, apontamos a pasta que queremos que seja replicada, e definimos um usuário a ser usado apenas para esse acesso, o “sysvol-replication” apontando o arquivo que contem a senha que deve ser aceita para a conexão. Deixe este arquivo no “etc do samba” para mantermos o ambiente organizado.
Crie o arquivo “/usr/local/samba/etc/rsyncd.secret” e ponha o seguinte conteúdo.
[code type="Conteúdo do arquivo"]sysvol-replication:SENHAs3cr3t4[/code]
##Sintaxe do arquivo, “nome do usuário” : “senha”##
Detalhe importante, só o root pode ler esse arquivo, portanto não esqueça de setar a permissão correta, senão o rsync não aceitará o arquivo.
[code type="Cole no terminal ROOT e pressione ENTER"]chmod 0400 rsyncd.secret[/code]
Nosso PDC está pronto para aceitar os pedidos de sincronização do SYSVOL via Rsync!
Vamos agora configurar nosso BDC para sincronizar de fato.
Primeiro, criamos o arquivo com a senha de autenticação no rsync remoto. Precisaremos disso para que o cron possa fazer o trabalho sozinho depois. Crie o arquivo “/usr/local/samba/etc/rsync-sysvol.secret” e coloque a senha que configuramos no PDC.
Arquivo: /usr/local/samba/etc/rsync-sysvol.secret
SENHAs3cr3t4
Configure a permissão correta. Só o root pode ler esse arquivo!
[code type="Cole no terminal ROOT e pressione ENTER"]chmod 0400 rsync-sysvol.secret[/code]
Teste a sincronização utilizando o parâmetro “–dry-run” do rsync. Cuidado com os Path’s, esse comando apaga tudo que tem na pasta e sincroniza com o sysvol do PDC, se você apontar o caminho errado, pode acabar perdendo algo importante!
rsync –dry-run -XAavz –delete-after –password-file=/usr/local/samba/etc/rsync-sysvol.secret rsync://This email address is being protected from spambots. You need JavaScript enabled to view it..1.2/sysvol/ /usr/local/samba/var/locks/sysvol/
##Estamos assumindo que você utilizou o Ip “192.168.1.2” no seu PDC##
Sem erros? Então podemos remover o “–dry-run” e inserir no cron. Acesse sua Cron tab [crontab -e] e insira a linha a seguir:
*/5 * * * * rsync -XAavz –delete-after –password-file=/usr/local/samba/etc/rsync-sysvol.secret rsync://This email address is being protected from spambots. You need JavaScript enabled to view it..1.2/sysvol/ /usr/local/samba/var/locks/sysvol/
Finalmente! Agora a cada 5 minutos seu BDC vai sincronizar as GPO’s que você criar no Ad!
Acompanhem as postagens na seção Free Bsd. Nos próximos Posts, vamos fazer um File server autenticado em nosso Ad Samba 4.
Espero que tenham gostado.
Deprecated: MPFInput implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home/ylliagdo/public_html/administrator/components/com_osmembership/libraries/mpf/input/input.php on line 23