
私は Debian 8 を使用しており、次のコマンドで fwsnort ルールを更新したいと考えています。
fwsnort --update-rules
ただし、'/etc/fwsnort/snort_rules/emerging-all.rules' ファイル内の 9.4 MB のルールをダウンロードした後、次のコマンドで iptables 内のすべてのルールを適用できません。
fwsnort --ipt-apply
そして次のエラーが発生します:
[+] fwsnort 11312 ルールを iptables ポリシーに結合しています...
iptables-restore v1.4.21: 無効なポート/サービス '[6789]' が指定されました
。 行 11131 でエラーが発生しました。
詳細については、「iptables-restore -h」または「iptables-restore --help」を試してください。
次のコマンドを使用して、emerging-all.rules からすべてのルールを iptables に直接復元しようとしても、
iptables-restore < /etc/fwsnort/snort_rules/emerging-all.rules
出力は次のようになります:
iptables-restore: line 53 failed
fwsnort の問題は何ですか?
答え1
理由はfwsnort の小さいが重大なバグ(現在のアップストリーム バージョン 1.6.6 でも)、ルールの 1 つ (少なくとも現在オンラインのルール) で構文エラーが発生します。これは、snort ルールで括弧内に 1 つのポートが指定されている場合にのみ発生します。fwsnort は、複数のポートが指定されている場合にのみ括弧を削除します。
このパッチはDebianパッケージに適用されました(現在は Debian Unstable のみ) この問題を修正します。
私もDebianの問題を修正するために使用したパッチをプルリクエストとして提出しました上流で発生した。上流は速やかに反応し、その修正を加えたfwsnort 1.6.7。