crontab sudo passwort prompt trotzt NOPASSWD Eintrag?

Bash, Shell, PHP, Python, Perl, CGI
eof__
Posts: 30
Joined: 2005-07-12 17:40

crontab sudo passwort prompt trotzt NOPASSWD Eintrag?

Post by eof__ » 2005-08-04 21:07

Hallo ;) ,

Ich habe hier ein verflixtes kleines Problem:

% crontab -l; which sudo; grep lh /etc/sudoers; cat sudo.sh
*/5 * * * * /home/lh/sudo.sh
/usr/bin/sudo/
lh ALL=(ALL) NOPASSWD: /home/lh/sudo.sh
#!/bin/bash
/usr/bin/sudo echo "bar"

bringt als mail:


From: lh (Cron Daemon)
To: lh
bar

Auf einem anderen Host bekomme ich den sudo output:



From: lh (Cron Daemon)
To: lh
Subject: Cron <lh@hz> /home/lh/sudo.sh

Password:

per cron geschickt. sudo liegt hier in /usr/local/bin.
Ein Updaten desTimestamps brachte bisher keinen Erfolg.

Hat jemand eine Idee woran das liegen koennte?
Es wird doch wohl nicht daran liegen, das es sich um eine
*BSD* Maschine handelt :p

Hintergrund: Ich moechte sudo ssh host aufrufen und kann das
von der maschine die funktioniert nicht machen, weil ich aus
den und den Gruenden keine Schluessel von der Maschine aus
hinterlegen darf.

Von der Console aus funktionierts, nur eben nicht via cron.

eof__
Posts: 30
Joined: 2005-07-12 17:40

Re: crontab sudo passwort prompt trotzt NOPASSWD Eintrag?

Post by eof__ » 2005-08-08 16:16

(Mal abgesehen davon dass mein PATH etwas strange gesetzt war)
Der user ist schon in der wheel gruppe und auch in der root
gruppe, nur aus einem mir nicht ganz klaren Grund befinden sich die
/var/cron/tabs/* unter FreeBSD4.8 (*hust*) in Eigentum von root.

Es gibt also zwei Moeglichkeiten:

1)Aendern des Besitzers von /var/cron/tabs/lh zu lh.

2)Starten des cronjobs als root.

Ich habe 1) genommen.

Hier das Script zum selber ausprobieren:
% less strangehostcheck.sh
#!/bin/bash
# check if uid 0 belongs to root...

c=$(/usr/local/bin/sudo ssh strangehost id |awk '{ print $1 }'|sed -e s'/uid=0//g'|tr '()' ' '|cut -b 2-5)

echo "found: $c"

#exit
if [ "$c" != 'root' ] ; then
echo something strange happens ;
else
echo 'c=' "$c" ' , thats ok'
fi
Jetzt fehlt nur das Problem, warum auf "strangehost" manchmal die id 0 dem operator gehoert...

:rolleyes: