GUI (またはコマンド行) からポリシーをインストールするとき、次のエラーメッセージが表示されます。
default.W: Security Policy Script generated into default.pf default: Compiled OK. Installing Security Policy default on all.all@lab-netra Failed to Load Security Policy: Invalid argument <-------------- !! Installing Security Policy on localhost(localhost) failed |
ポリシーのロードを truss すると、次のメッセージが表示されます。
truss -o /tmp/truss -f -vall -rall -wall /etc/fw/bin/fw /etc/fw/conf/default.W |
次のコードは truss の最後近くの部分です。
1226: open("/dev/fw0", O_RDWR|O_NONBLOCK) = 7 1226: ioctl(7, 0xC0C07A18, 0xEFFFBCA0) Err#22 EINVAL |
この問題は、FireWall-1 の起動後に新しい Ethernet インタフェースを誰かが「編集」または構成 (つまりシステムの起動後にマニュアルでインタフェースを編集) したことが原因です。
このエラーを解消するには、起動時にインタフェースが自動的に構成されるよう構成し (/etc/hostname.qe0 ファイルを作成するなど)、システムを再起動します。
また次のような解決方法もあります。
/etc/fw/bin/fwstop # Stop firewall modinfo | grep fw # Get kernel module ID 85 f5e19000 3cc0c 51 1 fw (fw) modunload -i 85 # Unload kernel module /etc/fw/bin/fwstart # Restart firewall |
これでポリシーは正しくインストールされます。
# ./fw load ../conf/default.W default.W: Security Policy Script generated into default.pf default: Compiled OK. |