Tobias Koenig tokoe@kde.org wrote:
On Sun, Jun 22, 2003 at 08:17:24PM +0200, Fabian Hänsel wrote:
Aber zu "was_langes" (auch so ein Konstrukt mit passwd drin) kommt das ganze gar nicht erst. Es gibt folgende Meldung:
su: must be run from a terminal
Yepp, da su die echo Funktion des Terminals auschalten muss, damit nicht jeder User mitlesen kann.
Auf normale Art und Weise kann man su also nicht von einem Skript aus verwenden. Kann man Python irgendwie dazu bringen, su ein pty bereitzustellen?
Bei su (und wohl auch passwd)
passwd scheint diese Option auch zu haben (obwohl nicht in der man page erwähnt (hint to Josef :)))
Das wäre sehr praktisch.
Schreib dir doch selbst ein kleines C-Programm, das das Passwort von stdin ließt und dann in die /etc/passwd schreibt. Dem Programm kannst du dann das sticky bit verpassen, so das du um das su herum kommst.
Was macht das sticky bit heutzutage bei Dateien? Suid root wollte ich aus Sicherheitsgründen nicht nehmen. Ich fand das mit dem su so elegant, weil so kein Code, den ich selber schreiben müsste, mit erhöhten Privilegien laufen würde. Auch würde so alles über PAM gehen und wenn das System mal auf LDAP migriert würde, dann würde das so weiterfunktionieren.
Ciao, Tobias
mfg, Fabian