>> Technologie Électronique >  >> Maison intelligente >> Sécurité domestique

Intégrer Linux à Active Directory : Samba vs LDAP (SSSD) - Guide

Faites authentifier vos hôtes Linux auprès de votre domaine Windows AD. Deux approches éprouvées :

Option A : Samba Winbind (Classique)

Idéal pour serveurs fichiers/impression qui servent aussi des clients Windows via SMB.

  1. Installation : sudo apt install samba winbind krb5-user (Debian/Ubuntu) ou dnf install samba-winbind krb5-workstation (RHEL).
  2. Kerberos (/etc/krb5.conf) :
    [libdefaults]
    default_realm = CORP.EXAMPLE.COM
    dns_lookup_realm = true
    dns_lookup_kdc = true
  3. smb.conf (/etc/samba/smb.conf) :
    [global]
    workgroup = CORP
    realm = CORP.EXAMPLE.COM
    security = ads
    dedicated keytab file = /etc/krb5.keytab
    kerberos method = secrets and keytab
    winbind use default domain = yes
    winbind enum users = yes
    winbind enum groups = yes
    idmap config * : backend = tdb
    idmap config * : range = 10000-20000
    idmap config CORP : backend = rid
    idmap config CORP : range = 1000000-2000000
    template shell = /bin/bash
    template homedir = /home/%U
  4. Rejoindre le domaine :
    sudo net ads join -U administrator
    sudo systemctl enable --now winbind smbd nmbd
  5. Test : wbinfo -u; getent passwd administrator.

Option B : SSSD + LDAP (Moderne, Recommandé)

Plus léger, meilleur cache, fonctionne avec sudo, clés SSH et HBAC.

  1. Installation : sudo apt install sssd-ad sssd-tools realmd adcli krb5-user.
  2. Découvrir et rejoindre :
    sudo realm discover corp.example.com
    sudo realm join -U administrator corp.example.com
  3. SSSD s'auto-configure (/etc/sssd/sssd.conf) avec :
    [domain/corp.example.com]
    ad_domain = corp.example.com
    krb5_realm = CORP.EXAMPLE.COM
    realmd_tags = manages-system joined-with-adcli
    cache_credentials = True
    id_provider = ad
    krb5_store_password_if_offline = True
    default_shell = /bin/bash
    fallback_homedir = /home/%u@%d
    use_fully_qualified_names = False
  4. Activer : sudo systemctl enable --now sssd.
  5. Test : id user@corp.example.com; ssh user@linux-host.

Durcissement courant

  • Restreindre SSH : AllowGroups "Domain Admins" "LinuxAdmins" dans sshd_config.
  • Sudo : %Domain\ Admins ALL=(ALL) ALL dans /etc/sudoers.d/ad-admins.
  • HBAC (SSSD) : ad_access_filter = (memberOf=CN=LinuxAccess,OU=Groups,DC=corp,DC=example,DC=com).
  • Sync temps : chronyd avec contrôleurs de domaine (critique pour Kerberos).

Choisissez Samba si vous servez des fichiers SMB ; choisissez SSSD pour l'authentification/identité pure. Les deux coexistent.

Sécurité domestique