Integração com Controlador de domínio SAMBA

Pré-requisitos

Para autenticar usuários previamente cadastrados num Servidor PDC SAMBA (com o recurso de Controlador de Domínio ativado) no pfSense® com o UserAuth, faz-se necessários alguns pré-requisitos. A maioria das configurações são implementadas no lado do próprio Servidor SAMBA.

Abaixo, descreveremos um passo a passo a ser seguido:

PASSO 1.

O primeiro pré-requisito para usarmos autenticação de usuários no UserAuth através de servidor SAMBA, é verificar a versão do pacote no seu servidor Linux. O formato do arquivo de Log interpretado pelo UserAuth só está disponível a partir do SAMBA 4.10, conforme documentação oficial.

Para verificar a versão do pacote SAMBA instalada no seu servidor Linux, basta executar o seguinte comando (logado como root):

    smbd --version

PASSO 2.

O primeiro passo é verificar no servidor SAMBA se a versão do serviço “smbd” já possui suporte a JSON. Para validar este ponto, basta executar o comando abaixo, conforme a documentação oficial do próprio SAMBA disponível na internet.

smbd -b | grep HAVE_JSON_OBJECT

Após verificar se o suporte ao JSON está ativado, é necessário ativar o recurso de log incluindo a linha abaixo no arquivo smb.conf e reiniciar o serviço do SAMBA.

PASSO 3.

Neste segundo passo iremos possibilitar ao pfSense® ler os logs do servidor SAMBA. Neste sentido, iremos utilizar o NFS – um recurso bem conhecido em servidores Unix-Like. Neste ponto, o pré-requisito é a instalação de alguns pacotes no seu Servidor SAMBA.

O exemplo abaixo aborda um exemplo de comando em servidores Debian/Ubuntu Linux:

apt install nfs-util nfs-kernel-server

OBS: O nome dos pacotes pode variar de acordo com versão da distribuição Linux que vocês está utilizando.

Após a instalação deve-se parametrizar o arquivo /etc/exports. Esta configuração irá implementar uma ACL permitindo a leitura dos logs somente por intermédio do IP do seu servidor pfSense®.

Neste exemplo o IP “192.168.65.1” é o IP do Firewall pfSense® onde o UserAuth está instalado. Após o procedimento o serviço “NFS” precisa ser reiniciado no seu Servidor SAMBA.

Ainda, pode ser necessário (dependendo da configuração atual do SAMBA) alterar a permissão da pasta de logs.

chmod +rx /var/log/samba

chmod -R +r /var/log/samba

Arquivo de log

O arquivo que é lido pela UserAuth para identificar os eventos de autenticação dos usuários no dominio é o /var/log/samba/log.smbd, caso o samba não esteja encaminhando o log dos eventos para este arquivo deve-se aplicar este parametro no arquivo de configuração do serviço e reinicia-lo.

log file = /var/log/samba/log.smbd

Alem disso, os log gerados pela autenticação podem ser conferidos neste arquivo a cada autenticação.

tail -f /var/log/samba/log.smbd

Configurando Integração com SAMBA

Com todos os pré-requisitos satisfeitos, basta configurar a integração no UseraAuth com o Servidor PDC SAMBA. Acesse a aba Domains da ferramenta e adicionar uma nova configuração, preenchendo as informações conforme descrição de cada campo.

Feita a configuração, pode-se acompanhar o status da integração na aba “Logs”. A ferramenta mostrará que foi capaz de montar a unidade remota (NFS) para leitura dos logs.

Neste momento, o UserAuth será capaz de identificar automaticamente os usuários que fizerem login nas estações ingressadas no PDC SAMBA - da mesma forma como procede com um Servidor Windows Active Directory.

Alterando origem dos grupos

Para configurar/alterar a pesquisa dos grupos de origem dos usuários para o Servidor SAMBA, basta acessar a dashboard inicial da ferramenta UserAurh e selecionar a opção: “Samba LDAP groups”.

Leitura dos usuários nos grupos configurados.