Hallo an alle!
Ich möchte ein PHP-FrontEnd für GPG schreiben und habe ein Problem. GPG sollte von dem Nutzer aufgerufen werden der den "Schlüßel" besitzt, aber Apache ruft GPG als "nobody" auf. Ich dachte daß, wenn ich Sudo benutze, soll das Problem gelöst werden, dann habe ich in meine sudoers:
nobody ALL=(lucabert) /opt/gnupg/bin/gpg
Dann habe ich folgendes PHP-Skript:
$fp = popen("/usr/bin/sudo -u lucabert /opt/gnupg/bin/gpg --homedir /usr/lucabert/.gnupg/ --list-keys", "r"); if($fp != null) { while(!feof($fp)) { $buffer = fgets($fp, 4096); echo $buffer; } pclose($fp); }
Problem: wenn ich die Seite aufrufe, bekomme ich in /var/run/messages dieses Fehler:
May 22 15:04:07 bilbo PAM_pwdb[24901]: get passwd; pwdb: request not recognized May 22 15:04:08 bilbo sudo[24901]: nobody : pam_authenticate: Authentication service cannot retrieve authentication info. ; TTY=unknown ; PWD=/home/httpd/linuxWeb/html/gpg ; USER=lucabert ; COMMAND=/opt/gnupg/bin/gpg --homedir /usr/lucabert/.gnupg/ --list-keys
Hat jemand eine Idee wie ich dieses Problem lösen kann?
Vielen Dank an alle! Luca Bertoncello (lucabert@lucabert.de)