Allgemeines Wissen über die Active Directory-Authentifizierung für Linux-Server?

31

Was ist 2014 die gängige Meinung zur Active Directory-Authentifizierung / -Integration für Linux-Server und moderne Windows Server-Betriebssysteme (auf CentOS / RHEL ausgerichtet)?

Im Laufe der Jahre seit meinen ersten Integrationsversuchen im Jahr 2004 scheinen sich die Best Practices in diesem Bereich verschoben zu haben. Ich bin mir nicht ganz sicher, welche Methode derzeit die größte Dynamik aufweist.

Auf dem Feld habe ich gesehen:

Winbind / Samba
Hetero-up LDAP
Manchmal LDAP + Kerberos
Microsoft Windows Services for Unix (SFU)
Microsoft Identity Management für Unix
NSLCD
SSSD
FreeIPA
Centrify
Powerbroker ( geb. Ebenso )

Winbind schien immer schrecklich und unzuverlässig. Die kommerziellen Lösungen wie Centrify und Also haben immer funktioniert, schienen aber unnötig, da diese Fähigkeit in das Betriebssystem eingebaut ist.

Bei den letzten Installationen, die ich durchgeführt habe, wurde die Microsoft Identity Management für Unix- Rollenfunktion einem Windows 2008 R2-Server und einer NSLCD auf Linux-Seite (für RHEL5) hinzugefügt. Dies funktionierte bis RHEL6, wo die mangelnde Wartung von NSLCD- und Speicherressourcen-Management-Problemen einen Wechsel zu SSSD erzwang. Red Hat schien auch den SSSD-Ansatz zu unterstützen, also war das für mich in Ordnung.

Ich arbeite mit einer neuen Installation, bei der es sich bei den Domänencontrollern um Windows 2008 R2 Core- Systeme handelt und ich nicht die Möglichkeit habe, die Identity Management for Unix-Rollenfunktion hinzuzufügen. Und mir wurde gesagt, dass dieses veraltete Feature in Windows Server 2012 R2 nicht mehr vorhanden ist .

Der Vorteil dieser Rolle ist das Vorhandensein dieser GUI und die einfache Verwaltung der Benutzerattribute in einem Schritt.

Aber...

Die Option Server für NIS-Tools (Network Information Service) der RSAT (Remote Server Administration Tools) ist veraltet. Verwenden Sie native LDAP-, Samba-Client-, Kerberos- oder Nicht-Microsoft-Optionen.

Das macht es wirklich schwierig, sich darauf zu verlassen, wenn die Aufwärtskompatibilität beeinträchtigt wird. Der Kunde möchte Winbind verwenden, aber alles, was ich von der Red Hat-Seite aus sehe, weist auf die Verwendung von SSSD hin.

Was ist der richtige Ansatz?
Wie gehen Sie in Ihrer Umgebung damit um?

ewwhite
quelle
1
Nach meinem Verständnis wird RHEL 7 genau zwei Möglichkeiten haben, dies zu tun: eine über FreeIPA mit einer domänenübergreifenden Vertrauensstellung zu AD und die andere über AD über Realmd und was auch immer es ein Frontend ist (ich habe keine Zeit dafür) schau gleich). In beiden Fällen haben Sie eine unterstützte Möglichkeit, das System direkt vom Kickstart an der Domäne hinzuzufügen.
Michael Hampton
1
Wir verwenden Centrify für unsere Solaris- und RHEL-Boxen. Die Installation ist ziemlich einfach und es gab ehrlich gesagt keine Probleme / Beschwerden, die damit zu tun hatten.
colealtdelete
2
Dieser Leitfaden wurde erst letzten Monat veröffentlicht. Als solches ist es sollte relevant / aktuelle Informationen enthalten.
Aaron Copley
1
@ AaronCopley Du kannst das gerne als Antwort posten. Ich hatte diese Anleitung noch nie gesehen.
Ewwhite

Antworten:

19

Im März 2014 veröffentlichte Red Hat eine Referenzarchitektur für die Integration von Red Hat Enterprise Server in Active Directory . (Dieses Material sollte auf jeden Fall aktuell und relevant sein.) Ich hasse es, dies als Antwort zu veröffentlichen, aber es ist wirklich zu viel Material, um es in das Antwortfeld zu übertragen.

