Ich muss eine CSV-Datei auf einen Server kopieren - via Private-Key authentifizierung.
Auf der Linux-Konsole klappt das auch mit sftp und scp wunderbar.
Nun ist die Zielsetzung aber, dass ich den Anstoss zum rüberkopieren aus der Webapplikation gebe.
Daher meine Frage:
Wie bekomme ich mit meinem Private-Key (also ohne passworteingabe) eine Verbindung zum anderen Server, lade meine Datei hoch und beende die Verbindung?
Problematik:
Ich hatte überlegt, php den Befehl exec() mit der Kommandozeile für den Upload der Datei zu geben. Problem wäre, dass - insofern der Key nicht in ~/ssh/authorized_keys steht, nach der Paraphrase fragt.
Eintragen kann ich den Key aber nicht in die authorized_keys des Benutzers, da ja nicht der Benutzer, sondern der benutzer "Webserver" das script ausführt.
Dem Webserver möchte ich diesen speziellen Key nicht geben, da noch andere benutzer auf der maschine laufen, und dies ggf. ein Sicherheitsrisiko bedeuten würde.
Auf der Linux-Konsole klappt das auch mit sftp und scp wunderbar.
Nun ist die Zielsetzung aber, dass ich den Anstoss zum rüberkopieren aus der Webapplikation gebe.
Daher meine Frage:
Wie bekomme ich mit meinem Private-Key (also ohne passworteingabe) eine Verbindung zum anderen Server, lade meine Datei hoch und beende die Verbindung?
Problematik:
Ich hatte überlegt, php den Befehl exec() mit der Kommandozeile für den Upload der Datei zu geben. Problem wäre, dass - insofern der Key nicht in ~/ssh/authorized_keys steht, nach der Paraphrase fragt.
Eintragen kann ich den Key aber nicht in die authorized_keys des Benutzers, da ja nicht der Benutzer, sondern der benutzer "Webserver" das script ausführt.
Dem Webserver möchte ich diesen speziellen Key nicht geben, da noch andere benutzer auf der maschine laufen, und dies ggf. ein Sicherheitsrisiko bedeuten würde.