Folgende Voraussetzungen müssen erfüllt sein:
Das folgende Beispiel zeigt, wie die Erweiterung unter Xampp für Windows installiert wird:
Für die Authentifizierung durch PHP muss der Private Key mit folgender Zeile beginnen, da ein OPENSSH PRIVATE KEY von PHP nicht akzeptiert wird:
-----BEGIN RSA PRIVATE KEY-----
Ein solcher Key kann auf einem Linux-Betriebssystem mit der folgenden Anweisung erstellt werden:
ssh-keygen -m PEM -t rsa -f id_rsa
class SFTP { private $resource = false; public function connect( $host, $port = 22 ) { $this->resource = ssh2_connect( $host, $port, [ 'hostkey'=>'ssh-rsa' ] ); } public function auth( $username, $privKey ) { if( $this->resource ) { ssh2_auth_pubkey_file( $this->resource, $username, $privKey . '.pub', $privKey ); } } public function sendFile( $file, $filename ) { if( $this->resource ) { ssh2_scp_send( $this->resource, $file, $filename, 0644 ); } } }