Verwaltung der Serveranmeldeinformationen für Linux und Windows

12

Wir sind ein relativ kleiner Laden (in Bezug auf die Anzahl der Sysadmins) mit einer Mischung aus RHEL-, Solaris-, Windows 2003- und Windows 2008-Servern. Insgesamt etwa 200 Server.

Für unsere Administratorkonten ( rootunter Linux und admnistratorWindows) gibt es ein Kennwortschema, das vom Speicherort des Rechenzentrums und einigen anderen dokumentierten Eigenschaften des Servers abhängt.

Unter Linux ist unsere derzeitige Praxis ein gemeinsames nicht-privilegiertes Konto zu schaffen , wo wir konnten suzu root. Auf Windows-basierten Systemen erstellen wir ein zusätzliches Konto mit Administratorrechten. Beide Konten haben dasselbe Kennwort.

Dies hat sich als sehr ineffizient erwiesen. Wenn jemand unser Geschäft verlässt, müssen wir:

  1. Ändern Sie das Kennwortschema für die Administratorkonten
  2. Generieren Sie für jeden Server ein neues Administratorkennwort
  3. Erstellen Sie ein neues Passwort für Nicht-Administratorkonten
  4. Berühren Sie jeden Server und ändern Sie die Passwörter

Ich wollte wissen, ob jemand in einer ähnlichen Umgebung eine vernünftigere Art der Verwaltung dieser Anmeldeinformationen vorschlagen kann. Einige relevante Informationen:

  • Obwohl die meisten unserer Server Teil unserer AD-Domain sind, sind es nicht alle.
  • Wir verwalten alle unsere Linux-Server mit Puppet (die Schlüsselauthentifizierung war eine Option, die ich mir überlegt habe, aber sie wird nur das dritte Problem von oben ansprechen).
  • Wir stellen Linux-Server mit Cobbler bereit.
  • Ungefähr 10% unserer Hardware ist für VMWare bestimmt. In diesen Fällen verwenden wir VMWare-Vorlagen für Server-Builds.

Alle Ideen oder Vorschläge werden sehr geschätzt. Dieses Problem besteht schon seit einiger Zeit und ich möchte es endlich lösen.

Belmin Fernandez
quelle

Antworten:

10

Ein paar Vorschläge, die ich hätte, sind:

  • Bei mit Windows AD verbundenen Servern können die lokalen Administratorkennwörter über Gruppenrichtlinien festgelegt werden, indem entweder Gruppenrichtlinieneinstellungen (Group Policy Preferences, GPP) oder ein Computer-Startskript verwendet werden. Siehe http://social.technet.microsoft.com/Forums/en-US/winserverGP/thread/b1e94909-bb0b-4e10-83a0-cd7812dfe073/

  • Beschränken Sie die Erstellung lokaler Konten auf Windows-Servern, sofern dies nicht erforderlich ist. Verwenden Sie nach Möglichkeit AD-Konten.

  • Verwenden Sie LDAP für Linux-Computer, um Administratorkonten bei AD zu authentifizieren. Dies vereinfacht die Kontoverwaltung etwas. Und wenn ein Administrator nur an einem Ort deaktiviert und keinen Zugriff mehr hat, können Sie die Linux-Seite nach Belieben aufräumen.

  • Verwenden Sie die Datei / etc / sudoers für ein bestimmtes Administratorkonto unter Linux, dann benötigen die Administratoren das root-Passwort nicht. Dies kann in Ihrem Fall hilfreich sein, da sie dann selten das Root-Passwort benötigen, um es zu sperren. Aktualisiert

  • Bewahren Sie Root- und lokale Administratorkennwörter in einem Kennwortschutz auf, der nicht allgemein bekannt ist. Einige Kennwort-Safes verfügen über Delegierung und Protokollierung, sodass Sie möglicherweise nicht einmal ein Kennwort zurücksetzen müssen, wenn die Person nie Zugriff darauf hatte.

  • Automatisieren Sie das Zurücksetzen des Passworts für Root- und Administratorkonten. Hierzu können sowohl Linux als auch Windows mit Skripten versehen werden, wodurch Sie möglicherweise Zeit sparen und sich nicht so stark belasten müssen.

Ich hoffe, das hilft.

