web-dev-qa-db-ja.com

iptablesの発信デフォルトポリシーは受け入れられますが、一部のポートはブロックされているように見えます

サーバーとiptablesは初めてです。 Centos 6.7 Apache/httpdサーバーで実行されているWebアプリ(bugzillaの可能性があります)があり、ポート80を介してWeb(updates.bugzilla.org)に接続しようとします。また、(smtpに)接続しようとします。 .gmail.com)ポート465を使用します。ただし、できません。これは、デフォルトの出力ポリシーがACCEPTであり、入力用に関連するポートを開いているにもかかわらずです。

ここからどこへ行けばいいのかわからない。これのトラブルシューティングを開始するには、どこを見ればよいですか?考えられる原因は何ですか?

いくつかの出力:

$ service iptables status

表:フィルター

チェーン入力(ポリシーACCEPT)

num target prot opt source destination

1すべて受け入れる-0.0.0.0/0 0.0.0.0/0

2すべてを受け入れる-0.0.0.0/0 0.0.0.0/0状態RELATED、ESTABLISHED

3 ACCEPT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:22

4 ACCEPT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:80

5 ACCEPT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:443

6 ACCEPT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:25

7 ACCEPT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:587

Chain FORWARD(ポリシーDROP)num target prot opt source destination

チェーン出力(ポリシーACCEPT)num target prot opt source destination

そして:

iptables -L -vチェーン入力(ポリシーACCEPT 881パケット、106Kバイト)

pktsバイトターゲットprotオプトインソース宛先

00すべてを受け入れる-どこでもどこでも

436 183Kすべてを受け入れる-どこでもどこでもどこでも状態RELATED、ESTABLISHED

0 0 ACCEPTtcp-どこでもどこでもtcpdpt:ssh

1 60 ACCEPTtcp-どこでもどこでもtcpdpt:http

0 0 ACCEPTtcp-どこでもどこでもtcpdpt:https

0 0 ACCEPTtcp-どこでもどこでもtcpdpt:smtp

0 0 ACCEPTtcp-どこでもどこでもtcpdpt:submission

チェーンフォワード(ポリシーDROP 0パケット、0バイト)pktsバイトターゲットprotオプトインソース宛先

チェーン出力(ポリシーACCEPT 348パケット、56741バイト)

pktsバイトターゲットprotオプトインソース宛先

Ubuntuのufwを使用しているときにubuntuデスクトップにbugzillaのインストールを成功させたので、それがbugzillaまたはcentos固有のものではないことを願っています(iptablesでも試したと思いますが、試す必要があります)もう一度確認します)。

更新:

後日これをウェブ検索して見る人にとって、これはSELinuxの問題であることがわかりました!ブール値の「httpd_can_network_connect」を有効にする必要があります(その他の場合は、「getsebool-a」を使用します)。

3
tniles

これを試して:

service iptables save
service iptables stop
chkconfig iptables off

ブーム、ファイアウォールなし。もう一度テストします。

Telnetを使用してそのポートをテストしてみてください。

telnet updates.bugzilla.org 80

Telnetに接続したら、「get」と入力して、応答があるかどうかを確認します。

Example:

# telnet updates.bugzilla.org 80
Trying 63.245.223.29... 
Connected to updates.bugzilla.org.
Escape character is '^]'
get
<html>
<head><title>400 Bad Request</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx/1.0.15</center>
</body>
</html>
Connection closed by foreign Host.

動作しませんでしたか?

Tcptracerouteを試して、ブロックされる場所を確認してください。

tcptraceroute updates.bugzilla.org 80

ポートをブロックしている他の何かがあるでしょうか?ファイアウォール、ルーター、ISP?

2
Ryan Babchishin