Dieses Dokument (korrigiert) ist druckfrisch und konzentriert sich anscheinend auf die neuen Funktionen von Red Hat Enterprise Linux (RHEL) 7. Es wurde letzte Woche für den Summit veröffentlicht.

Sollte dieser Link veralten, lassen Sie es mich bitte wissen und ich werde die Antwort entsprechend aktualisieren.

Ich habe WinBind persönlich ziemlich zuverlässig für die Authentifizierung verwendet. Es kommt sehr selten vor, dass ein Benutzer mit Root-Rechten oder einem anderen lokalen Konto einspringt und winbindd abruft. Dies könnte wahrscheinlich durch eine ordnungsgemäße Überwachung behoben werden, wenn Sie den Aufwand dafür aufbringen möchten.

Es ist zu beachten, dass Centrify über zusätzliche Funktionen verfügt, die jedoch über ein separates Konfigurationsmanagement bereitgestellt werden können. (Marionette usw.)

Bearbeiten 16.06.14:

Red Hat Enterprise Linux 7 Windows-Integrationshandbuch

Aaron Copley
quelle
Der Link "Dieses Dokument" scheint ungültig zu sein.
Yolo Perdiem
Bist du sicher? Ich habe gerade meinen Verlauf / Cache geleert und es erneut versucht. Dann habe ich sogar in einem anderen Browser bestätigt. Hat noch jemand Probleme? Die Datei ist von dieser Seite unter "Road to RHEL 7" ( Interoperabilitäts-Update) verlinkt. Red Hat Enterprise Linux 7 Beta und Microsoft Windows BEARBEITEN: Ich sehe, dass jetzt eine "endgültige" Version veröffentlicht wurde, aber der alte Link funktioniert immer noch für mich? Aktualisiere die Antwort trotzdem.
Aaron Copley
Ich hatte keine Probleme. Ich las das Dokument und verglich es sogar mit dem, was ich getan hatte. Ein paar Unstimmigkeiten. Das größte Problem: Es gibt keine Erwähnung von Windows Server 2012 :( Also ich sehe immer noch eine Meinung dazu.
ewwhite
Leider weiß ich nicht genug über die Windows-Seite, um zu wissen, welche Auswirkungen dies auf die Jahre 2012 und 2008 hat .)
Aaron Copley
@AaronCopley Die Rolle bietet eine Verwaltungs-GUI zum Aktivieren von Unix-Attributen auf Benutzerbasis.
Ewwhite
10

re: "Die kommerziellen Lösungen wie Centrify und Also haben immer funktioniert, schienen aber unnötig, da diese Funktion in das Betriebssystem integriert ist."

Nun, ich denke, die meisten von uns haben jahrelang gehört, dass das XYZ-Betriebssystem endlich das AD-Integrationspuzzle knackt. IMHO ist das Problem, dass für den Betriebssystemhersteller die AD-Integration eine Checkbox-Funktion ist, dh, sie müssen etwas liefern, das irgendwie funktioniert, um diese Checkbox zu erhalten, und diese Checkbox funktioniert normalerweise nur auf ...

  1. ihre OS-Plattform und
  2. die aktuelle Version dieser Plattform und
  3. gegen eine neuere Version von Active Directory.

Die Realität ist, dass die meisten Umgebungen hinsichtlich des Betriebssystemherstellers und der Betriebssystemversion nicht monolithisch sind und ältere AD-Versionen aufweisen. Aus diesem Grund muss ein Anbieter wie Centrify über 450 UNIX / Linux / Mac / etc-Versionen unterstützen. gegen Windows 2000 bis Windows 2012 R2, nicht nur RHEL 7 wieder Windows 2012 R2.

Darüber hinaus müssen Sie berücksichtigen, wie Ihr AD bereitgestellt wird, wie auch die AD-Integrationsunterstützung des Betriebssystemherstellers für schreibgeschützte Domänencontroller (Read Only Domain Controllers, RODCs), Einwegvertrauensstellungen, Unterstützung für mehrere Gesamtstrukturen usw. Bestehender UID-Bereich (wie Sie möchten): Gibt es Migrationstools, mit denen Sie die UIDs in AD migrieren können? Unterstützt der AD-Support des Betriebssystemherstellers die Möglichkeit, mehrere UIDs in Situationen, in denen Ihr UID-Speicher nicht voll ist, einem einzelnen AD zuzuordnen? Und was ist mit ... nun, du kommst auf die Idee.

