mir den folgenden Code aus der phpseclib Bibliothek auf Remote-Server anmelden (Remote-Server verwendet: SFTP - SSH File Transfer Protocol):Dowload Dateien von Remote-Server mit phpseclib
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('phpseclib/Net/SFTP.php');
$sftp = new Net_SFTP('200.160.163.10');
if (!$sftp->login('username', 'password')) {
exit('Login Failed');
}
?>
Nach dem obigen Code ausgeführt werden Ich bekomme die folgende Nachricht:
Notice: Error reading channel data in /home/comdinhe/public_html/phpseclib/Net/SSH2.php on line 3480
Notice: Connection closed prematurely in /home/comdinhe/public_html/phpseclib/Net/SSH2.php on line 3500
Login Failed
Weiß jemand, was passieren könnte?
Log: http://pastebin.com/j9M7tZAM
Können Sie die SSH-Protokolle veröffentlichen? Sie können sie erhalten, indem Sie 'define ('NET_SSH2_LOGGING', 2);' am Anfang und dann 'echo $ ssh-> getLog(); 'vor dem' exit' ausführen. – neubert
Hier ist das Protokoll: http://pastebin.com/j9M7tZAM – Hidan
Diese Verbindung dauert eine Weile. Es dauert den Server 20s, um das "NET_SSH2_MSG_USERAUTH_SUCCESS" -Paket zu erhalten, und dann werden 10s für das Paket "NET_SSH2_MSG_CHANNEL_REQUEST" gesendet und weitere 20s für das Paket "NET_SSH2_MSG_CHANNEL_DATA" gesendet. idk, warum es so lange dauert, aber da es versucht $ 'sftp-> setTimeout (999999)' oder so etwas zu tun. – neubert