GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie generiert man benutzerdefinierte Sudoers-Dateien in Puppet, abhängig von der Umgebung, in der sie bereitgestellt werden?

Lösung 1:

Welche Sudo-Version? Unterstützt Ihre Version von sudo die Verwendung von #includedir Option, Dinge in ein Fragmentverzeichnis aufzuteilen /etc/sudoers.d/ ?

Wenn ja, dann schlage ich vor, dass Sie diese Funktionalität verwenden, um Ihre Konfiguration zu erstellen.

Lassen Sie Ihre Hauptkonfigurationsdatei an /etc/sudoers liefern Dazu gehören alle Einstellungen, die für jeden Host gelten, den Sie steuern. Lassen Sie dann die rollenspezifische Konfiguration in einer Datei in /etc/sudoers.d/ ablegen .

Jeder Klassen- oder Puppet-Abschnitt ist dafür verantwortlich, den kleinen Teil der sudo-Konfiguration zu aktualisieren, der direkt mit dieser Klasse zusammenhängt.

Lösung 2:

Sie können sich virtuelle Ressourcen ansehen und feststellen:https://puppet.com/docs/puppet/latest/lang_virtual.html.

Dies bewirkt genau das:Auf manchen Systemen „erkennt“ man die Ressource und auf manchen nicht.

Lösung 3:

Sie können Puppet-Vorlagen verwenden ... Site-spezifische Konfiguration mit einem kleinen Ruby-Snippet / einer Variablen für den Benutzer, den Sie benötigen. (Ich werde später ein Beispiel posten)

Der traditionelle Weg, dies zu handhaben, ist die Verwendung von Gruppendefinitionen anstelle von benannten Benutzern in Ihrem /etc/sudoers . Es ist möglicherweise weniger mühsam zu verwalten.


Linux
  1. Fehler in Sudoers-Datei? So können Sie es beheben.

  2. Wie wird /etc/motd aktualisiert?

  3. CentOS / RHEL:So stellen Sie eine gelöschte /etc/passwd-Datei wieder her

  4. „sudo:/etc/sudoers ist weltweit beschreibbar“ – So korrigieren Sie die Berechtigungen der sudoers-Datei

  5. Befehl grpck – Entfernen Sie beschädigte oder doppelte Einträge in den Dateien /etc/group und /etc/gshadow.

So verwenden Sie Sudo und die Sudoers-Datei

Der richtige Weg zum Bearbeiten von /etc/passwd- und /etc/group-Dateien unter Linux

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

/etc/sudoers - Beleidigungen - Wie füge ich eine Liste mit Beleidigungen hinzu?

Wie erstelle ich in meiner Datei /etc/hosts/ unter Linux/OSX eine Wildcard-Subdomain?

So richten Sie /etc/issues ein, um die IP-Adresse für eth0 anzuzeigen