Armadilloフォーラム

awallが落ちてしまう件

h.ohtsubo

2022年8月9日 13時14分

お世話になります。

awallで"filter"を設定しようとしているのですが、エラーが発生してしまいます。

ip6tables-restore v1.8.8 (legacy): ip6tables-restore: unable to initialize table 'raw'

Error occurred at line: 40
Try `ip6tables-restore -h' or 'ip6tables-restore --help' for more information.
/usr/share/lua/5.4/awall/iptables.lua:92: assertion failed!
stack traceback:
/usr/share/lua/5.4/awall/uerror.lua:25: in function
[C]: in function 'assert'
/usr/share/lua/5.4/awall/iptables.lua:92: in method 'restore'
/usr/share/lua/5.4/awall/iptables.lua:101: in method 'test'
/usr/share/lua/5.4/awall/init.lua:129: in method 'test'
/usr/share/lua/5.4/awall/init.lua:133: in upvalue 'f'
/usr/share/lua/5.4/awall/uerror.lua:20: in function
[C]: in function 'xpcall'
/usr/share/lua/5.4/awall/uerror.lua:19: in function 'call'
/usr/sbin/awall:416: in upvalue 'f'
/usr/share/lua/5.4/awall/uerror.lua:20: in function
[C]: in function 'xpcall'
/usr/share/lua/5.4/awall/uerror.lua:19: in function 'call'
/usr/sbin/awall:163: in main chunk
[C]: in ?

このエラーは下記で発生します。

"filter": [
{
"in": "WAN",
"service": [ "ftp" ],
"action": "accept"
}
]

さらに追いかけると、

/usr/share/awall/mandatory/services.json

で定義されている、

"ftp": { "proto": "tcp", "port": 21, "ct-helper": "ftp" },

の "ct-helper": "ftp" を削除すると前記エラーが発生しないことまでは判りました。
残念ながら、これ以上追いかけるだけの力量もなく、お知恵を拝借したいです。
ちなみにVirtualBox上に作成したalpineではこのような問題は発生しません。

なお、awallは製品には搭載せず、開発機でawallが生成した結果(iptables-save)を製品でiptables-restoreする、
という作戦で考えています。

よろしくお願いいたします。

コメント

溝渕です。

Linuxカーネルコンフィギュレーションで、"IP6_NF_RAW"を有効にしてみていただけますか?

-> Networking support
  -> Networking options
    -> Network packet filtering framework (Netfilter)
      -> IPv6: Netfilter Configuration
         <*> IP6 tables support (required for filtering)
         < >   raw table support (required for TRACE) <-ここにチェック

溝渕様

ご回答、ありがとうございます。

変えてみたのですが、症状に変化ありませんでした。

/boot/Imageのタイムスタンプが古いままでした。
何か、手順に誤りがあったようです。
新しいImageを/bootに入れてみたところ、症状が変わりました。

# awall activate
Warning: Extension CT revision 0 not supported, missing kernel module?
Warning: Extension CT revision 0 not supported, missing kernel module?
Warning: Extension CT revision 0 not supported, missing kernel module?
ip6tables-restore: line 66 failed
/usr/share/lua/5.4/awall/iptables.lua:92: assertion failed!
stack traceback:
/usr/share/lua/5.4/awall/uerror.lua:25: in function
[C]: in function 'assert'
/usr/share/lua/5.4/awall/iptables.lua:92: in method 'restore'
/usr/share/lua/5.4/awall/iptables.lua:98: in method 'activate'
/usr/share/lua/5.4/awall/init.lua:134: in upvalue 'f'
/usr/share/lua/5.4/awall/uerror.lua:20: in function
[C]: in function 'xpcall'
/usr/share/lua/5.4/awall/uerror.lua:19: in function 'call'
/usr/sbin/awall:416: in upvalue 'f'
/usr/share/lua/5.4/awall/uerror.lua:20: in function
[C]: in function 'xpcall'
/usr/share/lua/5.4/awall/uerror.lua:19: in function 'call'
/usr/sbin/awall:163: in main chunk
[C]: in ?

何かわかりますでしょうか。

あと、ip6table-saveに*rawが追加されました。

# ip6tables-save
# Generated by ip6tables-save v1.8.8 on Tue Aug 9 17:47:24 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed on Tue Aug 9 17:47:24 2022
# Generated by ip6tables-save v1.8.8 on Tue Aug 9 17:47:24 2022
*raw
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [1:48]
COMMIT
# Completed on Tue Aug 9 17:47:24 2022
# Generated by ip6tables-save v1.8.8 on Tue Aug 9 17:47:24 2022
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:48]
COMMIT
# Completed on Tue Aug 9 17:47:24 2022

溝渕です。

"NETFILTER_XT_TARGET_CT"をを有効にしてみてください。

-> Networking support
  -> Networking options
    -> Network packet filtering framework (Netfilter)
      -> Core Netfilter Configuration
         < >   "CT" target support  <-ここにチェック

もし上記で解決できない場合は、以下にあるコンフィギュレーションを一通り有効にしてみてください。

-> Networking support
  -> Networking options
    -> Network packet filtering framework (Netfilter)

溝渕様

ご教授ありがとうございました。
とりあえず落ちなくなりました。

"NETFILTER_XT_TARGET_CT"だけでは足りないようで、
下記も有効にしました。(不要なのもあると思います)
"CONFIG_NF_CONNTRACK_FTP"
"CONFIG_NETFILTER_XT_TARGET_HL"
"CONFIG_NETFILTER_XT_TARGET_NOTRACK"
"CONFIG_NETFILTER_XT_TARGET_TRACE"
"CONFIG_IP_NF_MANGLE"
"CONFIG_IP6_NF_MANGLE"
"CONFIG_IP6_NF_RAW"
"CONFIG_IP6_NF_SECURITY"

溝渕です。

> とりあえず落ちなくなりました。

動作したようで良かったです。雑なアドバイスですみませんでした...。