web-dev-qa-db-ja.com

ufwでローカルIPv6サブネットを許可するにはどうすればよいですか?

最近、自宅でIPv6接続を取得しましたが、LANからのみIPv6経由でホームサーバーへの接続を許可したいと思います。秘Theは、サーバーに割り当てられたIPv6アドレス/プレフィックスが動的であることです。直接接続されたサブネットからのみ許可するUFWルールを記述する方法はありますか?

6
user96232

IPv6の「ローカル範囲」は存在しないことに注意してください。各IPv6「ローカル範囲」は、明確に定義されたプレフィックス内の独自の(少なくとも)/ 64セグメントのv6アドレスです。そのため、受信する「プライベート範囲」アドレスは、ルーターが設定したサブネットに固有のものになります(外部v6アドレスはありません(サブネットを自動的に設定するルーター内のロジックがありますが、高度なファイアウォール、ルーター、スイッチなどを備えたエンタープライズグレードルーティング、IPv6は手動で手動で構成してセットアップする必要があります。

サブネットを変更する可能性が非常に高い(そして頻繁に)方程式に追加すると、すべてのIPv6インバウンド接続を受け入れずにそれらすべてを動的に受け入れる方法はありません-少なくともコンシューマーグレードのネットワーク設定では(はるかに複雑ではるかに高価なファイアウォールアプライアンス、明示的にVLAN分離を行って、外部との通信を防ぎ、内部v6のみを受け入れることができますが、コンシューマではこれを行うことができません-grade router technology)。

同様に、ファイアウォールルールはufw(およびufwが動作する基礎となるiptablesおよびnetfilterテクノロジ)でspecificルール(ALLOW aaaa:bbbb:cccc:dddd::dead:beef INBOUND TO dddd:eeee:ffff:0000::dead:beef PORT 22/tcp(明らかにルールではなく、単なる例です))、異なるv6サブネット上に常に異なるアドレスを持っている場合(内部または外部、特に内部)、ファイアウォールがこれらの種類のルールに対して持っている要件を破ります。

したがって、取得するすべてのサブネットを把握し、個々のサブネットに対応するufwルールを追加する必要があります。そのサブネットが常に変化し、取得するサブネットがわからない場合、動的に変化するベースで達成したいことを実行できるセットアップでファイアウォールルールを確実に作成することはできません。

これは、自宅でのポート転送にも適用されます。内部IPアドレス(v4またはv6)が変更されない限り、ポート転送を確実にセットアップすることはできません。 (ルーターは、静的セットアップで内部v6をセットアップする限り、インターネットからのINBOUNDを透過的に処理しますが、これは、より多くの時間のかかるネットワーク構成とセットアップなしで行われることを保証できません。高価になる可能性のあるエンタープライズグレードレベルの機器)

4
Thomas Ward

古い質問ですが、Googleが私をここに連れてきたので、IPv6リンクローカル範囲を次のように追加できることに注意する価値があると思います。

ufw allow from fe80::/64

LAN経由で接続している場合、グローバルIPv6アドレスの代わりにリンクローカルアドレスが使用されます。

3
gaddman