Integrieren Sie die virtuelle Basismaschine (VM) mithilfe von Samba und Winbind in eine Active Directory-Domäne (AD), um True SSO auf Ubuntu-/Debian-Desktops zu unterstützen.
Gehen Sie wie folgt vor, um eine Ubuntu-/Debian-VM in eine AD-Domäne zu integrieren.
In einigen der Beispiele im Verfahren werden Platzhalterwerte verwendet, um Entitäten in Ihrer Netzwerkkonfiguration darzustellen, wie z. B. den Hostnamen Ihrer VM. Ersetzen Sie die Platzhalterwerte durch spezifische Informationen für Ihre Konfiguration, wie in der folgenden Tabelle gezeigt.
| Platzhalterwert | Beschreibung |
|---|---|
| dns_IP_ADDRESS | IP-Adresse Ihres DNS-Namenservers |
| mydomain.com | DNS-Name Ihrer Active Directory-Domäne |
| MYDOMAIN.COM | DNS-Name Ihrer Active Directory-Domäne in Großbuchstaben |
| myhost | Hostname Ihrer Ubuntu-/Debian-VM |
| MYDOMAIN | DNS-Name der Arbeitsgruppe oder NT-Domäne, in der sich Ihr Samba-Server befindet, in Großbuchstaben |
| ads-hostname | Hostname Ihres AD-Servers |
| admin-user | Benutzername des Administrators der AD-Domäne |
Voraussetzungen
Stellen Sie sicher, dass:
- Der AD-Server kann durch DNS auf der VM aufgelöst werden.
- Das Network Time Protocol (NTP) ist auf der VM konfiguriert.
Vorgehensweise
-
Installieren Sie die Pakete
sambaundwinbindauf der Ubuntu-/Debian-VM.sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind -
Konfigurieren Sie die Kerberos-Authentifizierungseinstellungen.
-
Wenn das Fenster für die Kerberos-Authentifizierungseinstellungen nicht auf Ihrem System angezeigt wird, führen Sie den folgenden Befehl aus, um es anzuzeigen.
sudo dpkg-reconfigure krb5-config -
Geben Sie für einen standardmäßigen Kerberos Version 5-Bereich den DNS-Namen Ihrer Active Directory-Domäne in Großbuchstaben an.
Wenn Ihr Active Directory-Domänenname z. B.
mydomain.comlautet, geben SieMYDOMAIN.COMein. -
Geben Sie für Kerberos-Server für Ihren Bereich den Hostnamen Ihres AD-Servers ein (in den Beispielen für dieses Verfahren als
ads_hostnameangegeben). -
Geben Sie für Verwaltungsserver für Ihren Kerberos-Bereich erneut den Hostnamen Ihres AD-Servers ein.
-
-
Aktualisieren Sie die PAM-Konfiguration.
-
Öffnen Sie die Seite der PAM-Konfiguration.
pam-auth-update -
Aktivieren Sie die Option Home-Verzeichnis bei Anmeldung erstellen und klicken Sie auf OK.
-
-
Bearbeiten Sie die Konfigurationsdatei
/etc/nsswitch.conf, wie im folgenden Beispiel.passwd: compat winbind group: compat winbind shadow: compat gshadow: files -
Wenn das System den richtigen DNS-Server automatisch erkennt, überspringen Sie diesen Schritt und fahren Sie mit dem nächsten Schritt fort. Wenn das System den richtigen DNS-Server nicht erkennt, führen Sie diesen Schritt aus, um den DNS-Server manuell festzulegen.
Um sicherzustellen, dass die automatisch erstellte Datei
resolv.confauf Ihre AD-Domäne als Suchdomäne verweist, bearbeiten Sie die NetworkManager-Einstellungen für Ihre Systemverbindung. Die folgenden Teilschritte enthalten die Beispielanweisungen für ein Ubuntu 20.04-System.-
Öffnen Sie die Einstellungen von NetworkManager und navigieren Sie zu den IPv4-Einstellungen für Ihre Systemverbindung. Wählen Sie als Methode Nur automatische (DHCP) Adressen aus. Geben Sie im Textfeld DNS-Server die IP-Adresse Ihres DNS-Namenservers ein (in den Beispielen für dieses Verfahren als
dns_IP_ADDRESSangegeben). Klicken Sie danach auf Speichern. -
Bearbeiten Sie die Datei
/etc/dhcp/dhclient.conf, wie im folgenden Beispiel gezeigt.supersede domain-name "mydomain.com"; prepend domain-name-servers dns_IP_ADDRESS; -
Bearbeiten Sie die Datei
/etc/systemd/resolved.conf, wie im folgenden Beispiel gezeigt.DNS=dns_IP_ADDRESS Domains="mydomain.com"Hinweis: Beim Erstellen eines neuen virtuellen Instant-Clone-Desktops wird ein neuer virtueller Netzwerkadapter hinzugefügt. Wenn Sie den Netzwerkadapter zu einem geklonten virtuellen Desktop hinzufügen, löscht die Vorlage des virtuellen Desktops die Einstellungen für den Netzwerkadapter, z. B. den DNS-Server. Um die DNS-Servereinstellung beim Hinzufügen eines neuen Netzwerkadapters beizubehalten, müssen Sie einen DNS-Server für Ihre VM angeben.
-
Geben Sie den DNS-Server an, indem Sie die Konfigurationsdatei
/etc/resolv.confwie im folgenden Beispiel bearbeiten. Wenn eine Warnung angezeigt wird, können Sie die Änderungen ignorieren und mit ihnen fortfahren.nameserver dns_IP_ADDRESS search mydomain.com -
Starten Sie die VM neu und melden Sie sich erneut an.
-
-
Bearbeiten Sie die Konfigurationsdatei
/etc/hosts, wie im folgenden Beispiel.127.0.0.1 localhost 127.0.1.1 myhost.mydomain.com myhost -
Bearbeiten Sie die Konfigurationsdatei
/etc/samba/smb.conf, wie im folgenden Beispiel.[global] security = ads realm = MYDOMAIN.COM workgroup = MYDOMAIN idmap uid = 10000-20000 idmap gid = 10000-20000 winbind enum users = yes winbind enum groups = yes template homedir = /home/%D/%U template shell = /bin/bash client use spnego = yes client ntlmv2 auth = yes encrypt passwords = yes winbind use default domain = yes restrict anonymous = 2 kerberos method = secrets and keytab winbind refresh tickets = true -
Starten Sie den Dienst
smbdneu.sudo systemctl restart smbd.service -
Bearbeiten Sie die Konfigurationsdatei
/etc/krb5.conf, sodass sie über Inhalte ähnlich dem folgenden Beispiel verfügt.[libdefaults] default_realm = MYDOMAIN.COM dns_lookup_realm = true dns_lookup_kdc = true [realms] MYDOMAIN.COM = { kdc = ads-hostname admin_server = ads-hostname } [domain_realm] .mydomain.com = MYDOMAIN.COM mydomain.com = MYDOMAIN.COM -
Fügen Sie die Ubuntu-/Debian-VM zur AD-Domäne hinzu.
-
Initiieren Sie ein Kerberos-Ticket.
sudo kinit admin-userGeben Sie bei Aufforderung Ihr Administratorkennwort ein.
-
Stellen Sie sicher, dass das Ticket erfolgreich erstellt wurde.
sudo klistDieser Befehl liefert Informationen über das Ticket, einschließlich der gültigen Start- und Ablaufzeit.
-
Erstellen Sie eine Kerberos-Keytab-Datei.
sudo net ads keytab create -U admin-user -
Treten Sie der AD-Domäne bei.
sudo net ads join -U admin-user
-
-
Führen Sie einen Neustart durch und überprüfen Sie den Winbind-Dienst.
-
Starten Sie den Winbind-Dienst neu.
sudo systemctl restart winbind.service -
Führen Sie zum Prüfen des Winbind-Dienstes die folgenden Befehle aus und prüfen Sie, ob die Ausgabe stimmt.
sudo wbinfo -usudo wbinfo -gsudo getent passwdsudo getent group
-
-
Starten Sie die VM neu und melden Sie sich erneut an.
Nächste Schritte
War diese Seite hilfreich?