2013-10-12 21 views
9

は、私はで私の管理コンソールで、私のEC2インスタンス上のポート3000を開いた3000オープニングポート3000のEC2 Amazon Webサービス

ポートでのWebSocketを使用するWebアプリケーションを、提供するsocket.io関連するセキュリティグループにインバウンドTCPルールを追加しますが、私はまだブラウザ上の公開DNS経由でアクセスできません。

sudo netstat -tulpnはオープンポートとして表示しません。

私には何が欠けていますか?再起動が必要なサービスや、実行するためにプッシュする必要のあるコマンドラインがありますか?

ありがとうございます。

+0

解決済みですか? 私は無駄にインターネット上を見渡した。 3000の代わりにnodejsアプリケーションでポート8080を使用すると、問題が解決しました。しかし、なぜポート3000は機能しませんでしたか? – tbogatchev

答えて

1

AWS管理コンソールを使用して変更したと思います。 しかしこれは、Amazonのシステムが自分のセキュリティシステムを経由してポート3000上のメッセージをサーバーに送信することを意味します。

EC2サーバー(WindowsかLinuxかどうかはわかりません)は、ポート3000を開く必要がある独自のファイアウォールシステムを持っている可能性があります。変更する必要がある設定にサーバーのドキュメントを参照する必要があります。

あなたはEC2インスタンスでブラウザを開こうとしたことがあると思いますが、そこからwebappにアクセスできます。

また、横に考えると、EC2サーバー上で実行されている他のWebサーバーがない場合、node.js webappをポート80を使用するように変更しないでください。

9

sudo netstat -tulpnはオープンポートとして表示しません。

netstatコマンドは、「何らかの」プロセスが聴いているすべてのポートを表示します。だから、あなたが言及したように、この場合には、あなたのアプリケーションがポートでリッスンしていないように思える3000

は、アプリケーションを修正し、それが3000

またポートで待機していることを確認し、netstatは何にをまずありません

ファイアウォールの観点からポートが開いているか閉じているかによって異なります。指定されたポートが何らかのプロセスによってモードLISTENINGにあるかどうかを示します。

次の手順に従います。

  1. は、あなたのアプリケーションがポート3000でリッスンしていることを確認します netstat -anp | grep 3000telnet 127.0.0.1 3000
  2. を次にローカルファイアウォールがポート3000 または無効に着信アクセスを許可するように設定されていることを確認してくださいローカルファイアウォールは、迅速なテストを行う(service iptables stop)。 Linuxの場合、通常はiptables
  3. AWSセキュリティグループのポート3000へのアクセスを許可します。

上記の3つの点を踏まえて、同じ問題に直面している場合は、お知らせください。

1

は、同様の問題があったが、私はSSL

var https = require('https').Server({ 
    key: fs.readFileSync(path.join(__dirname + '../) + 'ssl.key', 'utf8'), 
    cert: fs.readFileSync(path.join(__dirname + '../') + 'ssl.crt', 'utf8') 
}, app); 

しかしでsocketioを使用していたキーが間違っていたので、私のAWSのセキュリティが行われたにもかかわらず、明確でnginxのクライアントのjsファイルで提供iptablesの、依頼が終了しました。だからFirefoxで私はnet :: ERR_CONNECTION_CLOSEDを取得し、最終的にはSSLの失敗であるかもしれないと考えました。

+0

それは私のためにそれを解決しました。 – david

0

上記のすべての手順に加えて、ufw(複雑なファイアウォール)が設定されているかどうかを確認してください。あなたがUFW実行している場合

は何をチェックします

sudo ufw status 

それが実行されている場合、 は、ポート3000を許可するだけで

sudo ufw allow 3000 

が、これは私のために問題を解決し、コマンドを実行します。私はufwをしばらく前にセットアップしていたことを忘れて、最近awsインスタンスを再び使用し始めました。

関連する問題