Ir para o conteúdo

Samba4: mudanças entre as edições

De RJGSWiki
Criou página com '= Samba4 AC/DC = == Provisionamento == === Fixar IP === ==== Cópia de segurança do arquivo ==== cp /etc/netplan/*.yaml /etc/netplan/*.yaml.bckp Edite o arquivo ".yaml" em "/etc/netplan" conforme abaixo: <pre> network: version: 2 ethernets: enp0s3: dhcp4: false adresses: [192.168.0.100/24] routes: - to: default via: 192.168.0.1 nameservers: adresses: - 8.8.8.8 - 1.1.1.1 </pre> === Ajus...'
Etiqueta: wikieditor
 
Sem resumo de edição
Etiqueta: wikieditor
 
Linha 46: Linha 46:


  hostnamectl set-hostname AD1.DOMINIO.LOCAL
  hostnamectl set-hostname AD1.DOMINIO.LOCAL
=== Ajuste date e hora ===
timedatectl set-timezone America/Sao_Paulo
Para verificar a hora
date


==== Instala as dependências ====
==== Instala as dependências ====
Linha 171: Linha 179:


<pre>
<pre>
nameserver 192.168.0.100
nameserver 192.168.0.1
domain dominio.local
domain dominio.local
search dominio.local
search dominio.local

Edição atual tal como às 03h06min de 18 de maio de 2025

Samba4 AC/DC[editar]

Provisionamento[editar]

Fixar IP[editar]

Cópia de segurança do arquivo[editar]

