web-dev-qa-db-ja.com

IPFWはSSL接続を拒否します

fsockopenfile_get_contentsなどの関数を使用したPHPスクリプト)を介したhttps Webサイト(google、facebook、Amazon)の読み込みで問題が発生しました。操作がタイムアウトになります。 。それで、システム設定を調べ始めたところ、ipfwサービスが停止しているとき、それが魅力のように機能することに気づきました。

したがって、これは間違いなく私のIPFW構成に関連する問題です。ロギングを有効にしましたが、PHPスクリプトを実行しようとすると、ログファイルに表示されます。

ipfw: 1000 Deny ICMPv6:1.3 [2001:...:...:...::] [2001:...:2:...::] in via em0
ipfw: 1000 Deny ICMPv6:131.0 [...::...:...:...:...] [...::1:...:0] in via em0
ipfw: 1000 Deny ICMPv6:136.0 [2001:...:...:...:ff:ff:ff:ff] [...:...:2:...::] in via em0

IPv6の問題のように見えますが、ipfwファイルに状態の種類の接続をallow all保持します。

現在使用している構成は次のとおりです。

#!/usr/local/bin/bash

IPF="/sbin/ipfw -q add"

/sbin/ipfw -q -f flush

$IPF 10 allow all from any to any via lo0
$IPF 11 deny all from any to 127.0.0.0/8
$IPF 12 deny all from 127.0.0.0/8 to any
$IPF 13 deny tcp from any to any frag

$IPF 250 check-state
$IPF 260 allow tcp from any to any established
$IPF 270 allow all from any to any out keep-state
$IPF 280 allow icmp from any to any

$IPF 290 allow log tcp from 127.0.0.1/32 to 127.0.0.1/32 3306 in

$IPF 350 allow udp from any to any 53 in
$IPF 351 allow tcp from any to any 53 out
$IPF 352 allow tcp from any to any 80 in
$IPF 353 allow tcp from any to any 80 out
$IPF 361 allow tcp from any to any 443 in
$IPF 362 allow tcp from any to any 443 out
$IPF 363 allow tcp from any to any 22 in
$IPF 364 allow tcp from any to any 22 out

$IPF 1000 deny log all from any to any

また、FreeBSD 10.3(9.2以前)にアップグレードした後、この問題が発生し始めました。

何が問題ですか?

1
Cyclone

私はIPv6を使用していませんが、/etc/rc.firewall/etc/protocolsから、ICMPのIPv6のシンボル名がipv6-icmpであることがわかりました。 IPv6 ICMPパケットを渡す必要がある場合は、新しいルールを追加することをお勧めします。

allow ipv6-icmp ...

既存のルールがわかりません。診断のためにinルールとoutルールを分離している可能性がありますが、次のようになります。

allow tcp from any to any xxx in
allow tcp from any to any xxx out

以下に類似しています(同等でない場合)。

allow tcp from any to any xxx

また、すべてのoutルールは、とにかくルール270によって横取りされます。

サーバーでネームサービスを使用する必要がある場合、UDPを介したリモートDNSサーバーからの応答を許可するルールがありません。

allow udp from any 53 to any
2
Richard Smith