Bernie White
quelle
Mein Problem mit LDAP ist die einzige Fehlerquelle. Ich möchte lieber Konten über Puppet verwalten. Und schätzen Sie Ihre Vorschläge. Danke @Bernie!
Belmin Fernandez
1
@Beaming Wenn Sie Active Directory verwenden, können Sie mehr als einen Domänencontroller haben (kein einzelner Fehlerpunkt) und dann auf den DNS-Domänennamen verweisen, z. B. domain.com, um alle Domänencontroller für eine LDAP-Abfrage abzurufen. Sie können auch einen A-DNS-Eintrag einrichten, der auf bestimmte Domänencontroller verweist, wenn nur zwei oder drei auf LDAP antworten sollen, z. B. ldap.domain.com. Ich habe Puppet nicht verwendet, aber der Schlüssel zur einfachen Benutzerverwaltung ist, wo immer möglich, nicht eine einzige Quelle. Es ist wahrscheinlich, dass Puppet trotzdem eine Verbindung zu einem Back-End-LDAP-Server herstellen kann, wenn Sie dies vorziehen.
Bernie White
Einverstanden, dass AD der Weg ist, hierher zu gehen. Bei mehr als 2 Domänencontrollern ist die Wahrscheinlichkeit, dass AD vollständig ausfällt, gering. Wenn dies jedoch der Fall ist, treten wahrscheinlich weitaus größere Probleme auf. Verwalten Sie lokale Root-Konten auf Ihren Linux-Servern, um sie als letzte Möglichkeit zu verwenden, wenn alles andere fehlschlägt.
EEAA
2
@ Bernie - in Bezug auf Ihren 3. Punkt. Wenn Sie sudo verwenden, muss niemand das root-Passwort kennen. Durch die Angabe von "NOPASSWD" in einem Sudo-Eintrag muss der Benutzer kein eigenes Kennwort eingeben. Dies hat nichts mit dem root-Passwort zu tun.
EEAA
@ErikA +1 Sehr wahr. Der Verweis auf NOPASSWD wurde entfernt, da er nicht zur Beantwortung der Frage beiträgt. /
Bernie White
2

Sie können testen, ob FreeIPA für Sie funktioniert.

Sie können den Benutzerzugriff auf Hosts von einem zentralen Ort aus verwalten. Wie von anderen vorgeschlagen, können Sie feststellen, ob sudo für den Root-Zugriff für Sie geeignet ist. Freeipa unterstützt Sudoer in LDAP, so dass Sie es nicht auf jedem Server oder über eine Marionette usw. warten müssen.

Freeipa unterstützt Linux-, Solaris- und Windows-Clients. Möglicherweise verlieren Sie bestimmte AD-Funktionen und ich bin nicht sicher, welche anderen Einschränkungen ein Windows-Client haben wird.

Es verfügt über Replikationsfunktionen, sodass Sie SPOF vermeiden können. Das Backend ist LDAP, sodass Sie möglicherweise viele Tools, die Benutzer für LDAP verwenden, wie z. B. Sicherungsskripte, wiederverwenden können.

Es unterstützt die hostbasierte Zugriffskontrolle, sodass Sie sagen können, dass sich Benutzer X nur bei Y-Servern anmelden kann.

Es bietet auch AD-Synchronisation . Ich bin keine Windows-Person, daher habe ich keine Ahnung, was das überhaupt bedeutet.

Nicht jetzt
quelle
1

Verwenden Sie nicht das Standardadministratorkonto. Erstellen Sie auf der Windows-Seite ein Benutzerkonto und ein Administratorkonto für jeden Benutzer, der Administratorzugriff benötigt. Sie können jedes Tool zum Synchronisieren mit UNIX verwenden.

Wenn jemand geht, müssen Sie nur seine Benutzer- und Administratorkonten löschen.

Um das Standardadministratorkonto zu sichern, geben Sie ihm ein sehr langes und komplexes Kennwort und stellen Sie dann sicher, dass nur eine Person die Hälfte hat. Wenn sie das gesamte Konto nutzen müssen, müssen sie jemanden suchen, der die andere Hälfte hat.

Das ist ungefähr so ​​sicher, wie ich mir vorstellen kann.

Mauvedeität
quelle