回答:
firewall-cmd
コマンドを使用します。
デフォルトゾーンでOpenVPNまでファイアウォールを開くと仮定して、次のコマンドを実行します。デフォルト以外のゾーンで実行している場合は--zone=<zone>
、コマンドに追加します。
注:public
外部に面したネットワークアダプターにデフォルトゾーンを使用すると、ループバックインターフェイスもマスカレードされる可能性があり(firewalld
実行しているバージョンによって異なります)、アクセスされるサービス(mySQLなど)を実行している場合に問題が発生する可能性がありますローカル。
まず、現在開いているものをリストします。
# firewall-cmd --list-services
http https ssh
次に、openvpn
サービスを追加します。
# firewall-cmd --add-service openvpn
success
簡単なチェック:
# firewall-cmd --list-services
http https openvpn ssh
上記で動作するようにopenvpn
なりますが、テストすることができます。ただし、再起動しても長続きしません。永続的にするには、--permanent
オプションを追加します。
# firewall-cmd --permanent --add-service openvpn`
success
この最後のコマンドは次の再起動までポートを開かないため、両方のコマンドを使用する必要があることに注意してください。
最後に、マスカレードを追加します。
# firewall-cmd --add-masquerade
success
そして、再起動後に永続的にします:
# firewall-cmd --permanent --add-masquerade
success
それを確認します:
# firewall-cmd --query-masquerade
yes
着信OpenVPN接続がインターネットに面した接続とは異なるゾーンにある場合、マスカレードは後者にあるはず--zone=<zone>
であり、--add-masquerade
コマンドでオプションを使用する必要があることに注意してください。
/lib/firewalld/services/
ます。あなたの場合、それはopenvpn.xml
そのディレクトリ内にあります。ユーザー定義サービスが入り/etc/firewalld/services
ます。openvpnのデフォルトポートはUDP/1194
です。
public
ゾーンの場合、ループバックインターフェイスをマスカレードします。以前はデフォルトゾーンをに設定していたexternal
ため、表示されている問題に直面することはありませんでした。サービスとアダプターを別のゾーンに移動して、それが役立つかどうかを確認してください。教えてください:-)