La tentative de connexion à une instance Amazon EC2 à l'aide d'un fichier .pem, PHP et phpseclib.Connexion SSH à l'instance Amazon EC2 via PHP
J'ai essayé c'est mentionné dans ce post: ssh access to ec2 from php
Cependant, je continue à obtenir « Erreur 111. Connexion refusée dans ... »
Lorsque je me connecte de ma propre machine en utilisant ssh et même fichier .pem, il n'y a pas d'erreurs.
Voici le code du message original que j'utilise:
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');
}
Je suis très sûr que toutes ces bases évidentes sont couvertes. Une remarque est que ceci est spécifiquement pour une instance de FMS exécutant CentOS. Je ne sais pas si cela fait une différence. Le problème du port sortant semble valoir la peine d'être vérifié. Je reviendrai après avoir vérifié cela. – user883210
Selon mon hôte, le port 22 est ouvert pour les connexions sortantes. Ce qui est étrange, cependant, c'est que je peux ouvrir une connexion SSH via mon terminal (machine locale), mais php (host) signale la même erreur 111 soit via NET_SSH2 de phpseclib soit directement via la commande fsockopen utilisée par phpseclib. – user883210
semble être un problème spécifique à l'hôte, avec une personne de soutien mal informée qui m'a répondu la première fois. le port 22 a été bloqué par un pare-feu hostgator. Cela pourrait aider quelqu'un à l'avenir: http://support.hostgator.com/articles/how-to-enable-fsockopen – user883210