Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Um novo horizonte
Historia
Tudo comeou em 1983, quando a IBM e a Sytec co-desenvolveram um sistema de rede simples
projetado para a construo de pequenas redes locais. O sistema era baseado numa API para
comunicao em redes chamada NetBIOS, ou Network Basic Input Output System, isto , Sistema
Bsico de Rede de Entrada/Sada.
Foi incluso no NetBIOS um esquema de endereamento que usava nomes de 16 bytes para
identificar estaes de trabalho e aplicaes habilitadas para rede. Em seguida, a Microsoft
adicionou recursos para o DOS que permitia o disco I/O ser redirecionado para a interface NetBIOS,
o que permitiu que o espao em disco fosse compartilhvel atravs da LAN. O protocolo de
compartilhamento de arquivos ficou conhecido como SMB, e agora, CIFS.
Em 1985, o protocolo foi expandido, dando origem ao protocolo NetBEUI, que foi durante muito
tempo o principal protocolo usado em redes locais, antes da popularizao do TCP/IP. O SMB
(Server Message Block) veio mais tarde, junto com o Windows 3.11. O protocolo SMB faz o
compartilhamento de arquivos e impressoras em redes Microsoft, incluindo a navegao na rede, o
estabelecimento de conexes e a transferncia de dados. Ele utiliza o NetBIOS para a troca de
mensagens entre os hosts e inclui uma verso atualizada do protocolo, que roda sobre o TCP/IP.
Andrew Tridgell, um australiano que na poca era estudante do curso de PhD em Cincias da
Computao da Universidade Nacional da Austrlia, precisava rodar um software chamado
eXcursion, no DEC, empresa que trabalhava, para interagir com o Patchworks, um software de
compartilhamento de arquivos. O Patchworks era um software proprietrio, que utilizava um
protocolo obscuro, sobre o qual no existiam muitas informaes disponveis.
Como todo bom hacker Andrew_tridgell decidiu estudar o protocolo e assim desenvolver um
servidor que pudesse rodar em seu PC. Ele desenvolveu ento um sniffer chamado clockspy que
era capaz de examinar o trfego da rede e fez engenharia reversa no protocolo SMB e o
implementou no Unix. Isso fez com que no servidor Unix aparecesse como um servidor de arquivos
Windows em seu PC com DOS. Com isso, ele foi rapidamente capaz de implementar o suporte s
principais chamadas e a desenvolver um programa servidor que era capaz de conversar com os
clientes rodando o Patchworks. O objetivo desta primeira verso era apenas resolver um problema
domstico: interligar um computador rodando o MS-DOS ao servidor rodando o Solaris.
O projeto comeou a se tornar popular a partir da verso 1.6.09, que foi a primeira a trazer suporte
ao controle de acesso com base nos logins de usurio (assim como o Windows NT), enquanto as
verses anteriores suportavam apenas o controle de acesso com base no compartilhamento (assim
como no Windows 3.11 e 95), onde a nica opo de segurana era usar uma senha de acesso para
os compartilhamentos. Para a poca, foi um avano extraordinrio visto que tudo o que o samba
oferecia, supria os servios oferecidos pela Microsoft.
No entanto, em 1999 a Microsoft lanou o Active Directory que implementado pela primeira vez
no Microsoft Windows 2000 Server Edition e com melhorias significativas no Microsoft Windows
Server 2003 e 2003 R2 e mais tarde no Windows Server 2008 e 2008 R2.
Com isto, surgiu o desafio da comunidade que desenvolvia o Samba na poca (e que
desenvolve at hoje), a criar uma implementao de servio de diretrio usando um
protocolo compatvel com o LDA que armazenasse informaes sobre objetos na rede e
ao mesmo tempo disponibilizasse essas informaes a usurios e administradores da
mesma rede.
O problema que no havia interesse por parte da Microsoft em compartilhar o RFC (Request for
Comments), isto , o documento que descreve os padres de cada protocolo de Internet antes de
serem considerados de fato um padro como fora feito com o protocolo LDAP por exemplo. Com
isto, a comunidade que desenvolve o Samba no fazia ideia de como o AD funcionava. Basicamente,
teriam que pesquisar anos a fio e colocar mais sniffers em rede, fazer engenharia reversa e mais
uma vez demorar anos e anos em desenvolvimento para criar uma soluo alternativa ao AD.
Usando destes recursos ento a comunidade comea a escrever uma nova verso ps a 3.6 do
Samba em 2011. A verso 3.6 j trabalhava com o protocolo LDAP usando o OpenLDAP e o
Kerberos em separado para alimentar as funcionalidades do Samba para que pudessem obter
funcionalidades prximas ao AD.
Depois de anos de desenvolvimento, a o que seria supostamente a verso 3.7 do Samba no chega
nem a ser lanado e descontinuado visto que em 2012, momento em que o Samba ainda estava
em desenvolvimento, a Microsoft libera o RFC 1823 do LDAP, e o RFC 2307,3062,4533 e a
comunidade desiste do desenvolvimento da nova verso do Samba e resolvem reescreve-lo do
zero.
Nasce o Samba 4.0. O Samba 4 compreende um servidor de diretrio LDAP, um servidor de
autenticao Kerberos, um servidor DNS dinmico e implementaes de todas as chamadas de
procedimento remoto necessrios para o Active Directory. Ele fornece tudo que necessrio para
servir como um Active Directory Domain Controler compatvel com todas as verses de clientes
Microsoft Windows atualmente suportados pela Microsoft, incluindo o Windows 8. O Samba agora
permite implementar mecanismos de compartilhamento de arquivos e impressoras, sendo assim
possvel o acesso a recursos do Windows a partir do GNU/Linux.
Possibilidades com Samba4:
Criar um AD Completo
Criar um controlador de domnio Principal
Criar um Controlador de domnio somente leitura (RODC)
Criar um Controlador de domnio Adicional
Pode ser administrado usando interface Grfica do prprio Windows , como Usurios e
computadores do Active Directory.
Posso Migrar de forma fcil de AD Windows para um AD Linux e vice versa.
possvel trabalhar com perfil mvel
Trabalhar com Pasta Base
Lixeira de Servidor de Arquivos (Tipo copia de Sombra)
Auditoria de Acesso
Trabalhar com permisses como a do Windows
Trabalhar com GPO
Fazer replicao de Servidores (TIPO DFS)
Trabalhar com dados em camadas
Triagem de Arquivos (Proibir gravao de arquivos pela extenso)
No precisa de CALs de acesso para as estaes
Posso fazer o SAMBA 4 trabalhar como controlador de domnio adicional do Windows server e
vice versa.
J vem com DNS , kerberos, LDAP integrado.
Posso fazer a integrao do SAMBA 4 com o proxy Squid, pfSense e etc
Adicionar usurios e configuraes via linha de comando de maneira muito mais interativa e
rpida.
Histrico de Verses
A primeira verso a usar o nome Samba, foi a 1.6.05, que foi a sucessora imediata do smbserver
1.6.4. O projeto anterior Criar um AD Completo
Criar um controlador de domnio Principal
Criar um Controlador de domnio somente leitura (RODC)
Criar um Controlador de domnio Adicional
Pode ser administrado usando interface Grfica do prprio Windows , como Usurios e
computadores do Active Directory.
Posso Migrar de forma fcil de AD Windows para um AD Linux e vice versa.
possvel trabalhar com perfil mvel
Trabalhar com Pasta Base
Lixeira de Servidor de Arquivos (Tipo copia de Sombra)
Auditoria de Acesso
Trabalhar com permisses como a do Windows
4.0 Esta verso introduz o aguardado suporte para a tecnologia Microsoft Active Directory atravs
da implementao de uma combinao de um servidor de diretrio LDAP, um servidor de
autenticao Heimdal Kerberos, um servio DNS dinmico (atravs do seu prprio servidor DNS ou
plugin BIND) e todo o procedimento de chamadas remotas necessrias para cumprir a funo de
um controlador de domnio do Active Directory (Active Directory Domain Controller) de todas as
verses suportadas do Windows, incluindo o Windows 8.
O Samba 4 fornece polticas de grupo (Group Policies Object), perfis mveis (Roaming
Profiles) e outros recursos para administrar sistemas em um domnio do Windows, bem
como integrao com servidores Exchange e alternativas compatveis em cdigo aberto.
O suporte do Samba ao Active Directory completamente transparente para os clientes,
o que significa que um controlador de domnio baseado em Samba pode ser integrado a
domnios do Active Directory existentes.
Conceitos iniciais
Das muitas tecnologias de redes, uma das mais conhecidas para redes de computadores,
especialmente aquelas que usam de forma homognea o sistema operacional Windows, o Active
Directory. Por questes de praticidade e segurana, muitas redes de computadores que rodam o
Windows, so configuradas com AD, mas isso originalmente implicava na utilizao nica e
exclusiva de sistemas operacionais em toda a rede envolvida ou pelo menos no servidor cujas
licenas sempre foram muito mais onerosas do que as verses de Windows para estaes de
trabalho. O SAMBA sempre buscou a interoperabilidade na comunicao entre sistemas
heterogneos.
Segundo a Microsoft, o Active Directory (AD) um servio de diretrio desenvolvido pela empresa
para o domnio das redes Windows e est includo na maioria dos sistemas operacionais Windows
Server como um conjunto de processos e servios. Esta tecnologia permite aos usurios de uma
rede de computadores trabalharem usando entradas personalizadas de usurio e senha, no
importando se o usurio decidir usar outro computador, suas configuraes e arquivos pessoais
podero ser acessados, desde que tais mquinas estejam dentro de um mesmo domnio controlado
por um servidor.
AD um controlador de domnio que autentica e autoriza todos os usurios e computadores em
uma rede de tipo domnio do Windows, atribui e aplica as polticas de segurana para todos os
computadores autenticados, como instalao e atualizaes de software. O AD usado em
empresas com redes Windows, nas quais os administradores de redes escolheram utilizar este
recurso como forma de centralizar a administrao dos recursos, bem como da segurana.
Como facilidade, ele armazena centralmente os dados de usurios e computadores, permitindo que
os usurios tenham apenas uma senha para acessar todos os recursos disponveis na rede. O
diretrio tambm pode ser utilizado para compartilhamento de arquivos, impressoras,
gerenciamento de atualizaes de estaes de trabalho atravs do WSUS (Windows Server
Update Services), tudo em um console simples e gerencivel.
Quando um usurio faz logon em um computador que faz parte de um domnio de rede, o AD
verifica a senha apresentada e determina se o usurio um administrador de sistema ou um
utilizador normal. Uma instncia do AD consiste em um banco de dados e o correspondente cdigo
executvel responsvel pelo atendimento de pedidos e a manuteno do banco de dados. A parte
executvel chamada de Directory System Agent (DSA), que uma coleo de servios do
Windows e processos que so executados no Windows 2000 e verses posteriores.
Os objetos no bancos de dados do AD podem ser acessados atravs do protocolo LDAP, o ADSI
(interface dos COMs (Component Object Model) ) e dos servios da APIs de mensagens e o
Gerenciador de Contas de Segurana.
No Active Directory so encontrados objetos, florestas, arvores, domnios, partioes, esquemas e
unidades organizacionais (similares a pastas). Uma estrutura de AD um arranjo de informaes
sobre objetos. Os objetos se dividem em duas categorias principais:
Recursos: Hardware em uma rede ex.: Impressoras
Entidades de segurana: Entidades puramente lgicas ex.: Contas de usurio ou grupos.
Para cada entidade de segurana so atribudos security identifiers (SIDs) nicos. Cada objeto
representa uma nica entidade: um usurio, um computador, uma impressora ou um grupo e seus
atributos, e certos objetos podem conter outros objetos.
Dentro de uma implantao, os objetos so agrupados em domnios. Os objetos para um nico
domnio so armazenados em uma nica base de dados (que podem ser replicados). Os domnios
so identificados pelo seu o namespace (nome no DNS). Um domnio definido como um grupo
lgico de objetos de rede (usurios, dispositivos) que compartilham o mesmo banco de dados AD.
Uma rvore uma coleo de um ou mais domnios, e rvores de domnio em um namespace
contnuo, vinculados em uma hierarquia de confiana transitiva. Uma floresta uma coleo de
rvores que compartilham um catlogo global comum, esquemas de diretrio, estruturas lgicas e
a configurao do diretrio. A floresta representa o limite de segurana dentro do qual os usurios,
computadores, grupos e outros objetos so acessveis.
O banco de dados do AD est organizado em parties, cada um armazenando tipos de objetos
especficos e seguindo um padro de replicao. A partio schema contm a definio de classes
de objetos e atributos dentro da Floresta. A partio Configuration contm informaes sobre a
estrutura fsica e de configurao da floresta (como a topologia fsica). Ambos replicam para todos
os domnios da floresta. A partio do domnio detm todos os objetos criados nesse domnio e
replica somente dentro de seu prprio domnio.
Os objetos mantidos dentro de um domnio podem ser agrupados em Organizational Units (OUs).
OUs o nvel recomendado de a aplicao de polticas de grupo, que so objetos do AD chamados
formalmente Group Policy Objects (GPOs), embora as polticas tambm podem ser aplicadas a
domnios ou sites. A UO o nvel em que os poderes administrativos so comumente delegados,
mas a delegao pode ser executada com os objetos individuais ou com os atributos tambm.
Compartilhamento de arquivos
Uma das caractersticas mais poderosas do Samba a sua capacidade de compartilhar arquivos e
pastas entre o servidor e o cliente. De forma simplificada, para compartilharmos uma pasta e\ou
arquivo no Samba4, basta criarmos alguns parmetros simples no smb.conf e\ou usar algum client
grfico, ambiente facilitador para tal. No entanto, como este artigo focado em administradores,
logo, faremos tudo por linha de comando:
# Por exemplo, crie uma pasta
mkdir ~/pasta
Neste momento, j podemos acessar o diretrio usando o Microsoft Windows em nosso domnio
(por exemplo, como administrador) e configurar todas as permisses que quisermos. Alm disso,
usurios e grupos podem diretamente acessar o compartilhamento criado. Como Samba 4
compatvel com o Active Directory, no precisa usar qualquer modelo antigo para restringir o
acesso do usurio no arquivo smb.conf. Mais a frente nesta documentao, veremos
detalhadamente como feito o compartilhamento entre diretrios, arquivos, impressoras, com
permisses e muito mais.
O Windows for WorkGroups foi o primeiro sistema da Microsoft a adotar o SMB/CIFS. Como o
protocolo predominante foi o TCP/IP e para a resoluo de nomes a Microsoft teve que adotar o
DNS (Domain Name System) e com que SMB tivesse que ser executado diretamente sobre o
protocolo TCP/IP na modalidade denominada hosting direto (utiliza-se TCP e UDP na porta 445).
Portanto, em redes Windows, o SMB/CIFS se transformou em um padro para a manipulao de
arquivos entre mquinas.
O SMB, que significa Server Message Block, um protocolo para compartilhamento de arquivos,
impressoras, portas seriais e abstraes de comunicao. O SMB um protocolo cliente-servidor. O
diagrama a baixo, ilustra a maneira pela qual funciona SMB. Os servidores disponibilizam sistemas
de arquivos e outros recursos (impressoras, processadores de mensagens, pipes) disponveis para
os clientes da rede. Os computadores clientes podem ter seus prprios discos rgidos, mas eles
tambm querem o acesso aos sistemas de arquivos compartilhados e impressoras nos servidores.
Basicamente o cliente se conecta ao servidor que utiliza o protocolo TCP/IP (na verdade, se conecta
ao NetBIOS sobre o TCP/IP, conforme especificado no RFC1001 e RFC1002), NetBEUI ou IPX/SPX.
Depois de terem estabelecido uma conexo, o cliente pode, em seguida, enviar comandos (SMBs)
para o servidor o que lhe permite abrir arquivos, ler e escrever. possvel fazer todo o tipo de coisa
dentro de um servidor de arquivos. No entanto, no caso do SMB, estas coisas so feitas atravs da
rede.
O protocolo SMB embora tenha outras funes associadas a ele, primordialmente tem como
funcionalidade o compartilhamento de arquivos. Mas possvel tambm o compartilhamento de
impressoras e definir nveis de segurana e autenticao. Por ser muito usado nos sistemas
operacionais da Microsoft a verso do SMB, denominado SMB/CIFS, um protocolo muito comum
em diversos tipos de mquinas e sistemas para o compartilhamento de arquivos.
O SMB pela perspectiva do Modelo OSI est na camada de aplicao e utiliza nomes de
at 15 caracteres para definir endereos de mquina em uma rede. A Microsoft chegou
ainda a desenvolver o SMB2 juntamente com o lanamento do Windows Vista.
No mercado de hoje nossos negcios precisam ter informaes rpidas, de fcil atualizao, alta
disponibilidade e principalmente muita segurana e o Active Directory pode nos oferecer todos
estes atributos e muito mais
O Active Directory assumiu o mercado de servios de diretrio pelo seu desempenho, segurana e
principalmente disponibilidade, o Active Directory esta no mercado desde o lanamento do
Windows 2000 Server, aps o seu nascimento assumiu a liderana dos servios de diretrio,
utilizando como base o LDAP e a comunicao atravs de replicao lanou vrios atributos e
principalmente ferramentas para facilitar o gerenciamento de informaes nas empresas.
Hoje quando criamos um usurio para logar no domnio de nossa empresa, estamos utilizando um
servio de diretrio e por consequncia usando o Active Directory. Abaixo temos uma figura para
demonstrar todos os recursos que o Active Directory pode utilizar como servio de diretrio de sua
empresa:
A cima, comparamos o AD com uma agenda, o AD fisicamente tambm tem um banco de dados,
este banco conhecido com NTDS.dit e esta localizado na pasta %SystemRoot%\NTDS\ntds.dit em
uma instalao default do AD. Este diretrio chamado de NTDS apenas existir nos servidores que
tenham a funo de Domain Controllers (DCs). Neste diretrio existiro os arquivos relacionados
abaixo. Durante o processo de instalao do Active Directory da Microsoft, so criados cinco
arquivos:
Ntds.dit - Arquivo de banco de dados do AD
Edb.log - Arquivo onde so armazenados todas as informaes de log das transaes feitas no
AD.
Edb.chk - Arquivo de checkpoint controla transaes no arquivo Edb.log j foram comitadas no
arquivo Ntds.dit.
Res1.log - Arquivo de reserva assegura que alteraes sejam gravadas na base(Ntds.dit) no
caso de falta de espao em disco.
Res2.log - Arquivo de reserva assegura que alteraes sejam gravadas na base(Ntds.dit) no
caso de falta de espao em disco.
Bem, agora sabemos que a estrutura lgica do AD gravada em uma base de dados fsica chamada
de Ntds.dit, porm Domain Controller Active Directory? Claro que no, no desenho abaixo
demonstramos claramente a diferena entre AD (estrutura lgica do AD) e DC (Servidor que
contm uma cpia do NTDS.dit do AD). No desenho abaixo imaginemos uma construo, estamos
construindo um grande salo de festas. Imaginem que nosso teto (retngulo azul) nosso Active
Directory, porm precisamos apoiar este teto em pilares (cilindros vermelhos), caso contrrio nosso
teto ir desabar, certo?
isto mesmo, o Active Directory a estrutura lgica (teto), e os DCs so servidores fisicos
(pilares), por isto a necessidade de termos muitos DCs espalhados. Assim nosso AD mesmo na
falha de um DC (pilar) ou vrios DCs ainda conseguir responder as solicitaes e pedidos de nossa
infraestrutura.
Isto s possvel porque cada servidor quando recebe a funo de Domain Controller, herda a
criao do diretrio %SystemRoot%\NTDS\ e toda a estrutura comentada acima. Todos os dados
criados originalmente so replicados para o novo DC criado. Assim em um AD (domnio) com trs
DCs como na figura abaixo, todos os Dcs esto atualizados com todos os dados igualmente, isto
recebe o nome de replicao do Active Directory.
O Servio de Diretrio do AD divido em duas estruturas a estrutura lgica e a estrutura fsica, o
conhecimento pleno sobre a estrutura do AD muito importante, principalmente quando maior for
sua estrutura. Nestas explicaes informaremos algumas ferramentas que podem auxiliar na
verificao deste processo, vale lembrar que estamos focando as explicaes no Active Directory
do Windows Server 2008 R2, porm estas explicaes podero ser utilizadas em qualquer uma das
verses de Active Directory, nos prximos artigos falaremos das evolues para as futuras verses.
Quando falamos de estrutura lgica do Active Directory, muitos termos so falados, a estrutura
lgica do AD consiste em Objetos, Unidades Organizacionais, Domnio, rvores de Domnio e
Floresta. Utilizamos a estrutura lgica do AD para podermos gerenciar os objetos dentro da
organizao. J os objetos, so os componentes mais bsicos da estrutura lgica e representam,
usurios, computadores e impressoras.
No caso do OU (Unidades Organizacionais), um objeto de container, utilizado para organizar
outros objetos. A organizao pode ser feita de vrias formas. Geogrfica Onde as OUs
representam Estadas ou Cidades de sua estrutura fsica Exemplo: OU SP - OU RJ Setorial Onde as
OUs representam setores da estrutura fsica da empresa, por unidade de negcio. Exemplo: OU
Administrativo OU Produo Departamental Onde as OUs representam setores da estrutura
fsica da empresa por departamento. Exemplo: OU RH OU DP OU Caldeira Hbrido Modelo
onde podemos interagir todos os modelos acima, na Figura abaixo temos um modelo disto.
O domnio a estrutura mais importante do Active Directory e tem 2 funes principais.
Fecham um limite administrativo para objetos. Quem esta fora no entra, quem esta dentro no sai, claro que
esta regra pode sofrer alterao media/sambante permisses de entrada e sada, como relaes de confiana.
Gerenciam a segurana de contas e recursos dentro do Active Directory
Vale lembrar que um domnio do Active Directory compartilham:
Mesmo banco de dados Ntds.dit com cada Domain Controller dentro deste domnio.
Diretivas de segurana.
Relaes de Confiana com outros domnios.
Quando precisamos criar um segundo domnio, na maioria das vezes por necessidades no processo
de segurana temos o que chamamos de domnios filhos. Quando temos um domnio pai com seus
domnios filhos, chamamos de rvore de domnio, pois dividem o mesmo sufixo DNS, porm em
distribuio hierrquica. Abaixo colocamos um exemplo para ilustrar nossa explicao.
Criamos o domnio livemotion.local (Figura esquerda abaixo), para podermos configurar diretivas
de segurana, em um dado momento, precisamos criar um domnio novo, que tenha acesso aos
recursos do domnio livemotion.local, porm tenha suas prprias necessidades de segurana
(Figura direita abaixo).
Conforme as figuras acima, podemos ver que quando temos um domnio filho,
imedia/sambatamente estamos vinculados a um domnio pai, e esta diviso hierrquica de nome
chamamos de rvore de Domnios.O primeiro domnio de uma Floresta, chamamos de Root
Domain, a Floresta receber o nome deste domnio, a floresta pode ser feita de um nico domnio
com tambm estar dividida com vrias rvores dentro da mesma floresta.
Quando falamos de estrutura fsica do Active Directory, alguns termos so utilizados, a estrutura
fsica do AD consiste em Domain Controllers e Sites. A estrutura fsica do AD totalmente
independente da estrutura lgica do AD. A estrutura fsica responsvel por otimizar o trfego de
rede e manter segurana em locais fsicos distintos. Um Domain Controller ou DC tem a funo de
executar o Active Directory e tambm armazenar a base do Active Directory bem como Replicar
esta base alteraes com outros DCs.
Quando falamos de rvores de Domnio ou at mesmo Floresta, vale lembrar que um DC pode
apenas suportar um nico domnio. Para criar uma disponibilidade do Active Directory podemos ter
mais de um DC, sendo assim num exemplo de 2 Dcs temos a base do Active Directory sendo
replicada de forma perfeita entre os dois Dcs. A base do Active Directory o NTDS.dit divido em
parties, conforme a figura demonstrada abaixo:
Estas parties formam o arquivo NTDS.dit, este replicado entre cada um dos DCs de seu
domnio, consequentemente o arquivo replicado para cada DC, tendo todos os Dcs sincronizados
logo teremos um Active Directory saudvel e que pode suprir a falha de um DC, sem afetar o
servio de diretrio do domnio.
Instalao do virtualbox
Caso instale a partir do Microsoft Windows, visite o site oficial do Virtualbox para efetuar o
download do binrio.
Nota: comum ter algum tipo de problema na hora de rodar o virtualbox. Preste ateno
mensagem de erro caso ocorra, e busque no google a soluo. Caso no encontre, por
favor me envie um e-mail caso necessrio. Se houver necessidade de explicar como sanar
o possvel erro, agrego a soluo a este documento.
importante lembrar tambm que voc ter que alterar a configurao de rede do
VirtualBox de NAT para modo bridge visto que precisaremos colocar um ip esttico (fixo)
para criar nosso servidor de domnio primrio com samba4.
Instalao do Debian
Voc poder tentar em verses anteriores do qual estiver melhor famialiarizado. Estarei me
baseando no Debian Jessie 8 amd64 no entanto. Para instalar o Debian com conhecimento
seguro, basta novamente acessar a documentao que explica passo-a-passo (inclusive em
portugus do Brasil) https://www.debian.org/releases/stable/amd64/. Se deseja uma abordagem
simplria dos passos de instalao, acompanhe a baixo:
Voc poder escolher entre Graphical Install e Install (em modo terminal). Pressupondo que estou a
instalar em um ambiente virtual (como o virtualbox) e para um servidor, logo, a melhor escolha
neste caso a primeira opo:
O Debian ir avanar para o instalador. As primeiras opes exigir que o usurio selecione o tipo
de teclado e localizao. O prximo passo definir nome de seu computador e permitir que o
instalador configure uma conexo de rede para acesso aos repositrios:
Ps a configurao do hostname, voc ter que definir seu domnio por exemplo,
seudominio.com.br. Em seguida, voc ir criar uma senha de usurio root. Certifique-se de no
esquecer esta senha, pois no um processo divertido tentar recuperar a senha de root caso seja
descuidado:
Aps a configurao do usurio root, ser exigido a configurao da senha de usurio. Isso deve ser
algo diferente do root para fins de segurana:
Depois que os usurios root e usurio normal foram definidos, o instalador ir tentar baixar alguns
pacotes dos repositrios e, como tal, uma conexo de rede muito til (no entanto, no
obrigatrio e caso no exista conexo, o sistema bsico ser instalado independentemente).
Agora o instalador ir pedir que voc defina o esquema de partio para ser utilizado neste
sistema. Para nosso caso, iremos usar a primeira opo. No entanto, se voc usurio avanado, j
saber o que fazer a partir deste momento. interessante que o usurio iniciante d uma lida
sobre LVM e uma estudada sobre mtodos de particionamento de disco:
A prxima etapa ir perguntar ao usurio para confirmar as alteraes de partio, escrever as
alteraes para o disco, e iniciar o processo de instalao dos arquivos da base de instalao
Debian. Se as mudanas parecem bem e o espao partio root e swap forem criados
corretamente, clique em Finish partitioning and write changes to the disk.
Neste ponto, o instalador lhe sugere pacotes extras para terminar a instalao do Debian.
Tratando-se de um servidor, no h a menor necessidade de embiente grfico. Portanto, basta
apenas o standard system utilities, web server, print server e SSH server:
Instalando o Samba
apt-get install attr acl krb5-user ntp
Deixe as respostas padro na configurao do Kerberos. Apenas atentando para a primeira
pergunta Reino por omisso do Kerberos, informe seu domnio em letras maisculas.
Por padro o Debian no vem com suporte a ACL ento refina isto na partio / atravs do
comando a baixo:
vim /etc/fstab
interessante reconfigurar o seu sistema de arquivos caso seja ext3 ou ext4 para rodar o samba
com compatibilidade com as acls, sistema de segurana contra falhas de sobrecarga entre outros.
Para isso, altere sua configurao de modo parecido com o abaixo (no copie e cole esta linha pois,
cada mquina tem uma configurao de UUID diferente). Localize a varivel errors na rea pass, e
acrescente o user_xattr, acl,barrier como a baixo:
UUID=3e0fbcf1-4eb5-4654-a5de-4775de85fc09 / ext4 user_xattr,acl,barrier=1,errors=remount-ro 0 1
auto eth0
iface eth0 inet static
# coloque o ip correspondente a sua rede local
address 192.168.1.100
netmask 255.255.255.0
# verifique seu gateway e coloque aqui
gateway 192.168.1.1
dns-nameserver 192.168.1.1
dns-search seudominio.com.br
Nota: Caso tenha dificuldade para compreender como funciona a interface de rede, d
uma lida neste material configurao da interface de rede no linux.
Reinicie a interface
service networking stop && sleep 2 && service networking start
#ou
/etc/init.d/networking restart
Configure o DNS:
vim /etc/resolv.conf
O nameserver 192.168.1.100 ser utilizado pelo samba, enquanto o 192.168.1.1 o servio de DNS
da rede local, pode ser modificado para outro de sua escolha (ex: 8.8.8.8 - google). Configurar
servio de NTP (atualizao de data/hora):
vim /etc/ntp.conf
server 127.127.1.0
fudge 127.127.1.0 stratum 10
server a.ntp.br iburst prefer
server 0.pool.ntp.org iburst prefer
server 1.pool.ntp.org iburst prefer
driftfile /var/lib/ntp/ntp.drift
logfile /var/log/ntp
ntpsigndsocket /var/lib/samba/ntp_signd/
restrict default kod nomodify notrap nopeer mssntp
restrict 127.0.0.1
restrict a.ntp.br mask 255.255.255.255 nomodify notrap nopeer noquery
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
Para instalar o samba, bastava apenas ter digitado apt-get install samba como mostra no incio. No
entanto, prefer deixar algumas coisas prontas antes de prosseguir-mos.
Nota: O Network Time Protocol (NTP) um protocolo de rede para sincronizao do
relgio entre sistemas e computadores alm de medir a latncia da rede basicamente.
D um reboot no sistema:
reboot
Se tiver conexo, est tudo em ordem. Se no, voc fez algo errado (provavelmente na
configurao do ip no /etc/network/interfaces.) Mas no se preocupe. Se isso acontecer, voc ficar
sabendo atravs deste comando aqui:
tail -n 10000 /var/log/syslog |grep networking
Seja qual for o erro, faz bem investigar o log. S avance se tudo estiver funcionando at aqui.
Nota: Neste caso, poderamos ter usado o cp ao invs do mv para fazer o backup do
smb.conf. No entanto, a inteno remover o smb.conf criado a partir do apt.
Se der tudo certo, aparecero vrias coisas na sada. No entanto, a parte importante a se destacar
esta a baixo por exemplo:
Server Role: active directory domain controller
Hostname: debian
NetBIOS Domain: SEUDOMINIO
DNS Domain: seudominio.com.br
Nota: Criamos uma cpia do krb5.conf na pasta /etc/ porque a pasta padro da
configurao do Kerberos para com o Samba 4.
Inicie o samba
service samba start
# ou
/etc/init.d/samba start
[global]
workgroup = seudominio
realm = seudominio.COM.BR
netbios name = DEBIAN
server role = active directory domain controller
dns forwarder = 192.168.1.1
idmap_ldb:use rfc2307 = yes
# logs
log file = /var/log/samba/log.%m
max log size = 50
[netlogon]
path = /var/lib/samba/sysvol/domarques.com.br/scripts
read only = No
[sysvol]
path = /var/lib/samba/sysvol
read only = No
[home]
path = /var/sambausers/
read only = no
browseable = no
Outra maneira de fazer o mesmo processo, apenas digitando testparm no terminal. Esta uma
ferramenta do samba-tool e serve para fazer anlise da sintaxe do smb.conf. Caso no exista
smb.conf, ele gera um novo e baseando o workgroup nas configuraes existentes do sistema.
Crie o diretrio dos arquivos dos usurios:
mkdir -p /var/sambausers
Teste o Kerberos:
kinit administrator@seudominio.COM.BR
Nota: Voc deve estar se perguntando o que significa este 1777 certo? A permisso
1777, este 1 a frente significa bitstickc. Em termos prticos, quer dizer exatamente isto
no deixe ningum excluir esta pasta ou mudar a permisso.
Por uma questo de convenincia, os clientes do Windows podem consultar o servidor que est
compartilhando uma impressora para um driver de impresso. Para habilitar essa funcionalidade no
Samba, temos de criar uma impressora especial de compartilhamento de arquivos. Vamos ento
criar um diretrio de compartimento de impresso, e arquitetura de sub-diretrios:
mkdir -p /usr/local/samba/var/print/{COLOR,IA64,W32ALPHA,W32MIPS,W32PPC,W32X86,WIN40,x64}
Lixeira do Samba
O Active Directory fornece recursos muito teis para recuperao objetos excludos. Dependendo
de como voc configurou o seu domnio, possvel restaurar um conjunto de atributos e dados com
este recurso habilitado. Sempre que um objeto excludo do Active Directory, ele movido para
um container escondido, chamado Objetos Excludos (CN = Deleted Objects, DC = samdom, DC =
exemplo, DC = com). E estes objetos se mantm neste lugar por um determinado perodo (e
configurvel). Aps esse perodo, os objetos sero definitivamente excludos (mas podem ser
recuperados).
O que NO pode ser recuperado?
Se voc no tiver habilitado este recurso antes e posteriormente optar por habilitar, obviamente
que tudo o que vem antes de ativar o recurso no pode ser recuperado (porque est fora da
poltica do recurso). Ou ainda objetos renomeados tambm no podero ser recuperados.
Adicione estas linhas no /etc/samba/smb.conf
[share]
path = /data/share
vfs objects = recycle
recycle:repository = .recycle
recycle:keeptree = yes
recycle:versions = yes
Isto , qualquer item deletado neste compartilhamento vai para o diretrio .recycle. Podemos
tambm implementar mais recursos para esta tarefa. Por exemplo, experimente adicionar as
seguints linhas em seu [global] no /etc/samba/smb.conf:
vfs objects = recycle
recycle:facility = LOCAL1
recycle:priority = NOTICE
recycle:maxsize = 0
recycle:directory_mode = 0774
recycle:subdir_mode = 0774
recycle:keeptree = true
recycle:touch = true
recycle:versions = true
recycle:repository = /srv/samba/Recycle/
recycle:exclude = *.tmp, *.log, *.obj, ~*.*, *.bak, *.exe, *.bin
recycle:exclude_dir = tmp, temp, cache
create mask = 0774
directory mask = 0774
Auditando acessos
O Samba oferece tambm um recurso de gerao de log. Ele pode ser ativado adicionando as
opes abaixo na seo [global] do smb.conf:
log level = 1
log file = /var/log/samba/log.%m
max log size = 50
Nota: O log file e max log size j estava configurado nos passos a cima em Samba como
um controlador de dominio. Apenas adicionei o log level.
A opo log level indica o nvel das mensagens (de 0 a 10), sendo que o nvel 0 mostra apenas
mensagens crticas, o nvel 1 mostra alguns detalhes sobre os acessos e os demais mostram
diversos nveis de informaes de debug, teis a desenvolvedores. A opo log file indica o
arquivo onde ele ser gerado e a max log size indica o tamanho mximo, em kbytes.
A partir do Samba 3.04 foi includo um mdulo de auditoria, que permite logar os acessos e as
modificaes feitas de uma forma muito mais completa que o log tradicional. Isso feito atravs
do mdulo full_audit, que (do ponto de vista tcnico) funciona de forma similar ao mdulo
recycle usado pela lixeira.
O primeiro passo ativar o mdulo no smb.conf e em [global] como mostra a baixo:
vfs objects = full_audit
O prximo passo definir quais operaes devem ser logadas atravs da opo
full_audit:success, como em:
full_audit:success = open, opendir, write, unlink, rename, mkdir, rmdir, chmod, chown
As opes que inclu no exemplo so open (ler um arquivo), opendir (ver os arquivos dentro de uma
pasta), write (alterar um arquivo), unlink (deletar um arquivo), rename (renomear um arquivo),
mkdir (criar um diretrio), rmdir (remover um diretrio), chmod (alterar as permisses de acesso de
um arquivo) e chown (mudar o dono de um arquivo). Continuando a configurao, especificamos as
informaes que desejamos que sejam includas no log, usando a opo full_audit:prefix:
full_audit:prefix = %u|%I|%S
Por padro, o mdulo loga no apenas os acessos e modificaes, mas tambm um grande volume
de mensagens de alerta e erros gerados durante a operao. A opo full_audit:failure = none
evita que estas mensagens sejam logadas, fazendo com que o log fique muito mais limpo e seja
mais fcil encontrar as opes que realmente interessam:
full_audit:failure = none
Concluindo, especificamos o nvel dos alertas, entre os suportados pelo syslog, como em
full_audit:facility = local1, e full_audit:priority = notice. Juntando tudo, temos:
vfs objects = full_audit
full_audit:success = open, opendir, write, unlink, rename, mkdir, rmdir, chmod, chown
full_audit:prefix = %u|%I|%S
full_audit:failure = none
full_audit:facility = LOCAL1
full_audit:priority = notice
Em full_audit:prefix, adicionei %u, %I e %S que indicam o usurio (%u) que realizou a operao,
o endereo IP (%I) do usurio e o compartilhamento acesso (%S). Na diretiva full_audit:failure:
none estamos indicando que no ser registrada nenhuma operao (none) que tenha obtido como
status de execuo alguma falha.
A penltima linha full_audit:facility = LOCAL1 indica que iremos rotular as mensagens de log do
Samba (especificamente do mdulo VFS full_audit) para que sejam consideradas mensagens que
so originadas do recurso de sistema chamado local1.
Esta configurao pode ser tanto includa dentro da seo [global] (de forma que o log inclua os
acessos e as alteraes feitas em todos os compartilhamentos) quanto ser includa apenas na
configurao de um compartilhamento especfico. Com isso, o Samba vai passar a gerar os eventos
referentes aos acessos. Falta agora configurar o sysklogd (o servio responsvel pela gerao dos
logs do sistema), para logar os eventos, gerando o arquivo de log que poder ser consultado. Para
isso, abra o arquivo /etc/syslog.conf e adicione a linha abaixo:
local1.notice /var/log/samba-full_audit.log
Dentro do arquivo, voc ver entradas contendo a data e hora, o nome da mquina, o usurio, o IP
da mquina, o nome do compartilhamento, a operao realizada e o nome do arquivo ou pasta
onde ela foi realizada, como em:
Dec 23 15:21:15 m1 smbd_audit: lobo|192.168.1.100|arquivos|opendir|ok|.
Dec 23 15:21:29 m1 smbd_audit: lobo|192.168.1.100|arquivos|open|ok|r|addr.txt
Dec 23 15:21:34 m1 smbd_audit: lobo|192.168.1.100|arquivos|mkdir|ok|trabalho
Dec 23 15:21:36 m1 smbd_audit: lobo|192.168.1.100|arquivos|opendir|ok|trabalho
Dec 23 15:21:43 m1 smbd_audit: lobo|192.168.1.100|arquivos|open|ok|w|trabalho/Samba.sxw
Dec 23 15:21:44 m1 smbd_audit: lobo|192.168.1.100|arquivos|open|ok|w|trabalho/foto.jpg
O log conter entradas referentes a todos os usurios e mquinas, mas fcil ver apenas as
entradas referentes a um determinado usurio, compartilhamento, endereo IP ou outro
parmetro qualquer ao listar o arquivo pelo terminal usando o grep, que permite mostrar apenas
as linhas contendo determinados trechos. Mais opes e parmetros usados para verificao de
logs atravs do vfs full audit voc poder conferir na manpage do vfs_full_audit.
Rotacionamento de logs
Para completar a configurao iremos implementar a poltica de rotacionamento de logs.
Rotacionamento de logs uma tarefa que realizada pela ferramenta logrotate, e possui grande
importncia em servidores. A maioria dos arquivos de log em sistema Unix utilizam formato plain
text e dependendo da demanda de usurios e recursos (arquivos/diretrios) acessados, bem como
o perodo em que isto est ocorrendo, estes arquivos de texto iro crescer ao ponto de ocupar
centenas a milhares de Megabytes, ao ponto de utilizar todo os espao disponvel para esta
finalidade.
O rotacionamento de logs permite que, de acordo com a poltica empregada, um arquivo possa ser
segmentado, bem como seus segmentos mais antigos serem compactados (de modo a reduzir o
espao utilizado). Dentro de uma poltica de log, alm de considerar o espao em disco disponvel,
deve-se observar o perodo em que deseja-se armazenar estes arquivos. No caso do arquivo
audit.log que estamos definindo como ponto para registrar as aes realizadas em cada
arquivo/diretrio, precisamos definir quantos dias, meses ou anos estes registros estaro
disponveis ou quantos segmentos iro existir do arquivo e que perodo (diariamente,
semanalmente, etc) estes segmentos sero criados.
No caso vamos criar um arquivo de parmetros que ir criar at 32 segmentos, e parte destes
segmentos sero compactados. J em relao ao perodo de criao destes segmentos ele ser
dirio, bem como estes arquivos sero segmentos considerando que o segmento mais recente
tenha atingido pelo menos 2 Megabytes, para que as entradas mais antigas destes arquivo sejam
movidas para outro arquivo de segmento.
Crie um arquivo audit_samba.conf em /etc/logrotate.d com o seguinte contedo:
/var/log/samba/audit.log {
dayly
rotate 32
minsize 2M
notifempty
missingok
sharedscripts
copytruncate
compress
delaycompress
postrotate
/bin/kill -HUP `cat /var/run/smbd.pid /var/run/nmbd.pid 2> /dev/null` 2> /dev/null || true
endscript
}
Este arquivo contm uma poltica de rotacionamento que ser aplicada a todos os arquivos com
extenso log existentes em /var/log/samba, entretanto, como temos um arquivo de poltica j
especifico para o arquivo audit_samba.log (que ir expandir muito mais rapidamente que qualquer
outro arquivo de logs do samba), vamos adaptar o arquivo de polticas de rotacionamento padro
para no aplicar estas polticas no arquivo audit_samba.log.
Alterar o arquivo /etc/logrotate.d/samba, onde existe:
/var/log/samba/*.log
Altere para
/var/log/samba/[b-z]*.log
Como podemos ver, o dono do arquivo o super usurio (root) e o usurio lobo recebeu
permisses de leitura, escrita e execuo neste arquivo (user:lobo:rwx). Para saber se um arquivo
ou diretrio possui uma lista de acesso, digite:
ls -l testes
Observe o sinal de + em -rw-rwxr+. Este sinal indica que o arquivo possui uma lista de acesso
(acl) definida. Se emitirmos o mesmo comando para um diretrio teremos um resultado diferente.
Para explorar mais das acls, sugiro que dem uma lida neste artigo escrito por Luis Felipe Silveira.
Para que o samba consiga interpretar corretamente as ACLs, adicione o parmetro map acl inherit
= Yes no compartilhamento no qual voc deseja ativar ACL (ou na pasta compartilhada que voc
alterou permisses e deseja efetivar as ACL) no smb.conf:
[compartilhado]
comment = compartilhado
path = /compartilhado
read only = No
create mask = 0777
force create mode = 0777
directory mask = 0777
force directory mode = 0777
map acl inherit = Yes
No esquea depois de alterar as ACL de reiniciar o samba para que ele aplique as configuraes
corretas:
/etc/init.d/samba restart
Migrando um samba3 PDC para Samba 4 AD
Recomendo fazer exaustivos teste em um ambiente virtual antes de fazer a migrao no ambiente
de produo. Para ter um ambiente de teste confivel apos criar as mquinas Virtuais ingressei as
duas no meu domnio antigo em produo (Samba3+ldap) e me loguei em cada uma delas com pelo
menos 4 usurios do domnio, diferente em cada maquina Totalizando 7 ( Um usurio em comum
nas duas maquina para teste ). Voc poder criar uma situao similar para testes tambm.
Acesse seu servidor samba3 e nele vamos fazer Backup de algumas pastas e arquivos de
configuraes que sero necessrios para a migrao:
mkdir -p /root/backup/var/lib/
mkdir -p /root/backup/etc/
Iniciando o servidor Ldap (Para que seus usurios possam voltar a logar):
/etc/init.d/ldap stop
/etc/init.d/ldap start
No meu caso o ldap usa conexo segura TLS por isso precisei dos certificados tambm. Para
facilitar copiei toda as pasta /etc/ssl:
cp -r /etc/ssl /root/backup/etc/
Nota: Voc poder usar o filezila em ambiente grfico se um dos servidores tiver o
servidor X, ou qualquer outro recurso de ftp caso no saiba usar o scp.
Ligue as duas maquinas em rede (Samba3 e Samba4) recomendo que o teste de migrao sejam
feito numa rede separada simulando um cenrio real (onde o samba4 tem o mesmo ip do antigo
samba3). A instalao do Servidor openldap ser apenas para a migrao visto que j existe um
servidor openldap embutido no samab4. Portanto, ps migrao iremos remove-lo.
Antes de Instalar o ldap e fazer o dump dos usurios, verifique se existem usurios com sid
duplicado e se existem grupos que tenha o mesmo nome que o de usurios.
Instalar servidor ldap:
apt-get install libldap-2.4-2 slapd ldap-utils
Fazer copia da pasta padro do servidor ldap (criada na instalao do servidor ldap):
mv /etc/ldap /etc/ldap.padrao
Copiar a pasta do servidor ldap antigo ( Samba3 ) da qual fora feito o backup temporrio:
cp -r /root/backup/etc/ldap /etc/ldap
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/yast.schema
include /etc/ldap/schema/samba.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
modulepath /usr/lib/ldap/modules
access to attrs=SambaLMPassword,SambaNTPassword
by dn="cn=Administrator,dc=empresa,dc=casa" write
by * none
access to dn.base=""
by * read
access to dn.base="cn=Subschema"
by * read
access to attrs=userPassword,userPKCS12
by self write
by * auth
access to attrs=shadowLastChange
by self write
by * read
access to *
by * read
allow bind_v2
loglevel 1024
TLSCertificateFile /etc/ssl/servercerts/servercert.pem
TLSCACertificatePath /etc/ssl/certs/
TLSCertificateKeyFile /etc/ssl/servercerts/serverkey.pem
database bdb
suffix "dc=empresa,dc=casa,"
rootdn "cn=Administrator,dc=empresa,dc=casa"
directory /var/lib/ldap
checkpoint 1024 5
cachesize 10000
index objectClass,uidNumber,gidNumber eq
index member,mail eq,pres
index cn,displayname,uid,sn,givenname sub,eq,pres
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
moduleload back_bdb.la
O meu servidor ldap usa conexo segura TLS com isso temos que copiar os certificados:
cp -r /root/backup/etc/ssl /etc/
Pronto j temos um servidor ldap com nossa base de usurios. Lembre-se que o samba4 j tem um
servidor ldap interno s estamos usando esse servidor ldap temporariamente para que possamos
migrar as contas de usurios do samba3 (que usava ldap) para o samba4.
Fazendo a Migrao:
samba-tool domain classicupgrade --dbdir=root/backup/var/lib/samba/ --use-xattrs=yes
--dns-backend=SAMBA_INTERNAL --realm=empresa /root/backup/etc/samba/smb.conf
Apos migrar o domnio tive um problema na senha do meu usurio administrator com isso tive que
setar a senha do mesmo novamente:
samba-tool user setpassword Administrator
Por fim, no samba4 faa alguns testes do kerberos e do prprio samba4 que j foram descritos os
passos no captulo 4 em Samba como um controlador de dominio, a partir de Teste o Kerberos.
Nota: Caso voc tenha problemas com SID duplicados, por favor acessar a documentao
do Samba em Prevent failure due to duplicate SIDs. Isto , l contm um script em
python que ajuda a resolver este problema.
Caso o script da documentao no funcione, voc poder verificar os SID duplicados antes de
fazer o dump de usurios com o seguinte comando:
cat /root/backup/backup.ldif | grep sambaSID | sort | uniq -d
Com isso, saber quais os SID duplicados e poder remover a todos manualmente em
/etc/backup/backup.ldif tranquilamente. Caso voc j tenha feito o dump de usurios, poder usar
o seguinte comando:
slapcat | grep sambaSID | sort | uniq -d
Voc poder usar um interface grfica para remover usurios do ldap como por exemplo, o ldap-
acount-manager LAM ou phpldapadmin.
Samba-Tool
Samba-tool a principal ferramenta de administrao de usurios e contas do samba server. Com
ela, poderemos adicionar, remover, editar, gerar parmetros de expirao de senha, limitar usurio
a uma determinada tarefa, criar grupos, lidar com grupos, criar um shellscript facilitador, usar por
meio de um ambiente grfico facilitador e muito mais. Como por exemplo:
Trocar senha do usurio:
samba-tool user setpassword lobo newpassword=1234.Mudar.Senha
Deletar Usurio:
samba-tool user delete lobo
A expirao de senha para todos os usurios do domnio e feita com outro comando essa altera
somente do usurio especificado (bom para ser usado em certas excees como por exemplo
aquele diretor que insiste em ser uma exceo a regra) 10 e o numero de dias em que a senha ira
expirar:
samba-tool user setexpiry lobo days=10
Criar um grupo:
samba-tool group add diretoria
Remover um grupo:
samba-tool group delete diretoria
Nota: Caso no aparea Fazer logon em: DOMNIO, informe o login como:
DOMNIO\administrator.
Segurana:
PROPRIETRIO CRIADOR Controle Total
Usurios autenticados Ler & executar, Listar contedo da pasta e Leitura
SISTEMA Controle Total
Administrator Controle Total
Domain Admins Controle Total
Teste o kerberos:
kinit administrator@seudominio.com.br
Agora v para o computador com Windows onde voc instalou a ferramenta de administrao
remota (AD) para o seu servidor de domnio e defina os usurios a quem voc deseja definir como
perfil nomade. Abra o cmd e digite dsa.msc, ou run e digite dsa.msc para abrir console do Active
Directory e em seguida defina o caminho do usurio:
V para o usurio para o qual voc deseja implementar perfil nomade e adicione o caminho seguido
pelo nome do usurio do diretrio do perfil no profile path da seo de propriedades como mostra
abaixo:
Daqui em diante voc apenas acompanha se o perfil nomade est funcionando ou no. Uma forma
de fazer isto, acessando o usurio no Windows, fazer modificaes de arquivos e pastas e
acompanhar modificaes na pasta /userprofiles no samba.
Nota: Certifique-se de que o usurio estar logando em mquinas onde o Sistema
Operacional se mantm o mesmo. Isto , que ele esteja logando em mquinas do
Windows 7 ao invs de outras verses. Pois, pode ser que no funcione caso o usurio
fique transitando entre uma verso e outra do mesmo sistema. Caso ainda tenha
dificuldades em operar com perfil nomade no windows7, d uma olhada neste vdeo.
Recomendo que tenha o VLC player instalado na mquina.
A partir de agora, voc poder mudar o lugar onde criou a unidade organizacional ou simplesmente
criar sub unidades organizacionais.
Nota: Normalmente ns criamos UO baseado na configurao dodepartamento de sua
organizao. Tenha cuidado para no confundir grupos e unidades organizacionais,
grupos so usados para controlar permisses, OU so utilizados para as configuraes
de implantao para todos os usurios/computadores dentro da UO.
Para bloquear o acesso ao Painel de Controle vai em, Configuraes do Usurio, Diretivas, Modelos
Administrativos, Painel de Controle e Proibir acesso ao Painel de Controle:
Duplo clique sobre a diretiva e marque a opo Habilitado de OK. Pronto, GPO criada com
sucesso. Caso ainda existam dvidas a respeito da criao de GPOs, d uma olhada neste video da
documentao oficial.
o Configure a pasta destino para onde ser realizado o backup dentro da varivel WHERE=:
mkdir /usr/local/backups
chmod 750 /usr/local/backups
Nota: Se ocorrer algum erro, verifique se na pasta destino se encontra trs arquivos. So
eles: etc.{Timestamp}.tar.bz2, samba4_private.{Timestamp}.tar.bz2 e sysvol.
{Timestamp}.tar.bz2. Em caso de no haver, busque pelos trs no source code e coloque-
os l.
E em caso de sucesso, agora s nos falta adicionar o script ao crontab:
crontan -e
Para restaurar o backup, ou melhor, fazer o recovery, to simples quanto os passos a cima.
Primeiro vamos remover algumas pastas do samba:
rm -rf /usr/local/samba/etc
rm -rf /usr/local/samba/private
rm -rf /usr/local/samba/var/locks/sysvol
Lembra dos trs arquivos citados na nota a cima? Vamos us-los agora:
cd /usr/local/backups
tar -jxf etc.{Timestamp}.tar.bz2 -C /usr/local/samba/
tar -jxf samba4_private.{Timestamp}.tar.bz2 -C /usr/local/samba/
tar -jxf sysvol.{Timestamp}.tar.bz2 -C /usr/local/samba/
Renomeie os arquivos .ldb.bak gerados para .ldb .Para tal, usaremos o find:
find /usr/local/samba/private/ -type f -name '.ldb.bak' -print0 | while read -d $'\0' f ;
do mv "$f" "${f%.bak}" ; done
Para preparar seu servidor de domnio secundrio, voc ter que configurar o Samba 4 em seu
servidor atual tambm. Para tal, basta seguir normalmente a instalao j abordada nesta
documentao quanto ao Samba 4. No entanto, voc ir mudar somente o modo com que promove
o samba:
samba-tool domain join dominio.com DC -Uadministrator --realm=dominio.com use-ntvfs
Assim, conseguiremos unir o servidor primrio com o secundrio. Agora, o prximo passo consiste
em certificar que seu hostname do domnio secundrio resolvel:
nslookup test1.dominio.com
Nota: Neste caso, depende muito do servidor DNS que voc est adontando. Isto , o
BIND9 ou o Samba_internal.
Caso o seu DNS no esteja resolvel, ento vamos fazer a entrada para o mesmo no servidor DNS
do samba:
vim /usr/local/samba/private/dns/dominio.com
# E adicione a seguinte linha:
test1 IN A 192.168.1.5
# record 2
dn: CN=NTDS Settings,CN=TEST1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,
DC=dominio,DC=com
objectGUID: 607bc2dc-0754-49e3-aa37-9be403d0cc33
Nota: No copie e cole estes comandos visto que cada objectGUID se difere de mquina
para mquina. Observe o seu e use o exemplo a cima apenas como base.
Reinicie o named:
/etc/init.d/named restart
Nota: Novamente, se estiver usando o Samba_Internal, estes passos para com o teste do
DNS so descartveis e provavelmente ocorra tudo na mais perfeita ordem.
search dominio.com
nameserver 192.168.1.6
nameserver 192.168.1.5
Na mquina com Windows Server, caso voc deseje gerenciar o servidor secundrio a partir do
snap-in do AD do Windows, abra o Console de gerenciamento do Active Directory, v em Ao e
selecione Alterar controlador de domnio como mostra a baixo:
Aqui voc deve ser capaz de ver os seus controladores de domnio disponveis e seus status como
mostrado abaixo:
Agora teste criar um usurio no servidor secundrio e acompanhar no primrio como j mostrei no
captulo 6 em Samba tool. Se o usurio criado no servidor secundrio aparecer no primrio, a nossa
replicao est funcionando bem. O mesmo a partir de qualquer controlador de domnio.