または、curl
同じ人気のあるWebサイトにアクセスしようとしますが、常にタイムアウトエラーが発生します。curl google.com
curl google.com:80
実行するいくつかのトラブルシューティング手順:
curl localhost
対応できるping google.com
対応できる- DNSをGoogle DNSに変更してみましたが、役に立ちませんでした。
- 試してみると、
wget
外部サイトでも機能しません。
質問:
- 使用されているデフォルトポートが何であるかを知ることができますか
curl
? - ファイアウォールのブロックに関連していますか?私が知っている限り、私が使用しているサーバーにはポート80が開いています。
- さらに問題を解決するにはどうすればよいですか?
答え1
これがホストされたWebサーバーである場合は、古典的なWebサーバー方式で構成されていると思われます。これは、ポート 80 からの着信接続を許可しますが、セキュリティ上の理由からポート 80 からの着信接続を許可しない可能性があることを意味します。それが問題だと思います。カールとwgetは通常、問題なくすぐに機能します。カールは、指定されたURI(httpの場合は80、httpsの場合は443、ftpの場合は21など)に基づいてポートを選択します。プロトコルを提供せずに使用する場合は、80を使用します。この問題を解決するには、しばらくファイアウォールを無効にします(または数秒間ファイアウォールがオフになることを心配している場合は、設定を編集してください)。
修正する:
ポート80(発信)がブロックされていることを確認する簡単な方法があるかどうか疑問に思います。
私はあなたがすでにそうしていると言いたいです。 wgetは特に扱いにくいです。それがうまくいかなかったら、私はそれが安全な賭けだと言いたいと思います。より良いアプローチは、ファイアウォールの設定を見て、これが真であることを確認することです。
ポート80(発信)を有効にするときに注意する必要があるセキュリティ上の問題はありますか?
まさにこれです。そうするからといって安全性が低いとは感じません。つまり、この機能を有効にすると、誰かがあなたのウェブサイトデータベースにいくつかのJavaScriptコードを挿入する能力がある場合、あなたのウェブサイトを使用して追跡するのは非常に困難な犯罪を犯す可能性があります。彼らは(すべてのマークが両方とも表示されるので)攻撃者が誰であり、あなたが犯人であることを示します。あなたの誰かを実際に明らかにすることができる唯一のものはあなた自身の記録です。これは、あなたが最初に裁判所に提供したので、あまり説得力がありません。
ファイアウォールを無効にする権限がないようです。どの設定を編集するかを教えてください。ポート80のアウトバウンドを許可するようにファイアウォールが設定されていますか?
おそらくあなたの言葉が正しいでしょう。あなたがある種のホスティングソリューションを使用していることは明らかであるため、この質問に対する答えを実際に話すことはできません。 iptablesは、最も広く使用されているLinuxファイアウォールの名前です。インストールされている場合は、/etc/init.dにリストされている必要があります。そうでない場合は、WebホストのWebサイトにアクセスして管理方法を学ぶ必要があります。