Samba 4 AD: Como Configurar E Gerenciar o Active Directory No Linux

Este artigo é uma continuação do texto que publiquei recentemente sobre servidor de arquivos no Linux — recomendo que o leia para ficar a par do assunto. Aqui, abordo estritamente o processo de configuração e gerenciamento do Samba 4 utilizado como file server.

Reiterando a questão do uso do Samba 4 para tal finalidade, a ferramenta é a única desenvolvida em cooperação com a Microsoft. Isso significa que uma máquina rodando o Windows 10, por exemplo, poderá abrir e enviar arquivos diversos ao servidor sem problemas de compatibilidade.

Por que esse detalhe é tão importante se o foco é o Linux? Porque a ideia de construir um servidor de arquivos é estabelecer uma central de compartilhamento de informações acessível a múltiplos computadores ligados à rede, independentemente do sistema operacional instalado.

Agora que estamos esclarecidos quanto ao objetivo deste conteúdo, vejamos em detalhes, abaixo, os procedimentos necessários para implementar o Samba 4 como servidor de arquivos. Pronto para começar?

APRENDA A DOMINAR O LINUX

Aprenda a dominar o LINUX de uma vez por todos, pegue sua cópia

  • Ferramentas para instalar softwares adicionais
  • Shell do LINUX passo a passo, e muito mais...

Como fazer a preparação para tirar o máximo proveito deste tutorial sobre Samba 4 AD.

É interesse que você tenha um conhecimento prévio de alguns assuntos, como por exemplo:

O que é um servidor de arquivos?

Para isso, veja o artigo abaixo:

Você deve saber como gerenciar pacotes na sua distribuição Linux.

Para isso, irei deixar abaixo dois conteúdos:

Caso você ainda precisa entender os reais motivos de se utilizar o samba 4 como servidores de arquivos, eu sugiro também verificar o conteúdo abaixo:

E por ultimo saber também, como instalar o servidor de arquivos samba, que iremos configurar hoje.

Você pode seguir um dos dois conteúdos baixo:

Este:

Leia também ...   Distribuição Linux com Suporte Corporativo, será que vale a pena?

Caso você esteja utilizando Debian ou Ubuntu como distribuição Linux do seu servidor.

Se você estiver utilizando o CentOS ou Redhat em seu servidor Linux, veja também o artigo abaixo:

samba 4 ad no linux

Gerenciando o Samba 4 por meio do terminal

Com o Samba 4 devidamente instalado em sua máquina, abra o terminal do Linux para que utilizemos o comando samba-tool. Mas o que é isso? Nada mais que um excelente utilitário para administrar o Active Directory Domain Controller do Samba (Samba AD DC).

Presumindo que você esteja mais ansioso do que apressado para mexer no servidor, recomendo-lhe consultar os subcomandos antes de prosseguir. Se possível, pesquise no Google sobre o que envolve cada item da lista que aparece ao digitarmos, como root, o comando samba-tool -h.

Dando início ao gerenciamento, que tal criarmos um usuário com permissão para acessar o Active Directory? Abaixo, um exemplo de como seria gerar uma credencial destinada a algum colaborador da empresa.

# samba-tool user add rebeca

Logicamente, o usuário em questão pode ser adicionado com mais algumas informações. Exemplo:

# samba-tool user add [email protected] --given-name=Rebeca --surname=Aguilar [email protected] –login-shell=/bin/bash

Habilitando, desabilitando e removendo usuários

Supondo que a sua primeira missão ao entrar na empresa é atualizar a lista de usuários habilitados a acessar o Active Directory. Tudo o que você tem em mãos é uma relação de funcionários desligados ou remanejados para outros departamentos. Primeiramente, digite samba-tool user list para consultar os usuários existentes.

Mas o que fazer se o tal zacarias_rh acabou de retornar à empresa e não se lembra da senha de acesso ao servidor de arquivos? Simplesmente, você digitaria:

# samba-tool user setpassword zacarias.rh

Criando grupos de usuários no Samba 4 AD DC

Da mesma maneira que o profissional está sujeito a gerenciar um ambiente preexistente, ele pode ficar encarregado de criar um ambiente do zero. Nesse caso, antes de começar a adicionar pessoas, é importante planejar os grupos aos quais elas pertencerão. Para criar ou deletar um grupo, anote os comandos:

# samba-tool group add -h

# samba-tool group add Contabilidade

ou

# samba-tool group delete Contabilidade

Criado o grupo “Contabilidade”, a próxima etapa consiste em criar usuários (no caso a equipe de contadores) a serem vinculados diretamente ao grupo. Vamos a mais um exemplo:

# samba-tool group addmembers Contabilidade rogerio_freitas patricia_rocha aline_bergamo enzo_sakamoto

Errou algum registro ou precisa tirar alguém do grupo? Digite:

# samba-tool group remove members Contabilidade andreia_rizzo

