最近、PHP用のphpseclib0.3.1ライブラリをダウンロードしました。これにより、SSH経由でEC2インスタンスに接続できるようになります。ただし、「バナータイムアウト」エラーメッセージが表示されます。私が電話するとき:
$ssh = new Net_SSH2('ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com',1234);
最初の引数はパブリックDNSであり、2番目の引数はセキュリティグループに関連付けられたポートです(2つは正しく一致します)。このコマンドを実行すると、次のエラーメッセージが表示されます。
注意:ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.comに接続できません。815行目の...\SSH2.phpでのバナータイムアウト
これに対応します:
// on windows this returns a "Warning: Invalid CRT parameters detected" error
// the !count() is done as a workaround for <https://bugs.php.net/42682>
if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {
user_error(rtrim("Cannot connect to $host. Banner timeout"), E_USER_NOTICE);
SSH2.phpファイルはhttp://phpseclib.sourceforge.net/から見つけることができます。この問題を解決できない場合、EC2インスタンスに接続するためのPHPの代替手段は何ですか?
ありがとう!