SSH via exec naar andere server via PHP

Status
Niet open voor verdere reacties.

mooser

Nieuwe gebruiker
Lid geworden
28 jan 2010
Berichten
4
Hallo,

Ik had graag jullie hulp met het volgende:
op server A draait PHP en dus ook een webserver. Ik wens via PHP op server A een bash script uit te voeren op server B.
Voor zover ik kan lezen zou dit perfect moeten lukken dmv volgend commando in PHP:
Code:
exec("ssh <serverB> \"pathtoscript/testscript.sh\"");

De eigenaar van server B heeft voor mij een user aangemaakt "USER", maar het probleem is dat de ssh in feite door www-data wordt uitgevoerd, dus waarschijnlijk is dit de reden waarom het niet werkt.

Als ik rechstreeks met user USER in command line op de machine
Code:
ssh <serverB> "pathtoscript/testscript.sh"
uitvoer, dan lukt dit wel.

Ik vermoed dat er ergens een probleem is met het uitwisselen van security keys wanneer ik PHP gebruik. Immers wanneer ik
Code:
 sudo su - www-data
dan lukt het ook niet. Ook ssh USER@<serverB>... werkt ook niet.

Ik zou dit bijvoorbeeld kunnen omzeilen door via PHP een touch FILE te doen, en dan via crontab laten checken of de file aanwezig is of niet. Indien aanwezig, kan ik via cron user het script op de andere server laten uitvoeren, maar dit is niet zo overzichtelijk en omslachtig.

Iemand een idee? Misschien de exec ssh uitvoeren en hierbij keys doorgeven of zo? www-data alle rechten geven zou ook moeten werken, maar dit is uiteraard niet de bedoeling.

Beste groeten,
J.
 
ssh2_exec module is niet geinstalleerd op de server, en ik mag ook geen extra installaties doen op deze server. Maar dit zou eventueel een oplossing kunnen zijn..
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan