geist_der_foren Geschrieben 12. November 2003 Teilen Geschrieben 12. November 2003 Hi@all, ich würde gerne ein kleines Skript schreiben, dass mir die user ausgibt, die einen und die keinen autorizesdkeys2 haben. Ich kenn mich da leider nicht aus, ich hab es jetzt einfach mal so Probiert: find /home/*/.ssh -name "authorized_keys2" Ausgabe: /home/s1maul/.ssh/authorized_keys2 /home/s8elud/.ssh/authorized_keys2 /home/s8eneub/.ssh/authorized_keys2 /home/s8epol/.ssh/authorized_keys2 /home/s8ewal/.ssh/authorized_keys2 /home/saa1001/.ssh/authorized_keys2 jetzt habe ich die User die einen schlüssel haben, wie kann ich es bewärkstelligen mir die jenigen anzeigen zulassen die keinen schlüssel haben ? Und wie kann ich mir nur die User anzeigen lassen ohne den Ganzen Pfad ??? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Terran Marine Geschrieben 12. November 2003 Teilen Geschrieben 12. November 2003 Original geschrieben von geist_der_foren /code] jetzt habe ich die User die einen schlüssel haben, wie kann ich es bewärkstelligen mir die jenigen anzeigen zulassen die keinen schlüssel haben ? Und wie kann ich mir nur die User anzeigen lassen ohne den Ganzen Pfad ??? Nabend, ich würde das so machen : --- for a in `ls /home` ; do if test ! -e /home/$a/.ssh/authorized_keys2; then echo User $a hat keinen Key; fi ; done --- Als root ausführen, wobei das größere Problem die mangelnde Zugriffsberechtigung auf diesen Ordner sein dürfte. Bei mir darf nur der User selbst reinsehen (was auch Sinn macht). Gruß Terran Marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 12. November 2003 Teilen Geschrieben 12. November 2003 Hier noch eine klitzekleine Änderung...: for a in `ls /home` ; do if test ! -e /home/$a/.ssh/authorized_keys; then echo "User '$(echo $a | awk -F"/" '{print $1}')' hat keinen Key."; fi; done Naja ganz richtig ist es zwar nicht, weil nicht jedes Verzeichnis in /home muss nicht einem User gehören, wenn ich da ein Verzeichnis erstelle, dann steht da: User Backup/ hat keinen Key. Obwohl Backup nur ein Verzeichnis in /home ist - jedoch es den User im System garnicht gibt. Du solltest dir - wenn dir das noch zu wenig ist - mal die /etc/passwd ansehen Eventl. hilft dir sowas dann weiter: users="$(cat /etc/passwd | awk -F: '{ print $1 }')"; for a in $users ; do if test ! -e /home/$a/.ssh/authorized_keys; then echo "User '$(echo $a | awk -F"/" '{print $1}')' hat keinen Key."; fi; done Aber hier gibts auch wieder ein Problem und zwar dass nicht jeder User, auch das gleichnamige Verzeichnis in /home haben muss - z.B. wenn es zwar einen User Backup gibt im aber das Verzeichnis /home/bak zugewiesen wurde. Du musst halt vorher mehrere Abprüfungen machen, bevor du die Zeile ab "for a in...." nimmst. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.