私はPeerVPNインターフェイス"tap0"を持っていて、それからのすべてのトラフィックを受け入れたいと思います。ボックスはCentOS 7です。
私が理解しているように、「信頼できる」領域にインターフェースを追加するだけです。これを試してみると、すべてが大丈夫に見えますが、ルールは表示されません。
[root@ns1 ~]# ifconfig
<abridged>
tap0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.9.8.2 netmask 255.255.255.0 broadcast 10.9.8.255
inet6 fe80::3007:81ff:fe4e:adf9 prefixlen 64 scopeid 0x20<link>
ether 32:07:81:4e:ad:f9 txqueuelen 1000 (Ethernet)
RX packets 43 bytes 2618 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 27 bytes 2006 (1.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@ns1 ~]# firewall-cmd --zone=trusted --permanent --add-interface=tap0
The interface is under control of NetworkManager and already bound to 'trusted'
The interface is under control of NetworkManager, setting zone to 'trusted'.
success
[root@ns1 ~]# systemctl restart firewalld
[root@ns1 ~]# firewall-cmd --zone=trusted --list-all
trusted
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
これがうまくいかない理由についての提案はありますか?
答え1
これはNetworkManagerの問題です。
これを解決する方法はいくつかあります。
最新のNetworkManager
パッケージにアップデートして再起動し、コマンドとfirewall-cmd --complete-reload
コマンドを使用してゾーンにインターフェイスを追加しますsystemctl restart firewalld
。 (再起動が必要な場合や必要ない場合がありますが、万が一の場合に備えて再起動します。)
これがうまくいかない場合は、その領域のxmlファイルを作成/編集できます。構文は次のとおりです/etc/firewalld/zones/*.xml
。trusted.xml
<?xml version="1.0" encoding="utf-8"?>`
<zone>
<short>Trusted</short>
<interface name="tap0"/>
<description>Description of your choice.</description>
</zone>
firewall-cmd --complete-reload
その後、信頼領域にインターフェイスが表示systemctl restart firewalld
されます。firewall-cmd --list-all
最初の方法は私にとって効果的でしたが、2番目の方法も効果があることを確認しました。