Einrichten von Kerberos 5 Servern in Red Hat Linux 7.0

Wenn Sie Kerberos einrichten, müssen Sie zuerst den/die Server installieren. Falls Sie Slave-Server benötigen, finden Sie detaillierte Informationen zum Einrichten der Beziehungen zwischen Master- und Slave-Servern im Kerberos 5 Installation Guide (unter /usr/share/doc/krb5-server-Versionsnummer/).

So installieren Sie einen Kerberos-Server:

  1. Installieren Sie die Pakete krb5-libs, krb5-server und krb5-workstation auf dem dedizierten Rechner, auf dem Ihr KDC ausgeführt werden soll. Dieser Rechner muss sicher sein — falls möglich, sollten außer dem KDC keine weiteren Dienste auf ihm ausgeführt werden.

    Falls Sie ein GUI-Dienstprogramm (Graphical User Interface, GUI) für die Verwaltung von Kerberos verwenden möchten, sollten Sie auch das Paket gnome-kerberos installieren. gnome-kerberos enthält krb5, ein GUI-Tool für das Verwalten von Tickets, und gkadmin, ein GUI-Tool für das Verwalten von Kerberos-Realms.

  2. Bearbeiten Sie die Konfigurationsdateien /etc/krb5.conf und /var/kerberos/krb5kdc/kdc.conf, so dass der Name Ihres Realms und Ihre Zuordnungen Domäne/Realm darin wiedergegeben werden. Sie können einen einfachen Realm erzeugen, indem Sie die Instances von EXAMPLE.COM und example.com durch den Namen Ihrer Domäne ersetzen (behalten Sie die Groß- und Kleinschreibung bei) und den KDC kerberos.example.com in den Namen Ihres Kerberos-Servers ändern. Es herrscht die Konvention, alle Namen von Realms in Großbuchstaben und alle DNS-Rechnernamen und Domänennamen in Kleinbuchstaben anzugeben. Details zu den Formaten dieser Dateien finden Sie auf den entsprechenden man-Seiten.

  3. Erstellen einer Datenbank mit Hilfe des Dienstprogramms kdb5_util von einem Shell Prompt aus:

    /usr/kerberos/sbin/kdb5_util create -s

    Der Befehl create erstellt die Datenbank, in der die Keys für Ihren Kerberos-Realm gespeichert werden. Die Erweiterung -s erzwingt das Erstellen einer stash-Datei, in der der Key des Master-Servers gespeichert ist. Ist keine stash-Datei vorhanden, aus der der Key ausgelesen werden könnte, fordert der Kerberos-Server (krb5kdc) den Benutzer bei jedem Start auf, das Passwort des Master-Servers einzugeben (das zum Regenerieren des Key verwendet werden kann).

  4. Bearbeiten Sie die Datei /var/kerberos/krb5kdc/kadm5.acl. kadmind verwendet diese Datei, um festzustellen, welche Principals Zugriff auf die Kerberos-Datenbank haben und über welche Art von Zugriff sie verfügen. Für die meisten Organisationen reicht eine einzelne Zeile aus:

    */admin@EXAMPLE.COM  *

    Die meisten Benutzer werden in der Datenbank durch einen einzelnen Principal repräsentiert (mit einem Instance vom Typ NULL; z.B.: joe@EXAMPLE.COM). Bei dieser Konfiguration haben Benutzer, die über einen zweiten Principal mit einem Instance vom Typ admin verfügen (z.B.: joe/admin@EXAMPLE.COM), umfassenden Zugriff auf die Kerberos-Datenbank des Realms.

    Sobald kadmind auf dem Server gestartet wurde, kann jeder Benutzer auf die Serverdienste zugreifen, indem er auf einem beliebigen Client oder Server im Realm kadmin oder gkadmin ausführt. Allerdings können nur in der Datei kadm5.acl aufgeführte Benutzer die Datenbank beliebig modifizieren (davon ausgenommen sind Änderungen an ihrem eigenen Passwort).

    AnmerkungBitte beachten:
     

    Die Dienstprogramme kadmin und gkadmin kommunizieren mit dem kadmind-Server über das Netzwerk. Bevor Sie zu Verwaltungszwecken über das Netzwerk eine Verbindung mit dem Server herstellen können, müssen Sie einen Principal erzeugen. Verwenden Sie dazu den Befehl kadmin.local:

    /usr/kerberos/sbin/kadmin.local -q addprinc joeuser/admin
  5. Starten Sie Kerberos mit Hilfe der folgenden Befehle:

    krb5kdc start
    kadmin start
    krb524 start
  6. Fügen Sie für Ihre Benutzer Principals hinzu. Verwenden Sie dazu den kadmin-Befehls addprinc oder die gkadmin-Menüoption Principal => Add (Hinzufügen).

  7. Überprüfen Sie, ob der Server Tickets ausstellt. Führen Sie zunächst kinit aus, um ein Ticket zu erhalten, und speichern Sie es in einer Credential Cache-Datei. Zeigen Sie anschließend mit klist eine Liste der in Ihrem Cache enthaltenen Berechtigungsnachweise (Credentials) an, und löschen Sie den Cache und die darin enthaltenen Berechtigungsnachweise mit Hilfe von kdestroy.

    AnmerkungBitte beachten:
     

    Standardmäßig verwendet kinit für Ihre Authentifizierung den Anmeldenamen des Benutzers, als der Sie aktuell angemeldet sind. Entspricht der Benutzer, unter dem Sie sich angemeldet haben, keinem der Principals in Ihrer Kerberos-Datenbank, wird eine Fehlermeldung ausgegeben. In diesem Fall brauchen Sie kinit nur den Namen Ihres Principal als Argument in der Befehlszeile anzugeben.

Sobald Sie die oben beschriebenen Schritte durchgeführt haben, sollte Ihr Kerberos-Server vollständig eingerichtet sein und laufen. Als Nächstes müssen Sie die Kerberos-Clients einrichten.