zoukankan      html  css  js  c++  java
  • 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、多阅读英文文章(毕竟翻译软件有些出入);某些技术文章国内很匮乏。

  • 相关阅读:
    2017ecjtu-summer training #4 CodeForces 731C
    HDU 1232 并查集
    2017ecjtu-summer training #3 POJ3264
    2017ecjtu-summer training #4 UESTC 30
    斑羚飞渡 贪心
    Codeforces Round #565 (Div. 3) D. Recover it!
    P3398 仓鼠找sugar lca
    P3146 [USACO16OPEN]248 dp
    P1955 [NOI2015]程序自动分析 离散化
    P2949 [USACO09OPEN]工作调度Work Scheduling 贪心
  • 原文地址:https://www.cnblogs.com/Deng-Xian-Sheng/p/14170498.html
Copyright © 2011-2022 走看看