Tabela de conteúdos

🖥️ Ingressar Ubuntu no Domínio Samba do NethServer

📋 Visão Geral

Este procedimento mostra como ingressar uma VM Ubuntu em um domínio Samba Active Directory (AD) disponibilizado pelo NethServer.

Após o ingresso, usuários do domínio poderão ser utilizados para autenticação na VM Ubuntu.

Fluxo do procedimento

Configurar DNS
↓
Instalar pacotes necessários
↓
Validar descoberta do domínio
↓
Ingressar no domínio
↓
Validar ingresso
↓
Permitir usuários do domínio
↓
Habilitar criação automática do /home
↓
Testar login

—

⚠️ Pré-requisitos

Antes de iniciar, confirme:

Item Esperado
NethServer funcionando Sim
Samba AD funcionando Sim
Ubuntu com acesso à rede Sim
Ubuntu resolvendo o DNS do domínio Sim
Usuário administrador do domínio Disponível
IP do NethServer Conhecido
Nome do domínio Conhecido

O DNS é fundamental para o ingresso no domínio. A Ubuntu deve utilizar o DNS responsável pelo domínio Samba/AD.

—

🧭 Informações utilizadas

Substitua os valores abaixo pelos dados do seu ambiente.

DOMINIO.LOCAL
IP_DO_NETHSERVER
usuario

Exemplo:

empresa.local
192.168.10.10
administrator

—

1️⃣ Configurar o DNS

Antes de tentar ingressar no domínio, confirme se a Ubuntu consegue resolver o domínio.

Teste:

nslookup empresa.local

Também teste o servidor:

nslookup nethserver.empresa.local

Se a resolução DNS não funcionar, não prossiga com o ingresso no domínio.

Corrija o DNS primeiro.

—

2️⃣ Instalar os pacotes necessários

Execute na Ubuntu:

sudo apt update
sudo apt install realmd sssd sssd-ad adcli samba-common-bin oddjob oddjob-mkhomedir packagekit -y

Os principais componentes utilizados são:

* realmd — gerenciamento do ingresso no domínio * sssd — autenticação dos usuários do domínio * adcli — comunicação com o Active Directory * samba-common-bin — ferramentas Samba * oddjob / mkhomedir — criação automática do diretório `/home`

—

3️⃣ Descobrir o domínio

Execute:

realm discover empresa.local

Substitua:

empresa.local

pelo domínio utilizado no NethServer.

Se estiver funcionando, serão apresentadas informações sobre o domínio encontrado.

Exemplo:

empresa.local
type: kerberos
realm-name: EMPRESA.LOCAL
domain-name: empresa.local
configured: no
server-software: active-directory
client-software: sssd

Se o comando não encontrar o domínio, verifique principalmente o DNS da Ubuntu.

—

4️⃣ Ingressar no domínio

Execute:

sudo realm join --user=administrator empresa.local

Será solicitada a senha do usuário administrador do domínio.

Exemplo:

sudo realm join --user=administrator empresa.local

Informe a senha quando solicitado.

O usuário utilizado precisa ter permissão para adicionar computadores ao domínio.

—

5️⃣ Validar o ingresso

Execute:

realm list

O domínio deverá aparecer na lista.

Exemplo:

empresa.local
  type: kerberos
  realm-name: EMPRESA.LOCAL
  domain-name: empresa.local
  configured: kerberos-member
  server-software: active-directory
  client-software: sssd

—

6️⃣ Testar usuário do domínio

Verifique se a Ubuntu consegue localizar um usuário do domínio:

id usuario@empresa.local

Exemplo:

id joao@empresa.local

Se funcionar, deverão aparecer informações semelhantes a:

uid=123456789(joao@empresa.local)
gid=123456789(domain users@empresa.local)
groups=...

Esse teste confirma que o Ubuntu consegue consultar os usuários do domínio através do SSSD.

—

7️⃣ Permitir usuários do domínio

Para permitir o acesso dos usuários do domínio:

sudo realm permit --all

O comando permite todos os usuários do domínio.

Em ambientes de produção, recomenda-se posteriormente restringir o acesso a grupos específicos.

—

8️⃣ Criar automaticamente o /home

Para que o Ubuntu crie automaticamente o diretório pessoal do usuário no primeiro login:

sudo pam-auth-update --enable mkhomedir

Assim, quando um usuário do domínio acessar a máquina pela primeira vez, seu diretório será criado automaticamente.

Exemplo:

/home/joao@empresa.local

—

9️⃣ Reiniciar o SSSD

Após as configurações:

sudo systemctl restart sssd

Verificar o serviço:

sudo systemctl status sssd

Esperado:

Active: active (running)

—

🔟 Testar login

Teste o usuário do domínio:

su - usuario@empresa.local

Exemplo:

su - joao@empresa.local

Digite a senha do usuário do domínio.

Também é possível testar:

id usuario@empresa.local

—

✅ Checklist Final

Validação Resultado esperado
DNS do domínio funcionando ✅
realm discover encontra o domínio ✅
realm join executado com sucesso ✅
realm list mostra o domínio ✅
id usuario@dominio funciona ✅
Usuários permitidos ✅
mkhomedir habilitado ✅
SSSD ativo ✅
Login com usuário do domínio funcionando ✅

—

🚑 Troubleshooting

Domínio não encontrado

Execute:

realm discover empresa.local

Se não encontrar o domínio, verifique:

resolvectl status

Teste:

nslookup empresa.local

A primeira coisa a verificar é o DNS. O Ubuntu precisa conseguir localizar os serviços do Active Directory.

—

Usuário não encontrado

Teste:

id usuario@empresa.local

Verifique o SSSD:

sudo systemctl status sssd

Reinicie:

sudo systemctl restart sssd

—

Verificar logs do SSSD

sudo journalctl -u sssd -xe

—

📌 Comandos principais — Resumo

Para facilitar a execução, os principais comandos são:

sudo apt update
 
sudo apt install realmd sssd sssd-ad adcli samba-common-bin oddjob oddjob-mkhomedir packagekit -y
 
realm discover empresa.local
 
sudo realm join --user=administrator empresa.local
 
realm list
 
id usuario@empresa.local
 
sudo realm permit --all
 
sudo pam-auth-update --enable mkhomedir
 
sudo systemctl restart sssd

—

🎯 Resultado Esperado

Ao finalizar o procedimento:

Ubuntu
   │
   │ Autenticação
   ▼
SSSD
   │
   │ Kerberos / LDAP
   ▼
Samba AD
   │
   ▼
NethServer

A VM Ubuntu estará integrada ao domínio e poderá autenticar usuários do Samba Active Directory do NethServer.

—

📚 Referência

Documentação do projeto:

https://www.samba.org/