Zoeken op website

Integreer Ubuntu 16.04 in AD als domeinlid met Samba en Winbind - Deel 8


In deze tutorial wordt beschreven hoe u een Ubuntu-machine kunt koppelen aan een Samba4 Active Directory-domein om AD-accounts te authenticeren met lokale ACL voor bestanden en mappen of om volumeshares te maken en toe te wijzen voor domeincontrollergebruikers (fungeren als bestandsserver).

Vereisten:

  1. Creëer een Active Directory-infrastructuur met Samba4 op Ubuntu

Stap 1: Initiële configuraties om Ubuntu te verbinden met Samba4 AD

1. Voordat u begint met het samenvoegen van een Ubuntu-host in een Active Directory DC, moet u ervoor zorgen dat sommige services correct zijn geconfigureerd op de lokale computer.

Een belangrijk aspect van uw machine vertegenwoordigt de hostnaam. Stel een juiste machinenaam in voordat u zich bij het domein voegt met behulp van de opdracht hostnamectl of door het bestand /etc/hostname handmatig te bewerken.


hostnamectl set-hostname your_machine_short_name
cat /etc/hostname
hostnamectl

2. Bij de volgende stap opent u de netwerkinstellingen van uw machine en bewerkt u deze handmatig met de juiste IP-configuraties. De belangrijkste instellingen hier zijn de DNS IP-adressen die terugverwijzen naar uw domeincontroller.

Bewerk het /etc/network/interfaces bestand en voeg de dns-nameservers verklaring toe met uw juiste AD IP-adressen en domeinnaam, zoals geïllustreerd in de onderstaande schermafbeelding.

Zorg er ook voor dat dezelfde DNS IP-adressen en de domeinnaam worden toegevoegd aan het /etc/resolv.conf bestand.

Op de bovenstaande schermafbeelding zijn 192.168.1.254 en 192.168.1.253 de IP-adressen van de Samba4 AD DC en Tecmint.lan< vertegenwoordigt de naam van het AD-domein dat zal worden opgevraagd door alle machines die in realm zijn geïntegreerd.

3. Start de netwerkservices opnieuw of start de machine opnieuw op om de nieuwe netwerkconfiguraties toe te passen. Voer een ping-opdracht uit tegen uw domeinnaam om te testen of de DNS-resolutie werkt zoals verwacht.

De AD DC zou opnieuw moeten worden afgespeeld met zijn FQDN. Als u een DHCP-server in uw netwerk hebt geconfigureerd om automatisch IP-instellingen toe te wijzen aan uw LAN-hosts, zorg er dan voor dat u AD DC IP-adressen toevoegt aan de DNS-configuraties van de DHCP-server.


systemctl restart networking.service
ping -c2 your_domain_name

4. De laatste belangrijke vereiste configuratie wordt weergegeven door tijdsynchronisatie. Installeer het ntpdate pakket, voer een query uit en synchroniseer de tijd met de AD DC door de onderstaande opdrachten uit te voeren.


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

5. Installeer bij de volgende stap de software die nodig is om de Ubuntu-machine volledig te integreren in het domein, door de onderstaande opdracht uit te voeren.


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

Terwijl de Kerberos-pakketten worden geïnstalleerd, wordt u gevraagd de naam van uw standaardrealm in te voeren. Gebruik de naam van uw domein met hoofdletters en druk op de Enter-toets om door te gaan met de installatie.

6. Nadat alle pakketten zijn geïnstalleerd, test u de Kerberos-authenticatie tegen een AD-beheerdersaccount en vermeldt u het ticket door de onderstaande opdrachten te geven.


kinit ad_admin_user
klist

Stap 2: Sluit u aan bij Ubuntu bij Samba4 AD DC

7. De eerste stap bij het integreren van de Ubuntu-machine in het Samba4 Active Directory-domein is het bewerken van het Samba-configuratiebestand.

Maak een back-up van het standaardconfiguratiebestand van Samba, geleverd door de pakketbeheerder, om te beginnen met een schone configuratie door de volgende opdrachten uit te voeren.


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

Voeg in het nieuwe Samba-configuratiebestand de onderstaande regels toe:


