私の小規模サーバーにファイアウォールが必要だと判断したら、fermを使用してiptablesとip6tablesを設定しました(この質問ではfermタグを付ける必要がありますが、タグを生成することはできませんでした)。
ipv4とipv6に同じ規則を使用しますが、ファイアウォールを設定したら(すべてのポートで)、IPv6接続が機能しなくなり、IPv4に切り替える必要があります。なぜですか?
私の/etc/ferm.conf
domain (ip ip6) table filter {
chain INPUT {
policy DROP;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# allow local connections
interface lo ACCEPT;
# respond to ping
proto icmp icmp-type echo-request ACCEPT;
# allow SSH connections
proto tcp dport ssh ACCEPT;
# allow all my lovely server stuff
proto tcp dport (http https smtp imap imaps) ACCEPT;
# Teamspeak 3 Server
proto tcp dport (10011 30033) ACCEPT;
proto udp dport 9987 ACCEPT;
# Prosody XMPP
proto tcp dport (5222 5269) ACCEPT;
# ident connections are also allowed
proto tcp dport auth ACCEPT;
# the rest is dropped by the above policy
}
# outgoing connections are not limited
chain OUTPUT policy ACCEPT;
# this is not a router
chain FORWARD policy DROP;
}
IP6テーブル-vnL
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 DROP all * * ::/0 ::/0 state INVALID
24 8224 ACCEPT all * * ::/0 ::/0 state RELATED,ESTABLISHED
0 0 ACCEPT all lo * ::/0 ::/0
0 0 ACCEPT icmpv6 * * ::/0 ::/0 ipv6-icmptype 128
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:22
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:80
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:443
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:25
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:143
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:993
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:10011
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:30033
0 0 ACCEPT udp * * ::/0 ::/0 udp dpt:9987
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:5222
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:5269
0 0 ACCEPT tcp * * ::/0 ::/0 tcp dpt:113
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 24 packets, 8224 bytes)
pkts bytes target prot opt in out source destination
ベストアンサー1
問題は、ほとんどのICMPv6パケットを破棄することです。ネイバー検索(IPv4のARPと同じ)など、多くの基本的なIPv6機能はICMPv6に依存しています。 ICMPはIPプロトコル(IPv4とIPv6)の重要な部分ですが、間違ったICMPフィルタリングによる影響は、IPv4よりもIPv6でははるかに深刻です。すべてのICMPを許可してから、不要なICMPをフィルタリングする方が良いかもしれません。
詳細な背景情報については、以下を確認してください。RFC 4890。