ubuntuusers.de

Tipps

Hinweis:

Dieses Howto wurde von Bournless erstellt. Bei Problemen mit der Anleitung melde dies bitte in der dazugehörigen Diskussion und wende dich gegebenenfalls zusätzlich an den/die Verfasser des Howtos.

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Ziel

Dieses Howto beschreibt einige zusätzliche Hinweise, Ergänzungen und Tipps, wenn man zuvor einen Domaincontroller (DC), gemäß dem Howto Samba-AD-Server_unter_Ubuntu_20.04_installieren erfolgreich installiert hat und wendet sich primär an weniger erfahrene, aber dennoch interessierte User, die auch stationäre Ubuntu PCs (ab der Desktop-Version 20.04) in die Domäne aufnehmen möchten.

Die Ubuntu-Serverversionen werden in diesem Howto nicht berücksichtigt, da sie auf unterschiedliche Vorgehensweisen an die Domäne gebunden werden können!

Hinweis:

Zum leichteren Verständins werden alle Vorgaben (Bezeichnungen, Realm und IP-Adressen) aus dem oben genannten Howto benutzt.

AD-Benutzerkonten (Samba-Tool)

Nach Abschluss der Installation des neuen Domaincontrollers (adc01) existiert im Active Directory nur ein aktiviertes Benutzerkonto - das Konto vom Administrator. Um nun Standard-Benutzerkonten im AD anzulegen, benutzt man in der Regel die Remoteserver-Verwaltungstools (RSAT), die aber einen Windows PC in der Domäne voraussetzen. Wer diesen aber nicht bereitstellen kann oder möchte, kann als Alternative die samba-tools nutzen, die bereits auf dem Domaincontroller vorhanden sind.

Eine ausführliche Beschreibung findet man in der entsprechenden Manpage:

sudo samba-tool -h 

AD-Benutzerkonto erstellen

sudo samba-tool user create peterp Hugo#0815 --given-name=Peter --surname=Pan 

erstellt ein AD-Benutzerkonto für Peter Pan mit dem Benutzeranmeldename (loginname) peterp und dem Passwort Hugo#0815 in der OU Users.

AD-Benutzerkonten anzeigen

sudo samba-tool user list 

zeigt eine kurze Übersicht aller AD-Benutzerkonten an.

AD-Benutzerkonten-Details

sudo samba-tool user show peterp 

zeigt alle Details zum AD-Benutzerkonto von Peter Pan an.

Gateway und DNS

Die diesbezüglichen notwendigen Einstellungen auf den Clients werden in diesem Howto manuell erfolgen, da

  • auf dem DC (adc01) gewollt kein DHCP-Server installiert wurde.

  • die meisten DHCP-Server auf den s.g. SOHO-Routern (z.B. Fritz!Box) nur eine IP-Adresse für lokale DNS-Server vergeben können.

Ubuntu (neuer PC)

Ein neu zu installierender stationärer kabelgebundener PC (Ubuntu-Desktop ab der Version 20.04.4) wird zunächst per "Ubuntu ausprobieren" gestartet, um im NetworkManager im TAB IPv4 manuell eine gewünschte IP (10.10.20.x), die Subnetzmaske (24) und die IP des Gateways (10.10.20.1) eintragen zu können. Um den DC (adc01) als primären lokalen DNS-Server einzutragen wird im Abschnitt DNS der Schalter "Automatisch" auf deaktiviert gestellt und im darunter liegenden Feld die IP des DCs (10.10.20.220) zuerst genannt. Damit der Client auch bei einem Ausfall oder Nichterreichbarkeit des DCs weiterhin mit dem Internet kommunizieren kann, kann hier zusätzlich die IP des Gateway (10.10.20.1) eingetragen werden, da er über eine DNS-Forwarder-Adresse (einen öffentlichen DNS-Server) verfügt.

Beispiel:

10.10.20.220,10.10.20.1

Jetzt ist sichergestellt, dass der neue Client-PC den DNS-Server des AD-DC zuerst benutzt und gleichzeitig über eine funktionsfähige Internetverbindung verfügt.

