Integrieren Sie den Desktop in eine Active Directory-Domäne mithilfe von Samba und Winbind, um True SSO auf einem Ubuntu-Desktop zu unterstützen.
Verfahren Sie wie folgt, um einen Ubuntu-Desktop in eine Active Directory-Domäne zu integrieren.
In einigen der Beispiele im Verfahren werden Platzhalterwerte verwendet, um Entitäten in Ihrer Netzwerkkonfiguration darzustellen, z. B. den Hostnamen Ihres Ubuntu-Desktops. 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 Ihres Ubuntu-Desktops |
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
- Der Active Directory (AD)-Server kann auf dem Linux-System über das DNS aufgelöst werden.
- Das Network Time Protocol (NTP) ist auf dem Linux-System konfiguriert.
Prozedur
- Installieren Sie die Pakete samba und winbind auf Ihrem Ubuntu-Desktop.
sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind
- Wenn Sie dazu aufgefordert werden, konfigurieren Sie die Einstellungen für die Kerberos-Authentifizierung wie folgt.
- 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.com lautet, geben Sie
MYDOMAIN.COM ein.
- 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_hostname angegeben).
- 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.
- 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 gezeigt.
passwd: compat winbind
group: compat winbind
shadow: compat
gshadow: files
- Um sicherzustellen, dass die automatisch erstellte Datei resolv.conf auf Ihre AD-Domäne als Suchdomäne verweist, bearbeiten Sie die NetworkManager-Einstellungen für Ihre Systemverbindung.
- Ö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_ADDRESS angegeben). Klicken Sie danach auf Speichern.
- Bearbeiten Sie die Konfigurationsdatei für Ihre Systemverbindung, die sich in /etc/NetworkManager/system-connections befindet. Verwenden Sie das folgende Beispiel.
[ipv4]
dns=dns_IP_ADDRESS
dns-search=mydomain.com
ignore-auto-dns=true
method=auto
Hinweis: Beim Erstellen eines neuen virtuellen Instant-Clone-Desktops wird ein neuer virtueller Netzwerkadapter hinzugefügt. Wenn der neue Netzwerkadapter zum virtuellen Instant-Clone-Desktop hinzugefügt wird, gehen alle Einstellungen im Netzwerkadapter wie z. B. der DNS-Server in der Vorlage des virtuellen Desktops verloren. Um den Verlust der DNS-Server-Einstellung beim Hinzufügen des neuen Netzwerkadapters zu einem geklonten virtuellen Desktop zu vermeiden, müssen Sie für Ihr Linux-System einen DNS-Server angeben.
- Geben Sie den DNS-Server an, indem Sie die Konfigurationsdatei /etc/resolv.conf wie im folgenden Beispiel bearbeiten.
nameserver dns_IP_ADDRESS
search mydomain.com
- Starten Sie Ihr System neu und melden Sie sich 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 smbd neu.
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 Ihren Ubuntu-Desktop zur Active Directory-Domäne hinzu.
- Initiieren Sie ein Kerberos-Ticket.
sudo kinit admin-user
Geben Sie bei Aufforderung Ihr Administratorkennwort ein.
- Stellen Sie sicher, dass das Ticket erfolgreich erstellt wurde.
sudo klist
Dieser 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.
- wbinfo -u
- wbinfo -g
- getend passwd
- getend group
- Starten Sie Ihr System neu und melden Sie sich an.