Cuturnの適当日記

徒然なるままに適当に駄文を吐き出しております

vyattaでのVPNとFirewall

vyattaでVPN越しに接続する場合で、ゾーンベースのファイアウォールを設定していた場合通信ができなくなったりします。で、それは何でかというと大体の場合、各ゾーンの中にL2TP越しの通信が含まれないためです。

そんなときは、ゾーンのインタフェース設定の中に「l2tp+」というインタフェースを混ぜ込みます。

zone-policy {
    zone ZONE-A {
        default-action drop
        from ZONE-B {
            firewall {
                name ZONE-B_to_ZONE-A
            }
        }
        interface eth0
        interface l2tp+
    }

このようにすることで、例えばZONE-AとVPN越しのIP帯は同じゾーンとして扱われることになるので、ファイアウォールにフィルタリングされずに通信ができます。逆にフィルタリングしたいのならVPNゾーンを作って入れればいいです。

なお、l2tp+インタフェース設定を入れるとこんなメッセージがでます。腹立たしいですが、実は設定として反映されていて通信が通るようになります。バグかな?

[edit]
vyatta@hoge# set zone-policy zone ZONE-A interface l2tp+
[edit]
vyatta@hoge# commit
[ zone-policy zone ZONE-A interface l2tp+ ]
interface l2tp+ does not exist on system

[edit]