嘗試使用.pem文件,PHP和phpseclib連接到Amazon EC2實例。通過PHP連接到Amazon EC2實例的SSH連接
我已經試過什麼在這篇文章中提到: ssh access to ec2 from php
不過,我不斷收到「錯誤111連接拒絕......」
當我從我自己的機器使用ssh和連接相同的.pem文件,沒有錯誤。
下面是從原來的職位,我使用的代碼:
include('Net/SSH2.php');
include('Crypt/RSA.php');
$key = new Crypt_RSA();
$key->loadKey(file_get_contents('/pathtokey.pem'));
$ssh = new Net_SSH2('ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com');
if (!$ssh->login('user', $key)) {
exit('Login Failed');
}
我非常肯定所有這些明顯的基礎都被覆蓋了。需要注意的是,這是專門針對運行CentOS的FMS實例的。不知道這是否有所作爲。出站端口問題似乎值得檢查。檢查後會回來。 – user883210
根據我的主機,端口22是打開的出站連接。但奇怪的是,我可以通過終端(本地機器)打開SSH連接,但php(主機)通過phpseclib的NET_SSH2或直接通過phpseclib使用的fsockopen命令報告相同的錯誤111。 – user883210
看起來像是一個特定於宿主的問題,第一次有一位誤會的支持人員迴應我。端口22被hostgator防火牆阻止。這可能有助於未來的人:http://support.hostgator.com/articles/how-to-enable-fsockopen – user883210