Loading ips.rules: FATAL: ips.rules:3 undefined variable name: RULE_PATH. Fatal Error, Quitting..,Snort導入規則集后無法啟動,官網教程Ubuntu安裝Snort執行snort -c /usr/local/etc/snort/snort.lua出現問題


能夠解決要感謝一位擁有7年碼齡的程序員,他目前從事IPS二次開發工作。

這個問題在百度上幾乎找不到答案,解決方法見:https://www.reddit.com/r/snort/comments/jnu1s5/probles_while_running_snort_c/

可能因為某些原因(牆)鏈接無法打開,那么這里有這篇帖子的完整截圖

為了更人性化,我將它翻譯過來:

一位熱心網友marcseid遇到了這個問題,在導入規則前、后分別檢查配置文件,得出以下處理結果:

編輯snort.lua找到

{ when = { proto = 'tcp', ports = '2123 2152 3386' }, use = { type = 'gtp' } },

它在這里:

你可以在配置文件里搜索gtp方便查找它

然后將它修改為

 { when = { proto = 'tcp', ports = '2123 2152 3386' }, use = { type = 'gtp_inspect' } },

再找到

ips =

它在這里:

在 ips = { 的后面,rules = [[ 的前面;添加一行

variables = default_variables,

再修改snort_defaults.lua

---------------------------------------------------------------------------
-- default ftp server
---------------------------------------------------------------------------

前面添加:

---------------------------------------------------------------------------
-- default variables
---------------------------------------------------------------------------

default_variables = {
    nets = {
        HOME_NET = HOME_NET,
        EXTERNAL_NET = EXTERNAL_NET,
        DNS_SERVERS = DNS_SERVERS,
        FTP_SERVERS = FTP_SERVERS,
        HTTP_SERVERS = HTTP_SERVERS,
        SIP_SERVERS = SIP_SERVERS,
        SMTP_SERVERS = SMTP_SERVERS,
        SQL_SERVERS = SQL_SERVERS,
        SSH_SERVERS = SSH_SERVERS,
        TELNET_SERVERS = TELNET_SERVERS,
    },
    paths = {
        RULE_PATH = RULE_PATH,
        BUILTIN_RULE_PATH = BUILTIN_RULE_PATH,
        PLUGIN_RULE_PATH = PLUGIN_RULE_PATH,
        WHITE_LIST_PATH = WHITE_LIST_PATH,
        BLACK_LIST_PATH = BLACK_LIST_PATH,
    },
    ports = {
        FTP_PORTS = FTP_PORTS,
        HTTP_PORTS = HTTP_PORTS,
        MAIL_PORTS = MAIL_PORTS,
        ORACLE_PORTS = ORACLE_PORTS,
        SIP_PORTS = SIP_PORTS,
        SSH_PORTS = SSH_PORTS,
        FILE_DATA_PORTS = FILE_DATA_PORTS,
    }
}

完成。

先說說為什么原作者是在反復檢查導入規則前、后的配置文件得出結論的吧,因為剛才添加和修改的這些,在導入前都是存在且正常的,導入之后才發生了改變,並產生異常。

(除了“variables = default_variables,因為配置文件語法的原因需要添加逗號)

 

我也這樣檢查過配置文件,但由於不仔細也看不太懂導致沒及時發現這個問題;其次善用google、多閱讀英文文章(畢竟翻譯軟件有些出入);某些技術文章國內很匱乏。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM