Início Samba 4 autenticando em Active Directory – Modo Easy
André Stato 19 de setembro de 2017 Comente! Samba, Servidores
Veremos neste Post como integrar na plataforma Centos 7 o samba 4 para que faça todas as autenticações através de um Active Directory, este podendo ser Windows ou Linux. Ou seja, iremos compartilhar pasta no nosso samba, mas que vai autenticar de fato é o AD.
Com isso podemos compartilhar pastas e arquivos baseado em uma só autenticação. Poderíamos também integrar a um proxy Squid por exemplo usando NTLM.
São vários passos para que consigamos integrar, mas neste post irei usar uma ferramenta que ajuda em muito essa integração que é autoconfig-gtk em modo gráfico, mas poderia ser autoconfig-tui no modo texto.
Através desse uso, ficará muito fácil fazer a integração do Samba com Active Directory, seja ele Windows ou Linux.
A primeira coisa a ser feita são as configurações iniciais.
As configurações iniciais consiste em desabilitar o selinux, firewall, configuração do hostname, ip, DNS para então irmos para instalação de pacotes.
Para desabilitar o selinux, edite o arquivo /etc/selinux/config, e altera a linha para ficar igual a abaixo:
Quanto ao firewall, que na realidade é o firewalld, podemos tanto parar e desabilitar, como criar regras para permitir o samba. Neste Post mostrarei como desabilitar. Apenas com os dois comandos abaixo, o firewall será parado e desabilitado.
Vamos agoar as configurações, para configurar o hostname execute o comando abaixo, de forma que no meu caso o nome será server o nome do servidor.
E por fim devemos então configurar o IP, usarei 192.168.1.100/24, onde o gateway é o 192.168.1.1 e o DNS é o nosso Active Directory com endereço IP 192.168.1.150. Caso esteja utilizando Network Manager, utilize a interface gráfica, caso contrario edite o arquivo /etc/sysconfig/network-scripts/ifcfg-xxx, onde xxx é o nome da interface que no meu caso é ens33. Desta forma o arquivo de configuração seria ifcfg-ens33, com a seguinte configuração:
DNS1=192.168.1.150
Reinicie o serviço de rede e pronto, está etapa já está finalizada.
Vamos iniciar com a instalação do pacote ntpudate, que será usado para atualização de horário, que é muito importante para o Active Directory, um atrasa de 5 minutos já o suficiente para não conseguirmos conversar com o Domain Controler. Usarei como nosso dominio dominiolinux.net, e o servidor será o win.dominiolinux.net, que já deve ter o nome resolvido, já que usamos o DNS apontando para o próprio
ntpdate -ud win.dominiolinux.net
Agora vamos instalar os pacotes do samba, nele teremos o próprio samba, samba-winbind e samba cliente entre outros.
yum install samba samba-winbind samba-client samba-winbind-clients
Agora iremos instalar a ferramentas que iremos usar, com ela ingressaremos nosso Servidor Samba no Domínio, e ainda teremos todas configurações samba e winbind prontas autenticando em nosso Ad.
Agora já temos todos os pacotes instalados e iremos para configuração.
Integração Samba e AD
É esse o momento que iremos ingressar no domínio e faremos nossas configurações. É importante lembrar que a ferramente authconfig-gtk é utilizada na interface gráfica, caso esteja no modo texto poderá usar authconfig-tui, instalado o pacote authconfig.
Execute o comando authconfig-gtk , e preencha as informações conforme abaixo, com os dados referente a sua rede.
Na tab Identidade & Autenticação.
Banco de Dados da Conta de Usuário = selecione Winbind
Domínio Winbind = SEUDOMINIO
Modelo de Segurança = ADS
Realm do Winbind ADS = SEUDOMINIO.COMPLETO
Controladores de Domínio do Winbind = nome do domain controler
Permite login offline = checked
O próximo passo é clicar em Associar-se ao domínio. Logo que clique será exibido na tela um Alerta, neste alerta devemos selecionar Salvar.
Ao clicar em salvar, será solicitado usuário e senha do domínio com permissão de ingressar máquinas. Normalmente esse usuário é o administrador.
Uma vez ingressado, basta clicar em Aplicar, que já estará pronto para iniciarmos nosso servidor.
Para completar podemos configurar nosso authconfig para criar automaticamente pastas de usuário, quando o mesmo fizer logon no Linux.
Reinicie o serviço do winbind para que tenha efeito essa alteração.
Devemos alterar uma configuração no /etc/samba/smb.conf que são as entradas relacionadas ao winbind, uma para permitir usar o domínio default, e o segundo permitir login offline. Altere as seguintes linhas abaixo no /etc/samba/smb.conf:
Caso venha a usar compartilhamentos públicos, deverá adicionar a linha abaixo:
Bem, agora basicamente tudo pronto devemos somente fazer alguns testes para verificar se os dados do Active directory estão funcionando.
Através dos comandos wbinfo -u para exibir os usuários do domínio, wbinfo -g para grupos.
Podemos visualizar informações através do comando getent. Por exemplo, para consultar o grupo gerencia do ad executamos o comando abaixo:
#getent group gerencia
gerencia:x:16777227:
E por fim, podemos fazer logon no Linux, usando um usuário do AD:
# su Administrator
Isso já nos mostra que está tudo ok. Agora vamos fazer uma configuração básica no smb.conf, para compartilhar uma pasta para o grupo gerencia do AD.
path = /mnt/samba/gerencia
valid users = @gerencia
path = /mnt/samba/publico
Acima temos duas configurações, onde a primeira compartilha o Share gerencia somente com o grupo gerencia do AD e um segundo que é publico.
Para ter efeito, basta reiniciar os serviços smb e nmb.
systemctl restart smb;systemctl enable smb
systemctl restart nmb;systemctl enable nmb
Agora basta acessar que qualquer outra máquina, fazer autenticação, caso não esteja no domínio e verificar os acessos.
Se tudo visto acima foi feito corretamente, neste momento seu Samba 4 está pronto. Agora é só brincar e fazer os compartilhamentos conforme necessidade.