[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

Vervang de variabelen werkgroep, realm, netbiosnaam en dns forwarder door uw eigen aangepaste instellingen.

De parameter winbind gebruik standaarddomein zorgt ervoor dat de service winbind alle niet-gekwalificeerde AD-gebruikersnamen behandelt als gebruikers van de AD. U moet deze parameter weglaten als u lokale systeemaccountnamen heeft die AD-accounts overlappen.

8. Nu moet u alle samba-daemons opnieuw opstarten en onnodige services stoppen en verwijderen, en samba-services voor het hele systeem inschakelen door de onderstaande opdrachten te geven.


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

9. Sluit de Ubuntu-machine aan op Samba4 AD DC door de volgende opdracht te geven. Gebruik de naam van een AD DC-account met beheerdersbevoegdheden, zodat de binding met Realm werkt zoals verwacht.


sudo net ads join -U ad_admin_user

10. Vanaf een Windows-computer waarop RSAT-tools zijn geïnstalleerd, kunt u AD UC openen en naar de container Computers navigeren. Hier zou uw bij Ubuntu aangesloten machine moeten worden vermeld.

Stap 3: Configureer AD-accountverificatie

11. Om authenticatie voor AD-accounts op de lokale computer uit te voeren, moet u enkele services en bestanden op de lokale machine wijzigen.

Open en bewerk eerst het configuratiebestand The Name Service Switch (NSS).


sudo nano /etc/nsswitch.conf

Voeg vervolgens de winbind-waarde toe voor passwd- en groepsregels, zoals geïllustreerd in het onderstaande fragment.


passwd:         compat winbind
group:          compat winbind

12. Om te testen of de Ubuntu-machine succesvol is geïntegreerd in realm, voert u de opdracht wbinfo uit om domeinaccounts en groepen weer te geven.


wbinfo -u
wbinfo -g

13. Controleer ook de Winbind nsswitch-module door de opdracht getent uit te voeren en de resultaten door een filter zoals grep te leiden om de uitvoer alleen voor specifieke domeingebruikers of groepen.


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

14. Om te authenticeren op een Ubuntu-machine met domeinaccounts moet u de opdracht pam-auth-update uitvoeren met rootrechten en alle gegevens toevoegen die nodig zijn voor de winbind-service en voor automatisch thuismappen maken voor elk domeinaccount bij de eerste keer inloggen.

Controleer alle invoer door op de [spatie]-toets te drukken en op ok te drukken om de configuratie toe te passen.


sudo pam-auth-update

15. Op Debian-systemen moet u het bestand /etc/pam.d/common-account en de volgende regel handmatig bewerken om automatisch huizen te maken voor geverifieerde domeingebruikers.


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

16. Om ervoor te zorgen dat Active Directory-gebruikers het wachtwoord kunnen wijzigen vanaf de opdrachtregel in Linux, opent u /etc/pam.d/common-password > bestand en verwijder de use_authtok-instructie van de wachtwoordregel om er uiteindelijk uit te zien zoals in het onderstaande fragment.


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

17. Om te authenticeren op een Ubuntu-host met een Samba4 AD-account gebruikt u de domeingebruikersnaamparameter na het su – commando. Voer de opdracht id uit om extra informatie over het AD-account te krijgen.


su - your_ad_user

Gebruik de opdracht pwd om de huidige map van uw domeingebruiker te bekijken en de opdracht passwd als u het wachtwoord wilt wijzigen.

18. Om een domeinaccount met rootrechten op uw Ubuntu-machine te gebruiken, moet u de AD-gebruikersnaam toevoegen aan de sudo-systeemgroep door de onderstaande opdracht te geven:


sudo usermod -aG sudo your_domain_user

Meld u aan bij Ubuntu met het domeinaccount en update uw systeem door de opdracht apt-get update uit te voeren om te controleren of de domeingebruiker rootrechten heeft.

19. Om rootrechten voor een domeingroep toe te voegen, opent u het bestand /etc/sudoers met de opdracht visudo en voegt u de volgende regel toe, zoals weergegeven op onderstaande schermafbeelding.


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

Gebruik backslashes om spaties in uw domeingroepsnaam te ontwijken of om de eerste backslash te ontwijken. In het bovenstaande voorbeeld heet de domeingroep voor TECMINT realm “domeinbeheerders”.

Het voorgaande procentteken (%) geeft aan dat we verwijzen naar een groep en niet naar een gebruikersnaam.

20. Als u de grafische versie van Ubuntu gebruikt en u wilt inloggen op het systeem met een domeingebruiker, moet u LightDM Display Manager aanpassen door /usr/share/lightdm te bewerken /lightdm.conf.d/50-ubuntu.conf bestand, voeg de volgende regels toe en start de machine opnieuw op om de wijzigingen weer te geven.


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

Het zou nu in staat moeten zijn om in te loggen op Ubuntu Desktop met een domeinaccount met behulp van de indeling uw_domein_gebruikersnaam of uw_domein_gebruikersnaam@uw_domein.tld of uw_domein\uw_domein_gebruikersnaam .