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

  1. Definieren Sie auf Ihrem Ubuntu-Desktop den Hostnamen des Desktops, indem Sie die Konfigurationsdatei /etc/hostname bearbeiten.
  2. DNS konfigurieren.
    1. Fügen Sie den DNS-Servernamen und die IP-Adresse zur Konfigurationsdatei /etc/hosts hinzu.
    2. 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
  3. Installieren Sie das Paket resolvconfig.
    1. Führen Sie den Installationsbefehl aus.
      apt-get install -y resolvconf
      Erlauben Sie dem System, das Paket zu installieren und einen Neustart durchzuführen.
    2. Ü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
  4. Konfigurieren Sie die Synchronisierung der Netzwerkzeit.
    1. Installieren Sie das Paket ntpdate.
      apt-get install -y ntpdate
    2. Fügen Sie die NTP-Server Informationen zur Konfigurationsdatei /etc/systemd/timesyncd.conf hinzu, wie im folgenden Beispiel gezeigt.
      [Time]
      NTP=mytimeserver.mycompany.com
  5. Starten Sie den NTP-Dienst neu.
    sudo service ntpdate restart
  6. Installieren Sie die erforderlichen AD-Join-Pakete.
    1. Führen Sie den Installationsbefehl aus.
      apt-get install -y samba krb5-config krb5-user winbind libpam-winbind
          libnss-winbind
    2. 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.
  7. 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
  8. 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    
    
  9. 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
  10. Treten Sie der AD-Domäne bei und überprüfen Sie die Integration.
    1. 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
    2. 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
    3. 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.
      wbinfo -u
      
      wbinfo -g
    4. 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'
  11. Aktivieren Sie alle PAM-Profile.
    pam-auth-update
    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.
  12. 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

Nächste Maßnahme

Einrichten der Smartcard-Umleitung für einen Ubuntu-Desktop