Einrichtung von winbind unter Debian

Im folgenden wir beschrieben, wie winbind unter Debian eingerichtet werden muss, damit User ab Samba 3.x durch Active Directory authentifiziert werden können. In weiteren Schritten können sich User auch direkt an einem Linux-Terminal anmelden, deren Accounts lediglich im Active Directory vorhanden sind.

Voraussetzungen

Folgende Packages sollten installiert sein:

  • winbind
  • samba
  • libkrb53
  • krb5-user

Bei der Installation von krb5-conf werden ein paar Informationen direkt abgefragt, wie etwas der Default Realm (entspricht dem Namen der Active Directory Domäne) und des Domänenservers. Anschließend sollte allerdings die Datei /etc/krb5.conf noch ein wenig bearbeitet werden. Soll Kerberos nur für in Zusammenhang mit Winbind eingesetzt werden, so können die ganzen MIT-Realms ersteinmal entfernt werden. Auch werden eine ganze Reihe von Einstellungen für Kerberos 4 nicht benötigt; auch diese können weg.

Eine einfache krb5.conf Datei für die Domäne ACME.COM (aka Realm) könnte also so aussehen:

 [libdefaults]
        default_realm = ACME.COM
        kdc_timesync = 1
        ccache_type = 4
        forwardable = true
        proxiable = true
 [realms]
 ACME.COM = {
        kdc = server.acme.com
        admin_server = server.acme.com
 }
 [domain_realm]
        acme.com = ACME.COM
        .acme.com = ACME.COM

Damit die Benutzerauflösung auch durch Winbind erfolgen kann, muss zum einen in der nsswitch.confneben compat auch windbind eingetragen werden (auf diese Weise werden sowohl lokale Benutzer als auch Benutzer über Winbind zur Verfügung gestellt) und Samba muss noch so eingestellt werden, daß die Authentifizierung über das ADS läuft. Eine einfach smb.conf sieht dann etwa so aus:

 # Global parameters
 [global]
        workgroup = ACME
        realm = ACME.COM
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        winbind separator = /
        winbind use default domain = yes
        server string = %h server (Samba %v)
        security = ADS
        password server = server.acme.com
        client use spnego = yes

Damit die Änderungen übernommen werden, muss sowohl Samba als auch Winbind neu gestartet werden (/etc/init.d/samba restart; /etc/init.d/winbind restart). Anschließend kann mit wbinfo -u eine Liste alle Benutzer über winbind angezeigt werden.

Nun sollten sich auch Windows-Benutzer, die auf dem Linux Rechner nicht lokal angelegt sind, auf Samba-Freigaben verbinden können. Die Authentifizierung wird im Hintergrund durch Winbind erledgit.