Ubuntu (vorhandener PC)

Zuerst muss dafür gesorgt werden, dass auf dem vorhandenen stationären PC die bereits schon installierte Ubuntu-Desktop Version 20.04.x der Version 20.04.4 entspricht. Dazu wird der Befehl

sudo apt update && sudo apt upgrade  

ausgeführt.

Nun wird die IP des Client-PC im NetworkManager im TAB IPv4 (10.10.20.x) manuell vergeben, die Subnetzmaske (24) und die IP des Gatways (10.10.20.1) eingetragen. Um den DC (adc01) als primären lokalen DNS-Server einzutragen wird im Abschnitt DNS der Schalter "Automatisch" auf deaktiviert gestellt und im darunter liegenden Feld die IP des DCs (10.10.20.220) zuerst genannt. Damit der Client auch bei einem Ausfall oder Nichterreichbarkeit des DCs weiterhin mit dem Internet kommunizieren kann, kann hier zusätzlich die IP des Gateway (10.10.20.1) eingetragen werden, da er über eine DNS-Forwarder-Adresse (einen öffentlichen DNS-Server) verfügt.

Beispiel:

10.10.20.220,10.10.20.1

Mobile Geräte

Hinweis:

Eine Konfiguration für mobile Geräte (z.B. Notebooks oder Subnetbooks), die auch mal das heimiche LAN verlassen ist zwar möglich, sprengen aber den Umfang dieses Howtos.

Zeitserver

Eine gesonderte Konfiguration ist auf den stationären Ubuntu-Desktop Clients nicht zwingend notwendig, da diese nun stets einen öffentlichen Zeitserver erreichen können. Allerdings ist es auch möglich, den Zeitserver des lokalen Domaincontrollers als primären Zeitserver zu hinterlegen, was unkomliziert per per timesyncd möglich ist.

GptTmpl.inf

Ohne die bisher fehlende Datei GptTmpl.inf kann ein neu zu installierender Ubuntu-Desktop PC ab der Version 20.04.x zwar schon während des Installationsvorgangs der Domäne beitreten, jedoch wird jeglicher Versuch, sich anschließend mit einem AD-Benutzerkonto anzumelden, nach Eingabe des (korrekten) Passwortes mit einer Fehlermeldung abgelehnt. Grund: Die bisherigen Versionen von SSSD (bis zur Version 2.7+) erwarten u.A. die Existenz der Datei GptTmpl.inf

GptTmpl.inf erstellen

Zur Erstellung der fehlenden .inf Datei meldet man sich auf dem DC (adc01) als Systemverwalter an, um anschließend folgende Befehle auszuführen:

sudo -i
cd /var/lib/samba/sysvol/*/Policies/{31*/MACHINE
mkdir -p Microsoft/"Windows NT"/SecEdit
cd Microsoft/Windows\ NT/SecEdit
nano GptTmpl.inf 

Die nun neu erstellte Datei bekommt folgenden Inhalt:

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1

Diese Datei abschließend speichern und schließen.

Mit dem Befehl

exit 

sollte der "Superuser-Modus" nun wieder verlassen werden.

AD-Join (neuer PC)

Nachdem die Datei GptTmpl.if erfolgreich erstellt wurde, kann ein neu zu installierender Ubuntu-Desktop PC (ab der Version 20.04.4) schon während des Installationsvorgangs im AD registriert werden, um nach dem Abschluss der Installation sofort die bereits vorhandenen AD-Benutzerkonten zur Anmeldung nutzen zu können. Dazu aktiviert man während des Installationsvorgang den Punkt "Use Active Directory" und trägt bei "Domain" den Namen der Domäne (heim.lan), bei "Domain Administrator" Administrator und bei "Kennwort" das im Howto bereits vergebene Password ein. (ACHTUNG: Hier ist nicht das Passwort vom Systemverwalter gemeint!)

AD-Join (vorhandener PC)

Um Vergleichbares auf einem bereits vorhandenen PC (Ubuntu-Desktop ab Version 20.04.4) zu erreichen, sind folgende Befehle notwendig:

