Hallo,
wie kann ich aus einem Programm heraus feststellen, ob es im Enviroment eines bestimten Users gestartet wurde? Hintergrund: Der hiwi der gelegentlich mal ein Script starten soll, macht immer ein 'su <username>' statt 'su - <username>'. Im konkreten Fall ist das fatal, da einige spezielle env-Vars benoetigt werden, die dann u.U falsch sind. Wenn nicht richtig ge - su - d wurde, soll das Script die Arbeit verweigern.
Nun kann ich auf eine bestimmt ENV-Variable pruefen, aber geht das nicht allgemeiner?
Achso, das ganze laeuft in Perl.
Mit freundlichen Grüßen
Jens Puruckherr
Hi,
On Mon, 13 Dec 2004 17:00:30 +0100 Jens Puruckherr wrote:
wie kann ich aus einem Programm heraus feststellen, ob es im Enviroment eines bestimten Users gestartet wurde? Hintergrund: Der hiwi der gelegentlich mal ein Script starten soll, macht immer ein 'su <username>' statt 'su - <username>'. Im konkreten Fall ist das fatal, da einige spezielle env-Vars benoetigt werden, die dann u.U falsch sind. Wenn nicht richtig ge - su - d wurde, soll das Script die Arbeit verweigern.
Nun kann ich auf eine bestimmt ENV-Variable pruefen, aber geht das nicht allgemeiner?
Achso, das ganze laeuft in Perl.
Ich wüsste nicht, dass du als Skript herausfinden kannst, ob du in der richtigen Umgebung bist, wenn du nicht tatsächlich die Variablen einzeln überprüfen willst. Ich würde direkt bei su ansetzen und schauen, ob du vielleicht PAM dazu zwingen kannst, die Umgebung aufzusetzen oder den Zugang zu verweigern, wenn ohne "-" gestartet.
HTH Frank Benkstein.
PS: Warum ist mit "-" eigentlich nicht der Default? Gibt es einen legitimen Fall, wo man das braucht und sudo nicht taugt?
On Mon, 13 Dec 2004 19:37:21 +0100 Konrad Rosenbaum wrote:
On Monday 13 December 2004 19:15, Frank Benkstein wrote:
PS: Warum ist mit "-" eigentlich nicht der Default? Gibt es einen legitimen Fall, wo man das braucht und sudo nicht taugt?
ja: su -c "make install"
Warum geht hier sudo nicht?
Frank
On Monday 13 December 2004 20:11, Frank Benkstein wrote:
Warum geht hier sudo nicht?
Wozu soll ich auf meiner Workstation umständlich sudo konfigurieren, nur weil ich mal eben ein Programm installieren oder ein Script aufrufen will?
Und: wenn ich sudo auf make zulasse kann jeder den ich mal ein paar Minuten an meine Konsole lasse mein System übernehmen.
Konrad
Linux-User-Group Dresden lug-dd@schlittermann.de on Tue Dec 14 2004 at 08:15 +0100 wrote:
On Monday 13 December 2004 20:11, Frank Benkstein wrote:
Warum geht hier sudo nicht?
Owei, jetzt habe ich wieder einen Glaubenskrieg losgetreten. Naja, macht mal ... ;-)
Der Tipp von Marcus mit LOGNAME und USER ist recht brauchbar. Danke. Ich wollte nur nicht eine eigene ENV-Var setzen und diese dann pruefen. Was vom System kommt, ist schon OK.
Mit freundlichen Grüßen
Jens Puruckherr
Hallo, Konrad.
On Tue, 14 Dec 2004 08:15:23 +0100 Konrad Rosenbaum wrote:
On Monday 13 December 2004 20:11, Frank Benkstein wrote:
Warum geht hier sudo nicht?
Wozu soll ich auf meiner Workstation umständlich sudo konfigurieren, nur weil ich mal eben ein Programm installieren oder ein Script aufrufen will?
Die Konfiguration von sudo ist nicht umständlich IMHO. Zumindest nicht als "su -c" workalike.
Und: wenn ich sudo auf make zulasse kann jeder den ich mal ein paar Minuten an meine Konsole lasse mein System übernehmen.
Nur, wenn du sudo nicht nach einem Passwort fragen lässt, su aber schon. Mein Punkt ist, dass su ohne "-" gefährlich ist, da die Umgebung des aufrufenden Users erhalten bleibt. Ist also der Pfad des Aufrufers infiziert, ist es auch der von root. sudo ist zumindest in der Lage, einen sicheren Pfad zu fordern, leider scheint das nicht die Standard-Einstellung zu sein.
Dein Argument mit make zählt also insofern nicht, als dass jemand, der Zugang zu deinem Rechner hat dir ein gefälschtes make nach ~/bin installieren kann, das nur darauf wartet public-keys in die ~/.ssh/authorized_keys des Aufrufers zu schreiben oder ähnlichen Blödsinn.
Ich hoffe, du verstehst jetzt, wie meine anfängliche Frage gemeint war.
Viele Grüße Frank.
On 14.12.04 Konrad Rosenbaum (konrad@silmor.de) wrote:
Moin,
Und: wenn ich sudo auf make zulasse kann jeder den ich mal ein paar Minuten an meine Konsole lasse mein System übernehmen.
Bei passender Config muß er aber zusätzlich Dein Passwort kennen.
H.
lug-dd@mailman.schlittermann.de