ルーターのIPv6トラフィックがドロップされているようです。
トラフィックが自分のマシンに転送/受け入れられるように、ip6tables
を適切に構成するにはどうすればよいですか?
これが私のIPv6トラフィックのsyslog
です。
Jun 29 18:44:52 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2002:xxxx:ba3d:0000:0000:0000:74ca:ba3d DST=My_IPv6_IP_ADDR LEN=68 TC=0 HOPLIMIT=119 FLOWLBL=0 PROTO=TCP SPT=58154 DPT=63282 SEQ=3810938415 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020404C401010402)
Jun 29 18:44:52 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2002:xxxx:ba3d:0000:0000:0000:74ca:ba3d DST=My_IPv6_IP_ADDR LEN=78 TC=0 HOPLIMIT=119 FLOWLBL=0 PROTO=UDP SPT=28798 DPT=63282 LEN=38
Jun 29 18:44:57 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2001:xxxx:0008:e8ad:0000:0000:0000:0001 DST=My_IPv6_IP_ADDR LEN=80 TC=0 HOPLIMIT=50 FLOWLBL=0 PROTO=TCP SPT=40930 DPT=80 SEQ=2391968293 ACK=0 WINDOW=14400 RES=0x00 SYN URGP=0 OPT (020405A00402080A7E7DEFB80000000001030307)
Jun 29 18:44:58 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2001:xxxx:0008:e8ad:0000:0000:0000:0001 DST=My_IPv6_IP_ADDR LEN=80 TC=0 HOPLIMIT=50 FLOWLBL=0 PROTO=TCP SPT=40930 DPT=80 SEQ=2391968293 ACK=0 WINDOW=14400 RES=0x00 SYN URGP=0 OPT (020405A00402080A7E7DF0B20000000001030307)
Jun 29 18:44:59 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2a02:xxxx:c310:a5a0:81eb:84c7:22af:7539 DST=My_IPv6_IP_ADDR LEN=72 TC=0 HOPLIMIT=43 FLOWLBL=0 PROTO=TCP SPT=58249 DPT=63282 SEQ=1653524828 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405A00103030801010402)
Jun 29 18:44:59 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2a02:xxxx:c310:a5a0:81eb:84c7:22af:7539 DST=My_IPv6_IP_ADDR LEN=78 TC=0 HOPLIMIT=43 FLOWLBL=0 PROTO=UDP SPT=23103 DPT=63282 LEN=38
Jun 29 18:45:00 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2001:xxxx:0008:e8ad:0000:0000:0000:0001 DST=My_IPv6_IP_ADDR LEN=80 TC=0 HOPLIMIT=50 FLOWLBL=0 PROTO=TCP SPT=40930 DPT=80 SEQ=2391968293 ACK=0 WINDOW=14400 RES=0x00 SYN URGP=0 OPT (020405A00402080A7E7DF2A70000000001030307)
Jun 29 18:45:02 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2a02:xxxx:c310:a5a0:81eb:84c7:22af:7539 DST=My_IPv6_IP_ADDR LEN=72 TC=0 HOPLIMIT=43 FLOWLBL=0 PROTO=TCP SPT=58249 DPT=63282 SEQ=1653524828 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405A00103030801010402)
Jun 29 18:45:02 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2a02:xxxx:c310:a5a0:81eb:84c7:22af:7539 DST=My_IPv6_IP_ADDR LEN=78 TC=0 HOPLIMIT=43 FLOWLBL=0 PROTO=UDP SPT=23103 DPT=63282 LEN=38
Jun 29 18:45:06 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2601:xxxx:8380:06b8:5d87:46c7:7e85:08c9 DST=My_IPv6_IP_ADDR LEN=72 TC=0 HOPLIMIT=42 FLOWLBL=0 PROTO=TCP SPT=52362 DPT=63282 SEQ=3069346662 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405A00103030201010402)
Jun 29 18:45:08 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2a02:xxxx:c310:a5a0:81eb:84c7:22af:7539 DST=My_IPv6_IP_ADDR LEN=68 TC=0 HOPLIMIT=43 FLOWLBL=0 PROTO=TCP SPT=58249 DPT=63282 SEQ=1653524828 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405A001010402)
Jun 29 18:45:09 kernel: DROP IN=eth3 OUT=br0 MAC=MAC_ADDR_1 SRC=2601:xxxx:8380:06b8:5d87:46c7:7e85:08c9 DST=My_IPv6_IP_ADDR LEN=72 TC=0 HOPLIMIT=42 FLOWLBL=0 PROTO=TCP SPT=52362 DPT=63282 SEQ=3069346662 ACK=0 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405A00103030201010402)
ルーターのip6t_filter.default
ファイルの内容は次のとおりです。
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:maclist - [0:0]
:bfplimit - [0:0]
:logaccept - [0:0]
:logdrop - [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i br0 -j ACCEPT
-A INPUT -p 58 ! --icmpv6-type echo-request -j ACCEPT
-A INPUT -m state --state INVALID -j DROP
-A INPUT -p udp --sport 547 --dport 546 -j ACCEPT
-A INPUT -j DROP
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i br0 -o br0 -j ACCEPT
-A FORWARD -p 58 -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -o br0 -j DROP
-A logaccept -m state --state NEW -j LOG --log-prefix "ACCEPT " --log-tcp-sequence --log-tcp-options --log-ip-options
-A logaccept -j ACCEPT
-A logdrop -m state --state NEW -j LOG --log-prefix "DROP " --log-tcp-sequence --log-tcp-options --log-ip-options
-A logdrop -j DROP
COMMIT
br0
インターフェースは次のとおりです。
br0 Link encap:Ethernet HWaddr AA:BB:49:E3:62:8E
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: IPv6_1 Scope:Global
inet6 addr: fe80::e23f:49ff:fee3:628e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2233491 errors:0 dropped:0 overruns:0 frame:0
TX packets:1930092 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:998010242 (951.7 MiB) TX bytes:348204643 (332.0 MiB)
eth3
インターフェースは次のとおりです。
eth3 Link encap:Ethernet HWaddr MAC_ADDR_1
inet addr:MyIPv4_Host_ADDR Bcast:X.Y.223.255 Mask:255.255.224.0
inet6 addr: IPv6_2 Scope:Global
inet6 addr: fe80::e23f:49ff:fee3:628d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9909832 errors:0 dropped:0 overruns:0 frame:0
TX packets:15334176 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1243667320 (1.1 GiB) TX bytes:19852159929 (18.4 GiB)
DROPはすべてTCP SYNとしてマークされます。SYNは、新しいTCP接続が外部から着信することを意味します。したがって、最初に、素朴な答えは
-A FORWARD -m state --state NEW -j ACCEPT
しかし(あなたが尋ねなければならないので)あなたは実際にそれをしたくありません。もっと「適切な」ものが必要です。
誰かがプリンター、NAS、ファイアウォールが「ホーム」、別名「プライベートネットワーク」に設定されたWindowsデバイスを素朴に接続するためです。または、ネットワーク上でサービスを提供するその他のデバイス。これがネットワークの目的です。次に、インターネットはプリンターまたはNASを起動するか、Windowsデバイスによって共有されているファイルを調べます。申し訳ありませんが、セキュリティは最悪です。
コンシューマーIPv6ルーター(「CPE」)の標準を探すと、ルーターのようにステートフルファイアウォールが義務付けられていることがわかります。
サーバーを実行する場合は、別の「DMZ」ネットワーク上で専用のマシンを使用するのが理想的です。つまりホームLANにブリッジされていない、メインルーター上の分離されたネットワークポート。たとえば、ブログをホストする場合、誰かがブログソフトウェアに脆弱性を見つけたときに、これはPCを保護するレイヤーを提供します。
LANに直接接続された「プライベートクラウド」NAS、IPカメラなどのようなセキュリティサポート[1]を備えた消費者向けデバイスを実行する場合は、これがIPv4で一般的にどのように機能するかを確認する価値があります。彼らは主にuPnPポートフォワーディング[2]を使用し、それが失敗した場合は、ルーターでポートフォワード[3]を手動で構成するように指示します。これは、BitTorrentのようなピアツーピアファイル共有の仕組みでもあります。
これはIPv6でも同じように機能しますが、技術的にはポートを転送せず、ブロックを解除するだけです。 (ユーザーが接続するIPアドレスは、ルーターではなく、マシンのIPになります)。
uPnPポートフォワーディングはIPv6では機能しません。 PCPと呼ばれる同等のものがあります(AppleのIPv4用NAT-PMPに基づく)。それはBitTorrentに慣れると確信していますが、私の無知な推測では、それはあなたの場合には関係ありません。
手動ポート制御(v4/v6の両方)の場合、デバイスに固定IPアドレスを割り当てて、デバイスを永続的に識別できるようにする必要があります。その後、あなたはできる[4]
-A FORWARD -p tcp -d YOUR_MACHINE_IPV6_ADDRESS --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
ポート63282、またはインターネットに公開するポートについても同じです。
これにより、ファイアウォールポリシーがルーターに集中します。 (すべてのポートのブロックを解除した場合は、i)マシンでサービスを実行しているii)マシンのホストファイアウォールiii)ルーターを引き続き監視する必要があります。
ネットワークはブリッジされているので、マシンがルーターのワイヤレスインターフェイスと有線インターフェイスを切り替えても、これは機能すると思います。 (どちらでも同じIPアドレスで動作するため)。
[1] http://www.wired.com/2014/01/theres-no-good-way-to-patch-the-internet-of-things-and-thats-a-huge-problem /
[2] http://en.wikipedia.org/wiki/Universal_Plug_and_Play#NAT_traversal
[3] http://en.wikipedia.org/wiki/Port_forwarding
[4] Stolen ^ W IPv4バージョンから適応 https://serverfault.com/questions/140622/how-can-i-port-forward-with-iptables