0
我想連接到與PHP建立SSH連接我的託管公司說我們不允許在共享服務器上的SSH連接..所以有任何解決方法,我可以用來連接一些其他功能。在共享主機上的ssh2_connect的解決方法
<?php
if (!function_exists("ssh2_connect")) die("function ssh2_connect doesn't exist");
// log in at server1.example.com on port 22
if(!($con = ssh2_connect("server5500.asd.com", 22))){
echo "fail: unable to establish connection\n";
} else {
// try to authenticate with username root, password secretpassword
if(!ssh2_auth_password($con, "asd", "[email protected]")) {
echo "fail: unable to authenticate\n";
} else {
// allright, we're in!
echo "okay: logged in...\n";
// execute a command
if (!($stream = ssh2_exec($con, "ls -al"))) {
echo "fail: unable to execute command\n";
} else {
// collect returning data from command
stream_set_blocking($stream, true);
$data = "";
while ($buf = fread($stream,4096)) {
$data .= $buf;
}
fclose($stream);
}
}
}
?>
你想用這種連接做什麼? – Soundz
popen('ssh ...')可能是可能的,但如果'我們不允許SSH連接',那麼post或DNS查找可能被禁用? – symcbean
對於任何嚴重的ISP,「我們不允許SSH連接」意味着到端口22/TCP的傳出連接被**防火牆**,*您可能使用的任何函數*阻止。你也許可以通過在目標主機上的端口443/tcp上打開一個SSH端口來避開這種情況。如果你可以的話。而且在大多數國家,這種伎倆可能足以使你的賬戶以偏見終止;所以真正的答案是,「改變ISP,或者嘗試爲他們提供更多的錢」。 – LSerni