1. Implementando um Controlador de Domínio
com FreeBSD e Samba 4
Um AD totalmente funcional com base no Unix FreeBSD 11
usando Samba 4
Por Eduardo Charquero 3 ago, 2017
O SAMBA, na versão 4, implementa um serviço de diretórios LDAP, com autenticação Kerberos,
oferece suporte a DNS dinâmico e atende muitos serviços para os quais, antes, só se pensava no
Active Directory.
Hoje ele fornece tudo que é necessário para trabalhar como um Active Directory Domain Controler,
tendo compatibilidade total com o Sistema Operacional Microsoft Windows atual. Sendo que
podemos implementá-lo em ambientes de produção como Controlador de Domínio primário ou
secundário, em nível funcional de floresta compatível com Windows Server 2008 R2.
Neste tutorial utilizaremos o FreeBSD, um Sistema Operacional extremamente robusto e estável,
sendo uma das mais populares versões de Unix, largamente usado no meio corporativo. Difere do
2. Linux mais em questões de Licenças do que em qualquer outro aspecto. O FreeBSD possui uma
licença mais maleável do que a GNU General Public License ou a Copyright proprietária,
estando mais perto da ideia de ‘domínio público’. Com a licença Berkeley Software Distribution é
possível desenvolver códigos e doar o projeto ou fechar e vender o código, de acordo com o
objetivo do desenvolvedor. Leia mais sobre ele clicando aqui.
O FreeBSD tem arquivos de configuração simplificados e práticos, porém poderosos, de onde o
Slackware Linux apoiou sua filosofia “Keep it simple stupid”.
Um dos principais arquivos de configuração do Sistema Operacional, é o rc.conf, servindo para
diversas configurações importantes, como por exemplo, setar o hostname, adicionar serviços para
subir no boot do sistema, editar ip fixo, entre outras possibilidades. Ele se encontra dentro do
diretório /etc/.
Neste tutorial, usei o rc.conf justamente para chamar o SAMBA, habilitar o serviço de ssh, setar o
layout de teclado, setar ip da placa de rede, entre outras funcionalidades, como você pode ver no
exemplo usado pela eShark Tecnologia, note que o editor padrão do FreeBSD é o ‘ee’, você poderá
pesquisar mais sobre o modo de operação dele na internet,é simples como o nano.
MÃO NA MASSA
CONFIGURANDO O RC.CONF:
ee /etc/rc.conf
hostname="ADFBSD"
keymap="br275.iso.kbd"
ifconfig_em0="inet 192.168.0.250 netmask 255.255.255.0"
defaultrouter="192.168.0.254"
sshd_enable="YES"
ntpd_enable="YES"
powerd_enable="YES"
samba_server_enable="YES"
cupsd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
EDITANDO O HOSTS:
ee /etc/hosts
192.168.0.250 ADFBSD ADFBSD.eshark.net
EDITANDO O RESOLV.CONF:
ee /etc/resolv.conf
nameserver 192.168.0.250
nameserver 192.168.0.254
search eshark.net
HABILITANDO COMPATIBILIDADE DE PERMISSÕES DO WINDOWS:
ee /etc/fstab
3. /dev/da0s1a / ufs rw,acls 1 1
mount -o acls /
INSTALANDO O SAMBA4:
pkg install samba42
pkg install samba-nsupdate
pkg install cups
PROVISIONANDO:
cp /usr/local/etc/samba/smb4.conf /usr/local/etc/samba/smb4.conf.old
samba-tool domain provision --use-rfc2307 --interactive
EDITANDO OS COMPARTILHAMENTOS:
ee /usr/local/etc/samba/smb4.conf
# Global parameters
[global]
workgroup = ESHARK
realm = ESHARK.NET
netbios name = ADFBSD
server role = active directory domain controller
dns forwarder = 192.168.0.254
idmap_ldb:use rfc2307 = yes
[netlogon]
path = /var/db/samba4/sysvol/eshark.net/scripts
read only = No
browseable = no
[sysvol]
path = /var/db/samba4/sysvol
read only = No
browseable = no
[profiles]
path = /var/db/samba4/profiles
read only = no
browseable = no
# LIXEIRA
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 = /root/LIXEIRA
recycle:exclude = *.tmp, *.log, *.obj, ~*.*, *.bak, *.exe, *.bin
4. [DADOS]
path = /root/DADOS
comment = Compartilhamentos da Rede
read only = No
[DIRETORIA]
path = /root/DADOS/DIRETORIA
comment = Pasta Diretoria
read only = No
[RH]
path = /root/DADOS/RH
comment = Pasta RH
read only = No
[FINANCEIRO]
path = /root/DADOS/FINANCEIRO
comment = Pasta Financeiro
read only = No
[TECNICO]
path = /root/DADOS/TECNICO
comment = Pasta Tecnico
read only = No
[COMERCIAL]
path = /root/DADOS/COMERCIAL
comment = Pasta Comercial
read only = No
[PUBLICA]
path = /root/DADOS/PUBLICA
comment = Pasta Publica
read only = no
RELENDO AS CONFIGURAÇÕES:
smbcontrol all reload-config
CRIANDO LINK PARA KRB5.CONF /etc/krb5.conf:
ln -s /var/db/samba4/private/krb5.conf /etc/krb5.conf
EDITANDO /etc/rc.conf:
vim /etc/rc.conf
samba_server_enable="YES"
cupsd_enable="YES"
“STARTANDO” OS SERVIÇOS:
/usr/local/etc/rc.d/cupsd start
/usr/local/etc/rc.d/samba_server start
ou use uma opção mais linux-like:
sysrc samba_server_enable=YES
service samba_server start
REMOVENDO A COMPLEXIDADE DE SENHAS (OPCIONAL):
5. samba-tool domain passwordsettings show
samba-tool user setexpiry Administrator –noexpiry
samba-tool user setexpiry --days=20 Administrator
samba-tool domain passwordsettings set --complexity=off
samba-tool domain passwordsettings set --history-length=0
samba-tool domain passwordsettings set --min-pwd-age=0
O restante das configurações poderão ser feitas agora no AD, através das Ferramentas de
administração do Windows Server 2008 R2 (RSAT), instaladas em uma versão de Windows 7, 8 ou
10.
Você também pode construir um Controlador de Domínios usando outras plataformas *NIX, como
Debian, seguindo o tutorial, clicando no botão abaixo:
Este é o meu modo de fazer a coisa neste momento, continuo estudando e aberto!
That’s all folks!
EDUARDO CHARQUERO
contato@eshrktecnologia.com.br
(41) 98806-5277