sudo apt update && sudo apt upgrade
sudo apt install sssd-ad sssd-tools realmd adcli
sudo pam-auth-update --enable mkhomedir
sudo realm join heim.lan 

Damit ist der PC der Domäne (heim.lan) beigetreten und man kann sich mit den vorhandenen AD-Benutzerkonten an der Domäne anmelden.

Ausnahme

Bei Ubuntu-Desktop Versionen, welche nicht von Beginn an nicht mindestens eine Version 20.04.4 waren, bedarf es leider etwas Nacharbeit an der Datei sssd.conf, da sonst die Anmeldung von AD-Benutzerkonten nicht ordnungsgemäß funktioniert - weder im Terminal noch im Anmeldebildschirm.

Hinweis:

Eine bereits vorkonfigurierte Datei sssd.conf wird erst erzeugt, wenn der Join-Befehl erfolgreich ausgeführt wurde.

sudoedit /etc/sssd/sssd.conf 

Im Abschnitt [domain/heim.lan] als letzte Zeile den Eintrag

ad_gpo_access_control = permissive

hinzufügen. Diese Datei abschließend speichern und schließen.

Nun werden noch noch die Befehle

sudo sss_cache -UG
sudo systemctl restart sssd 

ausgeführt und der bisherige Benutzer (Systemverwalter) ausgeloggt. Alternativ kann man den PC auch einfach rebooten lassen.

AD-Login

Login im Terminal

Hinweis:

Im Gegensatz zum Anmelden im Anmeldebilschirm (Login Screen) ist das Anmelden mit einem AD-Benutzerkonto in einem Terminal nur möglich, wenn der aktuell am System angemeldete Benutzer Befehle mit root-Rechten ausführen kann und wird danach nicht im Anmeldebildschirm gelistet!

Im folgenden Beispiel ist der Benutzer ich ein Systemveralter auf u2004-13

ich@u2004-13:~/Schreibtisch$ sudo login
[sudo] Passwort für ich: 

Zunächst wird wie gewohnt das Passwort des Systemverwalters abgefragt. Nach der erfolgreichen Anmeldung einscheint nun ein neuer Login-Prompt.

u2004-13 Login: peterp@heim.lan
Passwort: 

Erst hier wird das AD-Benutzerkonto in UPN-Schreibweise und dessen Passwort eingegeben.

Login im Anmeldebildschirm

Im Anmeldebildschirm (Login Screen) auf "Nicht aufgeführt?" klicken und mit einem AD-Konto in UPN-Schreibweise anmelden.

Beispiel:

Benutzer: peterp@heim.lan
Passwort: Hugo#0815

Info: Weitere, bereits vorhandene AD-Benutzerkonten können alternativ auch in der GUI unter Einstellungen->Benutzerkonto mit dem Button Anmeldung in Unternehmensumgebung eingerichtet werden, die anschließend im Login Screen gelistet werden. Allerdings werden deren Homezeichnisse erst bei der ersten erfolgreichen Anmeldung im AD erstellt.

Tipp Anmeldebildschirm

Der Anmeldebildschirm zeigt standardmäßig alle vorhandenen lokalen Benutzer an. Dazu gehören auch alle auf dem System eingerichten AD-Benutzerkonten , was sehr schnell unübersichtlich werden kann.

Dieses Verhalten kann wie folgt geändert werden:

sudoedit /etc/gdm3/greeter.dconf-defaults 

Nun entfernt man das Hash-Zeichen (#) bei den folgenden Zeilen:

# [org.gnome/login-screen]
# disable-user-list=true

Die Datei speichern und schließen.

Ab jetzt werden im Anmeldebildschirm keine Benutzerkonten mehr angezeigt.

Hinweis (PowerShell AD Module)

Als gute und kostenfreie Möglichkeit ein Active Directory unter Ubuntu zu administrieren bietet sich das Snap-Paket PowerShell an.

Diese Revision wurde am 30. Mai 2022 17:52 von tuxifreund erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Samba, Samba-AD, Server, AD-Benutzerkonten, Howto, Client-Join