Fehlerhafte checkproc-Ausgabe in /etc/init.d/sshd?
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Mahlzeit, ich habe auf meiner 9.3 versucht einen zweiten SSH-Server aufzusetzen. Dabei bin ich darauf gestoßen dass die "rcsshd status"-Abfrage nicht so funktioniert, wie ich mir das vorstelle. ;-) Von vorne: In /etc/init.d/sshd stehen Angaben zu einem pid-File für sshd: SSHD_PIDFILE=/var/run/sshd.init.pid Später mal folgt der Aufruf von ===================================================== status) echo -n "Checking for service sshd " ## Check status with checkproc(8), if process is running ## checkproc will return with exit status 0. [...] checkproc -p $SSHD_PIDFILE /usr/sbin/sshd rc_status -v ===================================================== So wie ich das verstanden habe sollte also ein zweiter Aufruf von sshd mit einem anderen pid-File nichts an der Ausgabe von "rcsshd status" ändern, oder? ABER:
SUSE 9.3 :~ # rcsshd stop Shutting down SSH daemon done SUSE 9.3 :~ # ps aux|grep sshd root 20969 0.0 0.0 1892 712 pts/26 R+ 17:39 0:00 grep sshd SUSE 9.3 :~ # ll /var/run/sshd* /bin/ls: /var/run/sshd*: Datei oder Verzeichnis nicht gefunden SUSE 9.3 :~ # rcsshd status Checking for service sshd unused
Alles klar, kein sshd läuft.
SUSE 9.3 :~ # rcsshd start Starting SSH daemon done SUSE 9.3 :~ # ps aux|grep sshd root 21078 7.0 0.2 4696 1872 ? Ss 17:39 0:00 /usr/sbin/sshd -o PidFile=/var/run/sshd.init.pid root 21087 0.0 0.0 1892 712 pts/26 R+ 17:39 0:00 grep sshd SUSE 9.3 :~ # ll /var/run/sshd* -rw-r--r-- 1 root root 6 2007-04-29 17:39 /var/run/sshd.init.pid
Soweit alles klar, der sshd läuft, das pid-FILE existiert.
SUSE 9.3 :~ # /usr/sbin/sshd -p 44444 -o PidFile=/var/run/sshd44444.init.pid SUSE 9.3 :~ # ll /var/run/sshd* -rw-r--r-- 1 root root 6 2007-04-29 17:42 /var/run/sshd44444.init.pid -rw-r--r-- 1 root root 6 2007-04-29 17:39 /var/run/sshd.init.pid SUSE 9.3 :~ # ps aux|grep sshd root 21078 0.0 0.2 4696 1872 ? Ss 17:39 0:00 /usr/sbin/sshd -o PidFile=/var/run/sshd.init.pid root 21672 1.4 0.2 4696 1876 ? Ss 17:42 0:00 /usr/sbin/sshd -p 44444 -o PidFile=/var/run/sshd44444.init.pid root 21714 0.0 0.0 1892 712 pts/26 R+ 17:42 0:00 grep sshd SUSE 9.3 :~ # rcsshd status Checking for service sshd 21078 running
OK, beide sshd laufen.
SUSE 9.3 :~ # rcsshd stop Shutting down SSH daemon done SUSE 9.3 :~ # ll /var/run/sshd* -rw-r--r-- 1 root root 6 2007-04-29 17:42 /var/run/sshd44444.init.pid SUSE 9.3 :~ # ps aux|grep sshd root 21672 0.1 0.2 4696 1876 ? Ss 17:42 0:00 /usr/sbin/sshd -p 44444 -o PidFile=/var/run/sshd44444.init.pid root 22043 0.0 0.0 1892 724 pts/26 S+ 17:44 0:00 grep sshd SUSE 9.3 :~ # rcsshd status running
Und hier geht es schief. Obwohl der reguläre SSHD gestoppt wurde, sein pid-File gelöscht ist, und er auch nicht mehr läuft, meint er noch zu laufen. ;-( Anscheinend macht der Aufruf von checkproc -p $SSHD_PIDFILE /usr/sbin/sshd einen Fehler, dem ist es wohl egal welches pid-File. Hab ich nen Dreher, oder nen Denkfehler, oder soll das gar nicht so funktionieren wie ich mich das denke? Ich könnte als Ausweg ja einfach /usr/sbin/sshd nach /usr/sbin/sshd2 hardlinken, die Verweise darauf in /etc/init.d/sshd2 ändern, dann wäre das geklärt. Nur lässt mich dann der sshd2 nicht ins System mit einem PAM ERROR. Dazu aber eine andere Mail. Grüße, OJ - -- | Tja, das Schicksal nahm grausam Rache: Die Kiddies von | heute denken bei Plato nur noch an seine Sohlen. Plato... das war doch der Hund von Mickey Mouse, oder? (H.Reddmann und J.Stoerzer in d.t.jokes) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFGNL8hMAex/QZx/TMRAiZAAJ96Q6DKPaN56aeyabdDOEpenC+seACfWCSG CfO9ru59UgZ5oVsCvnlsy/A= =CJBf -----END PGP SIGNATURE----- -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Sonntag, 29. April 2007 17:52 schrieb Johannes Kastl:
(...). Hab ich nen Dreher, oder nen Denkfehler, oder soll das gar nicht so funktionieren wie ich mich das denke? (...).
Halb und halb. :-D https://bugzilla.novell.com/show_bug.cgi?id=230806 HTH Jan -- Thank God, we're not getting all the government we're paying for. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 29.04.2007 18:39 schrieb Jan Ritzerfeld:
Halb und halb. :-D https://bugzilla.novell.com/show_bug.cgi?id=230806
Aha, in der 10.2 ist das gefixt. Und was mach ich dann mit meiner 9.3? Nicht dass ich die noch lange verwenden würde, aber interessieren würde es mich schon. Oder ich fange jetzt an dem PAM-Fehler hinterher zu suchen...;-( OJ - -- Wer seinen Willen durchsetzen will, muß leise sprechen. (Jean Giraudoux) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) iD8DBQFGNNH2MAex/QZx/TMRAp2tAJ9sMroaL9L3hybHvMOLUbaUlAlqEgCeM29+ TE+MxqnfgBGrjEKGiD9GEpk= =9ORa -----END PGP SIGNATURE----- -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Sonntag, 29. April 2007 19:12 schrieb Johannes Kastl:
Am 29.04.2007 18:39 schrieb Jan Ritzerfeld:
Halb und halb. :-D https://bugzilla.novell.com/show_bug.cgi?id=230806
Aha, in der 10.2 ist das gefixt.
Nö. :-D Also zumindest in "meiner" 10.2 nicht.
Und was mach ich dann mit meiner 9.3?
Naja, ich würd mal sagen sowas in der Art wie der Reporter des Bugs vorgeschlagen hat: Halt im status-Teil von rcsshd die Option -k zum Aufruf von checkproc hinzufügen und noch diese Abfrage auf den Fehlercode 7 einfügen. :-/
Nicht dass ich die noch lange verwenden würde, aber interessieren würde es mich schon. (...).
Wenn du es noch länger verwenden wolltest, hättest du auch die "Freude" immer darauf aufzupassen, daß Updates weder deine Version von rcsshd überschreiben noch eine Sicherheitslücke in deiner Version ungefixt bleibt. :) Gruß Jan -- I already came, so stop jerking me off. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 29.04.2007 19:35 schrieb Jan Ritzerfeld:
Nö. :-D Also zumindest in "meiner" 10.2 nicht.
Stimmt.
Naja, ich würd mal sagen sowas in der Art wie der Reporter des Bugs vorgeschlagen hat: Halt im status-Teil von rcsshd die Option -k zum Aufruf von checkproc hinzufügen und noch diese Abfrage auf den Fehlercode 7 einfügen. :-/
Naja, Handarbeit. ;-)
Wenn du es noch länger verwenden wolltest, hättest du auch die "Freude" immer darauf aufzupassen, daß Updates weder deine Version von rcsshd überschreiben noch eine Sicherheitslücke in deiner Version ungefixt bleibt. :)
Jupp. OJ - -- Well I guess we have all become de-facto smoke testers anyway. (Adrian in mozilla.support.seamonkey) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) iD8DBQFGNNmnMAex/QZx/TMRAjg+AJ4mh2pIYAxgre0dJJDG0q+KfttNjACeKfVb DKDB+jdYiasahG/KKrQNLfM= =DgHN -----END PGP SIGNATURE----- -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (2)
-
Jan Ritzerfeld
-
Johannes Kastl