Deluge を tun0 のみに制限し、eth0 経由で Deluge Web UI を許可する

Deluge を tun0 のみに制限し、eth0 経由で Deluge Web UI を許可する

何度も検索した結果、次のコマンドを使用して、Deluge ネットワーク トラフィックを VPN インターフェイス tun0 のみに制限することができました。

sudo iptables -A OUTPUT -m owner --uid-owner deluge \! -o tun0 -j REJECT

しかし、今ではポート8112(つまり192.168.0.23:8112)のeth0経由でWebUIにアクセスできなくなりました。

別の iptables ルールを使用して、ローカル ネットワーク上の WebUI へのアクセスを提供することはできますか?

答え1

これにより、Deluge はローカル サブネットを除いて VPN トンネルのみを使用するようになります。

iptables -A OUTPUT -m owner --uid-owner deluge ! -d 192.168.1.0/24 \! -o tun0 -j REJECT

そのロジックは、ローカル サブネットを除いて、VPN トンネル以外のすべての出力をブロックするというものです。

Delugeがどのユーザーを使用しているかを確認し、サブネットを自分のものと一致するように調整してください。また、ifconfig内でトンネル名(私の例ではtun0)を確認してください。

答え2

もう 1 つの方法は、VPN 接続と Web インターフェイスのみが eth0 経由で接続できるようにし、他のすべてをブロックすることです。

-A INPUT -s my.vpn.net -i eth0 -p udp -m udp --sport 1194 -j ACCEPT
-A INPUT -s my.local.ip -i eth0 -p udp -m udp --sport 8112 -j ACCEPT
-A INPUT ! -i tun0 -j DROP
-A OUTPUT -d my.vpn.net -o eth0 -p udp -m udp --dport 1194 -j ACCEPT
-A OUTPUT -d my.local.ip -i eth0 -p udp -m udp --sport 8112 -j ACCEPT
-A OUTPUT ! -o tun0 -j DROP

答え3

コンテナ (LXC/LXD/Docker) の使用:

ホスト上で Wireguard インターフェースを起動し、そのインターフェースを Deluge を実行しているコンテナーに唯一のインターフェースとして追加すると、アクセスは Wireguard インターフェースのみに制限されます。

コンテナ内の localhost 上の webui ポートにバインドし、ホスト上の任意のアドレスをリッスンするプロキシ デバイスを追加できます。

iptablesは必要ありません。

関連情報