Dann ist da noch die Frage der Unterstützung ...

Der springende Punkt ist, dass die AD-Integration konzeptionell einfach zu sein scheint und mit dem neuesten Betriebssystem eines Anbieters möglicherweise "kostenlos" ist. Dies kann wahrscheinlich funktionieren, wenn Sie nur eine Version eines Betriebssystems von einem Anbieter haben und über eine Vanilla AD verfügen, die die neueste Version ist einen Premium-Support-Vertrag mit dem Betriebssystemhersteller, der sein Bestes versucht, um auftretende Probleme zu beheben. Andernfalls möchten Sie möglicherweise eine spezialisierte Drittanbieterlösung in Betracht ziehen.

Jake Summers
quelle
+1 dafür; Meine allgemeine Erfahrung ist "Sie sagen, es funktioniert, aber es ist nie sauber".
Maximus Minimus
+ Unendlich dazu. Centrify bietet sogar die kostenlose Express-Version an, wenn Sie lediglich grundlegende Authentifizierungsunterstützung benötigen.
Ryan Bolger
8

Die Option Server für NIS-Tools (Network Information Service) der RSAT (Remote Server Administration Tools) ist veraltet.

Das überrascht mich nicht - NIS ist ein Beweis dafür, dass Sun uns hasste und wollte, dass wir unglücklich sind.

Verwenden Sie native LDAP-, Samba-Client-, Kerberos- oder Nicht-Microsoft-Optionen.

Das ist ein guter Rat. Angesichts der Auswahlmöglichkeiten würde ich sagen "Natives LDAP verwenden (über SSL, bitte)" - es gibt dafür viele Optionen, die beiden, die ich am besten kenne, sind pam_ldap + nss_ldap (von PADL) oder das kombinierte nss-pam- ldapd (entstand als Gabel und wurde ständig weiterentwickelt und verbessert ).


Da Sie speziell nach RedHat fragen, sollten Sie beachten, dass RedHat Ihnen andere Alternativen mit SSSD bietet.
Wenn Ihre Umgebung ausschließlich aus RedHat besteht (oder nur über eine große Anzahl von RedHat-Systemen verfügt), lohnt sich ein Blick in die offiziell unterstützte "RedHat-Vorgehensweise" auf jeden Fall.

Da ich selbst noch keine Erfahrung mit RedHat / SSSD habe, gehe ich nur auf die Dokumentation ein, aber es scheint ziemlich robust und gut gestaltet zu sein.

voretaq7
quelle
6

Lassen Sie mich von den vorgeschlagenen Methoden eine Pro / Contra-Liste geben:

Richten Sie Kerberos / LDAP

Vorteile: Funktioniert hervorragend, wenn es richtig konfiguriert ist. In seltenen Fällen überstehen ausfallsichere Unterbrechungen Netzwerkstörungen. In AD sind keine Änderungen, keine Schemaänderung und kein Administratorzugriff auf AD erforderlich. Frei.

Nachteile: Relativ schwer zu konfigurieren. Mehrere Dateien müssen geändert werden. Funktioniert nicht, wenn der Authentifizierungsserver (Kerberos / LDAP) nicht verfügbar ist.

Winbind

Vorteile: Einfach zu konfigurieren. Grundlegende Sudo-Funktionalität. Frei.

Nachteile: Intensive Unterstützung. Nicht netzwerkfähig. Wenn ein Netzwerkproblem auftritt, werden Linux-Computer möglicherweise aus dem AD entfernt, sodass der Server erneut registriert werden muss. Dies ist eine Support-Aufgabe. Zugriff auf Administratorkonto von AD erforderlich. Könnte dazu führen, dass Schemaänderungen in AD vorgenommen werden.

Zentrifizieren / Ähnliches etc.

Vorteile: Relativ einfach zu konfigurieren.

Nachteile: Ändert die sudo-Funktionalität in proprietäre Funktionen, die schwerer zu unterstützen sind. Lizenzkosten pro Server. Benötigen Sie zusätzliche Fähigkeiten zu verwalten.

SSSD

