12. November 200322 j 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 ???
12. November 200322 j 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
12. November 200322 j 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.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.