cp /etc/netplan/*.yaml /etc/netplan/*.yaml.bckp

Edite o arquivo ".yaml" em "/etc/netplan" conforme abaixo:

network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: false
      adresses: [192.168.0.100/24]
      routes:
        - to: default
          via: 192.168.0.1
      nameservers:
        adresses:
          - 8.8.8.8
          - 1.1.1.1

Ajuste no /etc/hosts[editar]

Edite o arquivo[editar]

vim /etc/hosts

ajuste como o trecho abaixo[editar]

127.0.0.1       localhost.localdomain   localhost
127.0.1.1       dominio.dominio.local         ad1
192.168.18.10   ad1.dominio.local       ad1

Ajuste no /etc/hostname[editar]

Edite o arquivo /etc/hostname[editar]

hostnamectl set-hostname AD1.DOMINIO.LOCAL

Ajuste date e hora[editar]

timedatectl set-timezone America/Sao_Paulo

Para verificar a hora

date

Instala as dependências[editar]

apt install autoconf
apt install bind9utils
apt install bison
apt install debhelper
apt install dnsutils
apt install docbook-xml
apt install docbook-xsl
apt install flex
apt install gdb
apt install libjansson-dev
apt install libacl1-dev
apt install libaio-dev
apt install libarchive-dev
apt install libattr1-dev
apt install libblkid-dev
apt install libbsd-dev
apt install libcap-dev
apt install libcups2-dev
apt install libgnutls28-dev
apt install libgpgme11-dev
apt install libjson-perl
apt install libldap2-dev
apt install libncurses5-dev
apt install libpam0g-dev
apt install libparse-yapp-perl
apt install libpopt-dev
apt install libreadline-dev
apt install nettle-dev
apt install perl
apt install perl-modules
apt install pkg-config
apt install python-all-dev
apt install python-crypto
apt install python-dbg
apt install python-dev
apt install python-dnspython
apt install python3-dnspython
apt install python-gpg
apt install python3-gpg
apt install python-markdown
apt install python3-markdown
apt install python3-dev
apt install xsltproc
apt install zlib1g-dev
apt install liblmdb-dev
apt install lmdb-utils
apt install libsystemd-dev

Reinicia[editar]

reboot now

Instala mais o samba e suas dependências[editar]

apt install samba
apt install krb5-user
apt install winbind
apt install libnss-winbind
apt install smbclient
apt install ldap-utils 
apt install acl 
apt install attr 
apt install ntp

Configurar o Kerberos[editar]

Configuring Kerberos Authentication[editar]

default kerberos Realm: 
DOMINIO.LOCAL
Kerberos Server for your realm:
127.0.0.1
Administrative Server for your Kerberos realm:
127.0.0.1

Parar alguns serviços[editar]

systemctl stop smbd.service
systemctl stop nmbd.service
systemctl stop winbind.service

Remover o smb.conf[editar]

mv /etc/samba/smb.conf /etc/samba/smb.conf.bckp

Provisionamento[editar]

samba-tool domain provision --use-rfc2307 --interactive

Em um certo momento do provisionamento, será perguntado algumas informações, confirme como abaixo:

Realm [ ]: DOMINIO.LOCAL
Domain[ ]: DOMINIO
Server Role [dc]: dc
DNS Backend [SAMBA_INTERNAL]: SAMBA_INTERNAL
DNS Forwarder IP address[127.0.0.53]: 8.8.8.8
Administrator password: *************

Iniciar os serviços que foram parados anteriormente:[editar]

/etc/init.d/samba-ad-dc restart
systemctl unmask samba-ad-dc.service
systemctl enable samba-ad-dc.service
systemctl restart samba-ad-dc.service
systemctl status samba-ad-dc.service

Desativar o systemd-resolved[editar]

systemctl disable systemd-resolved.service
systemctl stop systemd-resolved.service

Editar o arquivo /etc/resolv.conf[editar]

vim /etc/resolv.conf

Inclua o trecho abaixo:

nameserver 192.168.0.1
domain dominio.local
search dominio.local

Exportar o krb5.conf[editar]

cp -vb /var/lib/samba/private/krb5.conf /etc/krb5.conf

Reinicia[editar]

reboot now

Realização de testes[editar]

smbclient -L localhost -U Administrator

Verificar se o serviço de DNS está funcionando fazendo as resoluções:[editar]

host -t A dominio.local
host -t SRV _ldap._tcp.dominio.local
host -t SRV _kerberos._udp.dominio.local

Verificar o funcionamento do KERBEROS[editar]

kinit [email protected]
klist

Verifica o nivel da árvore[editar]

samba-tool domain level show


Colocar no Domínio[editar]

Linux Desktop[editar]

Para inserir seu Ubuntu Desktop (ou qualquer outro com base no Ubuntu) no domínio DOMINIO.LOCAL, execute o passo a passo pelo terminal.

Requisitos:

  • Nome DNS resolvido corretamente (/etc/resolv.conf)
  • Usuário do domínio com permissão para adicionar máquinas (ex: Administrador)
  • Hora sincronizada com o AD
  • Hostname da máquina configurado corretamente
🔧 1. Configure hostname e resolv.conf
A. Defina o hostname:

sudo hostnamectl set-hostname xubuntu.dominio.local

B. Edite o /etc/hosts:

sudo nano /etc/hosts

Adicione (ou edite) a linha correspondente:

192.168.0.123  xubuntu.dominio.local  xubuntu

C. Configure o DNS para apontar para o Samba AD:

sudo nano /etc/systemd/resolved.conf

Altere (ou descomente e edite) as linhas:

DNS=192.168.0.10
Domains=dominio.local

Salve, e reinicie o serviço de DNS:

sudo systemctl restart systemd-resolved

🕓 2. Configure o timezone e sincronize o relógio (importante!)

sudo timedatectl set-timezone America/Sao_Paulo
sudo apt install chrony -y

Edite /etc/chrony/chrony.conf e adicione no início:

server 192.168.0.10 iburst

Depois:

sudo systemctl restart chrony
chronyc tracking

📦 3. Instalar os pacotes necessários

sudo apt update
sudo apt install realmd sssd sssd-tools adcli samba-common-bin packagekit libnss-sss libpam-sss krb5-user -y

Durante a instalação do krb5-user, insira:

    Realm: DOMINIO.LOCAL

    Servidor KDC: dominio.local

    Servidor Admin: dominio.local

🔐 4. Testar autenticação no domínio (Kerberos)

kinit [email protected]

Você será solicitado a inserir a senha. Se tudo estiver certo, você pode verificar com:

klist

🏁 5. Ingressar a máquina no domínio

sudo realm join --user=administrador DOMINIO.LOCAL

Se houver erro de DNS ou tempo, volte aos passos anteriores.
🔍 6. Verifique se foi ingressado corretamente

realm list

Você deve ver algo como:

realm-name: DOMINIO.LOCAL
configured: kerberos-member

👥 7. Permitir usuários do domínio

Para permitir todos os usuários:

sudo realm permit --all

Ou apenas um grupo:

sudo realm permit --groups "DOMINIO\Domain Users"

👤 8. Login de usuários do domínio (no LightDM ou terminal)

Você pode logar com:

[email protected]

Para que usuários do domínio tenham diretórios home:

sudo pam-auth-update

E marque: "Create home directory on login"
🧪 9. Testar no terminal

Tente rodar:

id [email protected]

Você deve ver as informações do usuário, com grupos do domínio.
💡 DICA: Evite digitar o domínio no login

Edite /etc/sssd/sssd.conf (se não existir, crie com cuidado):

[sssd]
domains = dominio.local
config_file_version = 2
services = nss, pam

[domain/dominio.local]
id_provider = ad
override_homedir = /home/%u
default_shell = /bin/bash

Depois:

sudo chmod 600 /etc/sssd/sssd.conf
sudo systemctl restart sssd