PAM verbietet wwwrun den zugriff auf atd

Status
Für weitere Antworten geschlossen.

Stefan Cermak

New Member
Erledigt (Bug ?)- PAM verbietet wwwrun den zugriff auf atd

Hallo,

Ich ich stelle mir gerade meinen Heimserver
zusammen(Meine Heizung hat nun schon ein Webfrontend), nun ist meine TV-Karte dran.

Ich will mir über ein Webfrontend einen Videorecorder programmieren. Die prinzipielle Idee dabei ist über eine einfache Webseite werden die TV-Daten abgefragt(Sender, Startzeit, Dauer, Filename). Diese werden anschießend von einem Perl Skript abgearbeitet, und ein at job dafür angelegt(Schrit 2 währe dann ein Frontend um diese jobs wieder löschen zu können).

Daher wwwrun muß Zugriffsrechte auf at, atq, atrm bekommen.(Ich werde dafür die lib Schedule::at verwenden).

Nun hat OpenSuse 10.2 aber hier sehr restriktive Zugriffsrechte per default. Nur root darf das machen, geregelt wird das ganze über PAM. Ich habe versucht PAM umzukonfigurieren, aber dafür scheine ich zu Dumm zu sein. wwwrun sowie mein standart user gehören zur Gruppe at. Die Zeile
"auth required pam_wheel.so group=at use_uid" habe ich im file /etc/pam.d/atd hinzugefügt.

e9426086@neutron:/srv/www/cgi-bin> at 12:00
PAM authentication failure: System error
You do not have permission to use at.
#
# The PAM configuration file for the at daemon
#
#
auth sufficient pam_rootok.so
auth include common-auth
auth required pam_wheel.so group=at use_uid
account include common-account
password include common-password
session required pam_loginuid.so
session include common-session
Alternativ habe ich versucht den Programmier teil in ein eigenes Perl Skript zu verpflanzen, und dieses mit dem Besitzer root und dem Flag UserID zu starten.

Hier weint Perl jedoch, es kann die UID nicht ändern.
#! /usr/bin/perl

use Schedule::At;

$attime= shift;
$duration= shift;
$station= shift;
$titel=shift;
$command ="mencoder \"dvb://$station\" -oac copy -ovc copy -endpos $duration -o $titel.avi";

print $command."\n";

Schedule::At::add(TIME => $attime, COMMAND => $command , TAG =>"VCR $titel");
e9426086@neutron:/srv/www/cgi-bin> ./program.pl 200612241200 60 ORF1 test
Can't do seteuid!
Hat hier irgendjemand eine Ahnung wie ich einen der beiden Wege zu Ende gehen kann?


Has sich erübrigt,

Habe gerade von Opensuse 10.2rc auf OpenSuse 10.2 gewechselt, und plötzlich geht es
 
Status
Für weitere Antworten geschlossen.
Oben