Kurz gesagt: Große alte Firma, viele UNIX / Linux-Server.
Ich übernahm die Verantwortung für eine Reihe von Skripten, die vor einigen Jahren noch verfügbar waren. Eines davon war ein Skript, das alle zehn Monate ausgeführt wurde, um das root-Passwort global auf allen unseren Servern zu aktualisieren.
Das Skript ist eine Mischung aus Shell-Skript und Expect und funktioniert mit der SSH-Vertrauensstellung, die zwischen all unseren Servern und einem zentralen Befehls- und Steuerungsserver eingerichtet wurde.
Das Problem ist, dass das Drehbuch ein riesiges Durcheinander ist. Die Expect-Befehle versuchen, jede mögliche Version von "passwd" zu berücksichtigen, die auf einer UNIX / Linux-Box vorhanden ist - und sie variieren erheblich.
Da wir einen Großteil unserer Infrastruktur erweitern und aufrüsten, wird das Skript wirklich unhandlich.
Meine Frage ist: Gibt es einen besseren Weg, dies zu tun? Angenommen, es gibt bereits eine etablierte SSH-Vertrauensstellung. Wie lässt sich das Root-Passwort auf über 3000 Servern gleichzeitig am besten ändern?
sudo
und Eliminieren von root-Passwörtern ist keine Option, oder?