Integrați Ubuntu 16.04 în AD ca membru de domeniu cu Samba și Winbind - Partea 8


Acest tutorial descrie cum să conectați o mașină Ubuntu într-un domeniu Samba4 Active Directory pentru a autentifica conturile AD cu ACL locale pentru fișiere și directoare sau pentru a crea și a mapa partajări de volum pentru utilizatorii controlerului de domeniu (acționează ca server de fișiere).

Cerințe:

  1. Creați o infrastructură Active Directory cu Samba4 pe Ubuntu

Pasul 1: Configurații inițiale pentru a vă alătura Ubuntu la Samba4 AD

1. Înainte de a începe să vă alăturați unei gazde Ubuntu într-un DC Active Directory, trebuie să vă asigurați că unele servicii sunt configurate corect pe mașina locală.

Un aspect important al mașinii dvs. reprezintă numele de gazdă. Configurați un nume adecvat de mașină înainte de a vă alătura domeniului cu ajutorul comenzii hostnamectl sau editând manual fișierul /etc/hostname.

# hostnamectl set-hostname your_machine_short_name
# cat /etc/hostname
# hostnamectl

2. La pasul următor, deschideți și editați manual setările de rețea a mașinii dvs. cu configurațiile IP adecvate. Cele mai importante setări aici sunt adresele IP DNS care indică înapoi la controlerul dvs. de domeniu.

Editați fișierul /etc/network/interfaces și adăugați declarația dns-nameservers cu adresele dvs. IP AD și numele de domeniu adecvate, așa cum este ilustrat în captura de ecran de mai jos.

De asemenea, asigurați-vă că aceleași adrese IP DNS și numele de domeniu sunt adăugate în fișierul /etc/resolv.conf.

În captura de ecran de mai sus, 192.168.1.254 și 192.168.1.253 sunt adresele IP ale Samba4 AD DC și Tecmint.lan< reprezintă numele domeniului AD care va fi interogat de toate mașinile integrate în domeniul.

3. Reporniți serviciile de rețea sau reporniți aparatul pentru a aplica noile configurații de rețea. Lansați o comandă ping împotriva numelui dvs. de domeniu pentru a testa dacă rezoluția DNS funcționează conform așteptărilor.

AD DC ar trebui să fie redat din nou cu FQDN-ul său. În cazul în care ați configurat un server DHCP în rețea dvs. pentru a atribui automat setări IP pentru gazdele dvs. LAN, asigurați-vă că adăugați adrese IP AD DC la configurațiile DNS ale serverului DHCP.

# systemctl restart networking.service
# ping -c2 your_domain_name

4. Ultima configurație importantă necesară este reprezentată de sincronizarea orei. Instalați pachetul ntpdate, interogarea și ora de sincronizare cu AD DC lansând comenzile de mai jos.

$ sudo apt-get install ntpdate
$ sudo ntpdate -q your_domain_name
$ sudo ntpdate your_domain_name

5. La pasul următor, instalați software-ul necesar mașinii Ubuntu pentru a fi integrat complet în domeniu, rulând comanda de mai jos.

$ sudo apt-get install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind

În timp ce pachetele Kerberos se instalează, ar trebui să vi se ceară să introduceți numele domeniului dvs. implicit. Folosiți numele domeniului dvs. cu litere mari și apăsați tasta Enter pentru a continua instalarea.

6. După ce toate pachetele s-au terminat de instalat, testați autentificarea Kerberos cu un cont administrativ AD și enumerați biletul lansând comenzile de mai jos.

# kinit ad_admin_user
# klist

Pasul 2: alăturați-vă Ubuntu la Samba4 AD DC

7. Primul pas în integrarea mașinii Ubuntu în domeniul Samba4 Active Directory este să editați fișierul de configurare Samba.

Faceți o copie de rezervă a fișierului de configurare implicit al Samba, furnizat de managerul de pachete, pentru a începe cu o configurație curată, rulând următoarele comenzi.

# mv /etc/samba/smb.conf /etc/samba/smb.conf.initial
# nano /etc/samba/smb.conf 

Pe noul fișier de configurare Samba adăugați rândurile de mai jos:

[global]
        workgroup = TECMINT
        realm = TECMINT.LAN
        netbios name = ubuntu
        security = ADS
        dns forwarder = 192.168.1.1

idmap config * : backend = tdb        
idmap config *:range = 50000-1000000
	
   template homedir = /home/%D/%U
   template shell = /bin/bash
   winbind use default domain = true
   winbind offline logon = false
   winbind nss info = rfc2307
   winbind enum users = yes
   winbind enum groups = yes

  vfs objects = acl_xattr
  map acl inherit = Yes
  store dos attributes = Yes

Înlocuiți variabilele grup de lucru, domeniu, nume netbios și dns forwarder cu propriile setări personalizate.

Parametrul winbind use default domain face ca serviciul winbind să trateze orice nume de utilizator AD necalificat ca utilizatori ai AD. Ar trebui să omiteți acest parametru dacă aveți nume de conturi de sistem locale care se suprapun conturilor AD.