Para conferir a lista de grupos existentes na rede, bem como a relação de usuários correspondentes a cada um deles, digite um dos comandos:

# samba-tool group list

# samba-tool group listmembers "Contabilidade"

Modificando requisitos de senhas

Um recurso muito interessante do Samba 4 é o gerenciamento de senhas. Por meio de poucos comandos podemos verificar os critérios vigentes para cadastro de senha e, claro, fazer as alterações de acordo com as políticas e requisitos de segurança. Para consultar, digite: samba-tool domain passwordsettings show.

Leia também ...   Carreira de Administrador De Sistemas LINUX - Os TOP 4 Motivos Que Você Precisa Considerar Antes de Investir Seu Tempo e Dinheiro Nessa Área

Note que há diversas opções configuradas, tais como: tamanho mínimo e máximo de senha, modo senha complexa (password complexity), limite de idade da senha em dias etc. A modificação da política é feita da seguinte maneira:

# samba-tool domain passwordsettings set --min-pwd-length=6

O comando acima aplica a regra que obriga os usuários a criarem senhas compostas por pelo menos seis caracteres. Se quiser saber o que mais pode ser alerado, digite: samba-tool domain passwordsettings -h.

Configurando a autenticação do usuário no Samba 4

Agora que os grupos e usuários foram plenamente registrados, significa que o servidor de arquivos está pronto para receber acessos? Bom, estamos quase lá! Acontece que os usuários recém-criados não conseguem fazer o login fora do ambiente do Samba AD DC.

Sendo assim, precisamos configurar o Samba 4 de modo que as conexões sejam aceitas. Como fazer isso? Basta adicionar algumas linhas no arquivo smb.conf usando um editor de texto.

Abaixo, o comando para abertura do arquivo e as linhas que devem estar presentes nele:

$ sudo vim /etc/samba/smb.conf

winbind enum users = yes

winbind enum groups = yes

Certificando-se de que não há nada de errado com o smb.conf, use o comando testparm:

$ testparm

$ sudo systemctl restart samba-ad-dc.service

O que resta para finalizarmos essa etapa? A princípio, atualizar o Linux-PAM (Pluggable Authentication Modules) e, com isso, habilitar os perfis de usuários.

$ sudo pam-auth-update # use a tecla [espaço] para habilitar os perfis e [Tab] para mover as opções

Terminamos? Ainda não! Existe um arquivo de configuraçao chamado /etc/nsswitch.conf e, também, outro documento chamado /etc/pam.d/common-password, os quais devem ser modificados, respectivamente. A começar pelo nsswitch.conf, abra-o com o editor de texto:

$ sudo vi /etc/nsswitch.conf

Com o arquivo aberto, acrescente ao final das linhas passwd e group a palavra winbind, como o exemplo.

passwd: compat winbind

group: compat winbind

Da mesma maneira, edite o arquivo /etc/pam.d/common-password, localize a linha abaixo e retire a declaração destacada em negrito:

password [success=1 default=ignore] pam_winbind.so use_authtok try_first_pass sha512

Em tese, essa configuração é suficiente para o propósito da nossa instalação.

Leia também ...   30 ferramentas para hackers que podem ser usadas no Kali Linux (PARTE 2)

Fazendo o login no Linux com credenciais do Active Directory

Vamos testar a autenticação do usuário AD no Linux? Comecemos pelo uso do comando su – seguido do nome de usuário. Exemplo:

# su - nome_do_usuário

Se o procedimento deu certo, você recebeu uma notificação de que um diretório foi criado e tudo mais. Opcionalmente, você pode usar o comando id para obter informações extras, ou digitar exit.

Ao experimentar a navegação com o usuário, perceba que os privilégios são muito restritos — por padrão, eles não são superusuários. Entretanto, nada impede que tal privilégio seja concedido. Digite:

# usermod -aG sudo 'DOMÍNIO\domínio_usuário'

Faça um teste com algum comando sudo e confirme se a ação surtiu efeito. No mais, se todos os usuários do domínio precisam ter privilégios root, use o comando:

%DOMÍNIO\nome_do_domínio\ group ALL=(ALL:ALL) ALL

Como vimos ao longo deste breve tutorial, o Samba 4 tem uma sintaxe simples e fácil de aprender. Mesmo assim, os seus recursos e funcionalidades são vastos, o que faz dele uma ferramenta avançada. Resumindo: o Samba é uma solução robusta e acessível.

Quanto a você, acredita estar preparado para aprofundar-se nos estudos sobre Linux? Confira este conteúdo da página Profissionais Linux e veja como proceder com sua formação.

Sobre pedrodelfino

Trabalha a mais de 14 anos com administração de sistemas LINUX, dedicado em ensinar novos profissionais a atuar com servidores. Saiba mais aqui. "Caso queira participar de uma aula online comigo utilize o formulário Acima"

Você Precisa  { DOMINAR } O Sistema LINUX?