Vorteile: Eine Konfigurationsdatei, einfach zu konfigurieren. Funktioniert mit allen gegenwärtigen und zukünftigen Authentifizierungsmethoden. Skalierbar, wächst mit dem System. Funktioniert im getrennten Modus. Netzwerk ausfallsicher. Änderungen am AD-Schema sind nicht erforderlich. AD-Administratoranmeldeinformationen sind nicht erforderlich. Kostenlos, unterstützt.

Nachteile: Keine Win-Dienste wie automatische DNS-Updates. CIFS-Freigaben müssen konfiguriert werden.

Zusammenfassung

In Bezug auf Vor- und Nachteile ist SSSD der klare Gewinner. Wenn es sich um ein neues System handelt, gibt es keinen Grund, etwas anderes als SSSD zu verwenden. Es ist ein Integrator, der mit allen vorhandenen Authentifizierungsmethoden funktioniert und mit dem System mitwachsen kann, da neue Methoden hinzugefügt werden können, wenn sie verfügbar sind. Es verwendet native Linux-Methoden und ist viel zuverlässiger und schneller. Wenn die Zwischenspeicherung aktiviert ist, funktionieren die Systeme auch in vollständig getrennten Systemen mit vollständigem Netzwerkausfall.

Winbind kann für vorhandene Systeme verwendet werden, wenn zu viel Arbeit zum Ändern erforderlich ist.

Centrify hatte Probleme mit der Integration, die teuer werden könnten. Die meisten Fehler wurden in der neuen Version behoben, aber es gibt immer noch einige, die Kopfschmerzen verursachen.

Ich habe mit all diesen Methoden gearbeitet und SSSD ist der klare Gewinner. Auch bei älteren Systemen ist der ROI für die Konvertierung von Winbind nach SSSD sehr hoch. Verwenden Sie immer SSSD, es sei denn, es gibt einen bestimmten Grund, warum Sie SSSD nicht verwenden.

R Unnikrishnan
quelle
SSSD unterstützt dynamische DNS-Updates: access.redhat.com/documentation/en-us/red_hat_enterprise_linux/…
Jonathon Reinhart,
5

Müssen dies kommentieren:

Es ist zu beachten, dass Centrify über zusätzliche Funktionen verfügt, die jedoch über ein separates Konfigurationsmanagement bereitgestellt werden können. (Marionette usw.)

Als jemand, der mit Centrify arbeitet, weiß er nicht, woher dieser Kommentar kommt. Schauen Sie sich diese und man kann sehen , dass es eine Schiffsladung von Funktionen ist , dass Sie nicht mit einem Config - mgmt Werkzeug ala Puppet bekommen. Beispiel: Unterstützung für die Zuordnung mehrerer UIDs zu einem einzelnen AD-Konto (Zonen), Unterstützung für vollständige Active Directory-Domänenvertrauensstellungen (die von der Red Hat-Lösung auf Seite 3 dokumentiert werden und die nicht unterstützt werden) usw.

Aber zurück zu diesem Red Hat-Leitfaden. Es ist großartig, dass Red Hat dies veröffentlicht. Die Optionen sind gut. Beachten Sie, dass dem Kunden 10 Optionen für die grundlegende AD-Integration zur Verfügung stehen. Bei den meisten Optionen handelt es sich um Variationen von Winbind. Auf Seite 15 werden die Vor- und Nachteile der einzelnen Optionen aufgeführt. Für jede Option sind eine Reihe von manuellen Schritten erforderlich (mit den entsprechenden Nachteilen / mangelnder Funktionalität wie oben beschrieben). Der Vorteil von Centrify Express besteht darin, dass laut den anderen Kommentaren oben:

  1. Es ist einfach zu installieren ohne alle manuellen Schritte und ...
  2. ist frei und ...
  3. ist nicht auf Red Hat V7 beschränkt, was wichtig ist, da die Frage nicht nur eine Variante, sondern Linux betraf - Centrify unterstützt über 300 * nix- und ...
  4. unterstützt alle Windows AD - Varianten, nicht nur Windows - 2008. Sie veröffentlicht einen Vergleich von Centrify vs. Winbind hier , aber es ist nicht Open Source.

Am Ende läuft es darauf hinaus, ob Sie es selbst rollen oder sich für eine kommerzielle Lösung entscheiden möchten. Wirklich eine Frage, wo Sie und wie Sie Ihre Zeit verbringen.

user217770
quelle