8. Acum ar trebui să reporniți toți demonii samba și să opriți și să eliminați serviciile inutile și să activați serviciile samba la nivelul întregului sistem, lansând comenzile de mai jos.

$ sudo systemctl restart smbd nmbd winbind
$ sudo systemctl stop samba-ad-dc
$ sudo systemctl enable smbd nmbd winbind

9. Conectați mașina Ubuntu la Samba4 AD DC lansând următoarea comandă. Utilizați numele unui cont AD DC cu privilegii de administrator pentru ca legarea la tărâm să funcționeze conform așteptărilor.

$ sudo net ads join -U ad_admin_user

10. De pe o mașină Windows cu instrumente RSAT instalate, puteți deschide AD UC și puteți naviga la containerul Computere. Aici, mașina dvs. conectată cu Ubuntu ar trebui să fie listată.

Pasul 3: Configurați autentificarea conturilor AD

11. Pentru a efectua autentificarea pentru conturile AD pe computerul local, trebuie să modificați unele servicii și fișiere de pe computerul local.

Mai întâi, deschideți și editați fișierul de configurare The Name Service Switch (NSS).

$ sudo nano /etc/nsswitch.conf

Apoi adăugați valoarea winbind pentru liniile passwd și grup, așa cum este ilustrat în fragmentul de mai jos.

passwd:         compat winbind
group:          compat winbind

12. Pentru a testa dacă mașina Ubuntu a fost integrată cu succes în domeniul, executați comanda wbinfo pentru a lista conturile și grupurile de domeniu.

$ wbinfo -u
$ wbinfo -g

13. De asemenea, verificați modulul Winbind nsswitch lansând comanda getent și transmiteți rezultatele printr-un filtru precum grep pentru a restrânge rezultatul numai pentru utilizatori sau grupuri specifice domeniului.

$ sudo getent passwd| grep your_domain_user
$ sudo getent group|grep 'domain admins'

14. Pentru a vă autentifica pe mașina Ubuntu cu conturi de domeniu, trebuie să rulați comanda pam-auth-update cu privilegii de rădăcină și să adăugați toate intrările necesare pentru serviciul winbind și pentru creează automat directoare de acasă pentru fiecare cont de domeniu la prima conectare.

Verificați toate intrările apăsând tasta [space] și apăsați pe ok pentru a aplica configurația.

$ sudo pam-auth-update

15. Pe sistemele Debian, trebuie să editați manual fișierul /etc/pam.d/common-account și următoarea linie pentru a crea automat case pentru utilizatorii de domenii autentificați.

session    required    pam_mkhomedir.so    skel=/etc/skel/    umask=0022

16. Pentru ca utilizatorii Active Directory să poată schimba parola din linia de comandă în Linux, deschideți /etc/pam.d/common-password > și eliminați declarația use_authtok din linia de parolă pentru a arăta în sfârșit ca în fragmentul de mai jos.

password       [success=1 default=ignore]      pam_winbind.so try_first_pass

17. Pentru a vă autentifica pe gazda Ubuntu cu un cont Samba4 AD, utilizați parametrul nume de utilizator al domeniului după comanda su –. Rulați comanda id pentru a obține informații suplimentare despre contul AD.

$ su - your_ad_user

Utilizați comanda pwd pentru a vedea directorul curent al utilizatorului de domeniu și comanda passwd dacă doriți să schimbați parola.

18. Pentru a utiliza un cont de domeniu cu privilegii root pe mașina dvs. Ubuntu, trebuie să adăugați numele de utilizator AD la grupul de sistem sudo lansând comanda de mai jos:

$ sudo usermod -aG sudo your_domain_user

Conectați-vă la Ubuntu cu contul de domeniu și actualizați sistemul rulând comanda apt-get update pentru a verifica dacă utilizatorul domeniului are privilegii root.

19. Pentru a adăuga privilegii de rădăcină pentru un grup de domenii, editați fișierul /etc/sudoers folosind comanda visudo și adăugați următoarea linie așa cum este ilustrat în captura de ecran de mai jos.

%YOUR_DOMAIN\\your_domain\  group       		 ALL=(ALL:ALL) ALL

Utilizați barele oblice inverse pentru a scăpa de spațiile conținute în numele grupului dvs. de domeniu sau pentru a scăpa de prima bară oblică inversă. În exemplul de mai sus, grupul de domenii pentru domeniul TECMINT este numit „administratori de domenii”.

Simbolul precedent semnul procentual (%) indică faptul că ne referim la un grup, nu la un nume de utilizator.

20. În cazul în care rulați versiunea grafică a Ubuntu și doriți să vă conectați la sistem cu un utilizator de domeniu, trebuie să modificați managerul de afișare LightDM editând /usr/share/lightdm /lightdm.conf.d/50-ubuntu.conf, adăugați următoarele linii și reporniți mașina pentru a reflecta modificările.

greeter-show-manual-login=true
greeter-hide-users=true

Acum ar trebui să poată efectua autentificare pe desktop Ubuntu cu un cont de domeniu folosind fie your_domain_username sau [email _domain.tld sau your_domain\your_domain_username > format.