このスクリプトをオンラインで見つけましたが、Linux Mintで実行した後、2つの問題が発生しました。
USB WiFiアダプタはインターネットに接続できず、内部WiFi経由でのみ接続できます。
どのVPNにも接続できません
これら2つの問題を解決するには、スクリプトで何を変更する必要がありますか?
https://tech.meetrp.com/blog/wp-content/uploads/2014/08/firewall.txt
答え1
- スクリプトは、廃止された
ifconfig -s
コマンドを使用してインターフェイス名を取得します。 USBネットワークインターフェースの最新の名前は、enxNNNNNNNNNNNN
インターフェースのMACアドレスと似ている可能性がありますNNNN...
。出力ではifconfig -s
インターフェイス名が8文字に切り捨てられるため、生成されたルールは実際のインターフェイス名と一致しません。
ラインを変えるだけです
INET_FACES=`$IFCONFIG -s | $GREP -vi 'kernel' | $GREP -vi 'iface' | $GREP -v 'lo' | $AWK '{print $1}'`
そして:
INET_FACES=$(/bin/ls /sys/class/net | grep -v lo)
- 使用するVPNの要件を満たすには、ルールを追加する必要があります。これには、一部のTCP / UDPポートを開く、いくつかのICMPパケットを許可し、および/またはいくつかのIPsec(ESP)または他のカプセル化(GRE、L2TPなど)プロトコルの入出力を許可することが含まれます。開く必要がある正確なポート/プロトコルは、使用する特定のVPNによって異なります。さらに、VPN クライアントは通常、接続の開始時に新しい仮想ネットワーク インターフェイスを作成します。 VPNが開始される前にこのスクリプトが実行されると、その仮想インターフェイスからの着信および発信トラフィックはすべてデフォルト拒否ルールの宛先になります。
一般的に、私は徹底的に読むまで、インターネット上でランダムなファイアウォールスクリプトを使用しないことをお勧めします。彼らがすることを理解し、。しかし、ファイアウォールを難しく学びたい場合は、この6年前のスクリプトが便利な出発点になる可能性があります。