kanotix.com

Scripte - su passworteingabe im Skript

garfield168 - 06.09.2005, 11:03 Uhr
Titel: su passworteingabe im Skript
Hallo,
ich habe mal wieder (bzw. eigentlich immer noch) ein Problem.
Hier in der Firma soll ich ein Linux Skript neu anpassen. Im Skript wird mit su zu einem anderen User gewechselt (dafür ist Passworteingabe nötig, da ich kein root bin).
Das Problem ist nun, dass das ganze automatisiert ablaufen soll (als Nightlybuild). Ich kann die Rechte nicht verändern, dürfte aber z.B. das Passwort im Klartext ins Skript schreiben. Ich weiss nur nicht wie.
In einem vorherigen Thread hatte ich es auch schonmal erwähnt aber es kam keine echte Lösung bei raus (nur Hinweis, dass es vielleicht mit sudo gehen könnte aber ich habe es mit sudo nicht geschafft).

Bitte Hilfe!
Boregard - 06.09.2005, 11:32 Uhr
Titel:
Müsste doch gehen mit:
Code:
su username <<EOF
passwort
EOF

Im script natürlich...
Boregard - 06.09.2005, 11:55 Uhr
Titel:
Ich habs mal getestet, und auf die schnelle nur mit 2 Scripten hinbekommen.
Ein Script, das als anderer User ausgeführt werden soll, und ein script, das den Benutzerwechsel macht.
Hier das Script testfunc.sh
Code:
#!/bin/sh

echo
echo -n "Ich bin "
whoami

Und hier das Ausführscript testsu.sh:
Code:
#!/bin/sh

su -c /home/boregard/testfunc.sh<<EOF
myrootpwd
EOF

echo -n "Und ich bin "
whoami

Beide ausführbar gemacht und dann ausgeführt:
Code:
testsu.sh
Password:
Ich bin root
Und ich bin boregard

Aber es steht halt das passwort im Klartext im script!
garfield168 - 06.09.2005, 12:06 Uhr
Titel:
Vielen vielen Dank, sehr gut, mit einem Skript wäre es zwar noch besser aber egal. Wie gesagt das Passwort darf im Klartext da stehen. Es kennt sowieso jeder. Man kann sich halt nur nicht als root einloggen.
Nighthawk - 24.07.2006, 18:24 Uhr
Titel:
hallo
was mache ich falsch bei mir kommt immer
su: Muss von einem Terminal gestartet werden
Und ich bin christian
Boregard - 27.07.2006, 09:14 Uhr
Titel:
Wie hast Du das denn gestarted???
Nighthawk - 27.07.2006, 13:49 Uhr
Titel:
mit testsu.sh in einer Konsole
slh - 27.07.2006, 15:38 Uhr
Titel:
Wäre sudo für den Zweck nicht die bessere Lösung?
Boregard - 31.07.2006, 07:14 Uhr
Titel:
Was passiert, wenn Du 'su' in der selben Konsole eingibst??
Cool J. - 31.07.2006, 15:40 Uhr
Titel:
ist das script ausführbar gemacht???
gsb - 16.08.2006, 09:43 Uhr
Titel:
Ich habe für das Mounten eines Lanservers (mount geht nur mit root) folgende Lösung, unter Mithilfe dieses Forums, gefunden.
Ein Script, das dem User gehört, erfragt Passwort und Benutzername (eingabe), einZweites, welches root gehört, mountet (mount_lan). Dieses zweite Script habe ich ist in die Datei /etc/sudoers eingetragen.

#!/bin/bash
#
# eingabe - Benutzernamen und Passwort erfragen

BEN=$(kdialog --caption "Anmeldung" --inputbox "Bitte Benutzernamen eingeben")

PWD=$(kdialog --caption "Passwort" --passwd "Bitte Passwort eingeben")

sudo /home/user/mount_lan $BEN $PWD


#!/bin/bash
#
# mount_lan Lanserver mounten

mount -t cifs -o username=$1,password=$2 //lanserver_name/Benutzer$ /home/user/Lan_Server

Eintrag in /etc/sudoers – kann nur root tun

%users ALL=NOPASSWD:/home/userverzeichnis/mount_lan

Mit diesem Wissen solltest du imstande sein, dein Script anzupassen.

MfG
Josef
gsb - 19.10.2008, 21:24 Uhr
Titel:
#!/bin/bash
#
# eingabe - Benutzernamen und Passwort erfragen

BEN=$(kdialog --caption "Anmeldung" --inputbox "Bitte Benutzernamen eingeben")

PWD=$(kdialog --caption "Passwort" --passwd "Bitte Passwort eingeben")

sudo /home/user/mount_lan $BEN $PWD

Wenn nun der Benutzer einen Fehler bei der Eingabe macht - wie kann dieses Script automatisch wiederholt werden?

josef
Alle Zeiten sind GMT + 1 Stunde
PNphpBB2 © 2003-2007