Integrieren Sie den Desktop mithilfe von Samba und Winbind in eine Active Directory (AD)-Domäne, um die Smartcard-Umleitung auf einem Ubuntu-Desktop zu unterstützen.
Wenden Sie das folgende Verfahren an, um einen Ubuntu-Desktop für die Smartcard-Umleitung in eine AD-Domäne zu integrieren.
In einigen der Beispiele im Verfahren werden Platzhalterwerte verwendet, um Entitäten in Ihrer Netzwerkkonfiguration darzustellen, z. B. den DNS-Namen Ihrer Active Directory-Domäne. 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 |
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 |
ads-hostname.mydomain.com |
Vollqualifizierter Domänenname (FQDN) Ihres AD-Servers |
mytimeserver.mycompany.com |
DNS-Name Ihres NTP-Zeitservers |
AdminUser |
Benutzername des Linux-Desktop-Administrators |
Prozedur
- Definieren Sie auf Ihrem Ubuntu-Desktop den Hostnamen des Desktops, indem Sie die Konfigurationsdatei /etc/hostname bearbeiten.
- DNS konfigurieren.
- Fügen Sie den DNS-Servernamen und die IP-Adresse zur Konfigurationsdatei /etc/hosts hinzu.
- Fügen Sie die IP-Adresse Ihres DNS-Namensservers und den DNS-Namen Ihrer AD-Domäne zur Konfigurationsdatei /etc/network/interfaces hinzu, wie im folgenden Beispiel gezeigt.
dns-nameservers dns_IP_ADDRESS
dns-search mydomain.com
- Installieren Sie das Paket resolvconfig.
- Führen Sie den Installationsbefehl aus.
apt-get install -y resolvconf
Erlauben Sie dem System, das Paket zu installieren und einen Neustart durchzuführen.
- Überprüfen Sie Ihre DNS-Konfiguration in der Datei /etc/resolv.conf wie im folgenden Beispiel gezeigt.
cat /etc/resolv.conf
…
nameserver dns_IP_ADDRESS
search mydomain.com
- Konfigurieren Sie die Synchronisierung der Netzwerkzeit.
- Installieren Sie das Paket ntpdate.
apt-get install -y ntpdate
- Fügen Sie die NTP-Server Informationen zur Konfigurationsdatei /etc/systemd/timesyncd.conf hinzu, wie im folgenden Beispiel gezeigt.
[Time]
NTP=mytimeserver.mycompany.com
- Starten Sie den NTP-Dienst neu.
sudo service ntpdate restart
- Installieren Sie die erforderlichen AD-Join-Pakete.
- Führen Sie den Installationsbefehl aus.
apt-get install -y samba krb5-config krb5-user winbind libpam-winbind
libnss-winbind
- Geben Sie bei der Installationsaufforderung nach dem Standard-Kerberos-Bereich den DNS-Namen Ihrer AD-Domäne in Großbuchstaben ein (z. B. MYDOMAIN.COM). Wählen Sie dann Ok aus.
- Bearbeiten Sie die Konfigurationsdatei /etc/krb5.conf, wie im folgenden Beispiel.
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
default_realm = MYDOMAIN.COM
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
MYDOMAIN.COM = {
kdc = ads-hostname.mydomain.com
admin_server = ads-hostname.mydomain.com
default_domain = ads-hostname.mydomain.com
pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem
pkinit_cert_match = <KU>digitalSignature
pkinit_kdc_hostname = ads-hostname.mydomain.com
}
[domain_realm]
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
- Führen Sie die folgenden Befehle aus, um die Kerberos-Zertifizierung zu überprüfen.
kinit Administrator@MYDOMAIN.COM
klist
Stellen Sie sicher, dass die Befehle die Ausgabe ähnlich dem folgenden Beispiel zurückgeben.
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: Administrator@MYDOMAIN.COMValid starting Expires Service principal
2019-05-27T17:12:03 2019-05-28T03:12:03 krbtgt/MYDOMAIN.COM@MYDOMAIN.COM
renew until 2019-05-28T17:12:03
- Bearbeiten Sie die Konfigurationsdatei /etc/samba/smb.conf, wie im folgenden Beispiel.
[global]
workgroup = MYDOMAIN
realm = MYDOMAIN.COM
password server = ads-hostname.mydomain.com
security = ads
kerberos method = secrets only
winbind use default domain = true
winbind offline logon = false
template homedir =/home/%D/%U
template shell = /bin/bash
client use spnego = yes
client ntlmv2 auth = yes
encrypt passwords = yes
passdb backend = tdbsam
winbind enum users = yes
winbind enum groups = yes
idmap uid = 10000-20000
idmap gid = 10000-20000
- Treten Sie der AD-Domäne bei und überprüfen Sie die Integration.
- Führen Sie die AD-Join-Befehle aus.
net ads join -U AdminUser@mydomain.com
systemctl stop samba-ad-dc
systemctl enable smbd nmbd winbind
systemctl restart smbd nmbd winbind
- Passen Sie die Konfigurationsdatei /etc/nsswitch.conf an, wie im folgenden Beispiel gezeigt.
passwd: compat systemd winbind
group: compat systemd winbind
shadow: compat
gshadow: files
- Um das Ergebnis des AD-Beitritts zu überprüfen, führen Sie die folgenden Befehle aus und prüfen Sie, ob die richtige Ausgabe zurückgegeben wird.
- Führen Sie zum Prüfen des Winbind Name Service Switch die folgenden Befehle aus und prüfen Sie, ob die Ausgabe stimmt.
getent group|grep 'domain admins'
getent passwd|grep 'ads-hostname'
- Aktivieren Sie alle PAM-Profile.
Wählen Sie im Bildschirm „PAM-Konfiguration“ alle PAM-Profile aus, einschließlich
Home-Verzeichnis bei Anmeldung erstellen, und wählen Sie dann
Ok aus.
- Aktivieren Sie unter Ubuntu 16.04 den Benutzer-Switch im Anmeldebildschirm. Ändern Sie die Datei /usr/share/lightdm/lightdm.conf.d/50-Ubuntu.conf wie im folgenden Beispiel gezeigt.
user-session=ubuntu
greeter-show-manual-login=true