AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1097669
Accepted
abu-ahmed al-khatiri
abu-ahmed al-khatiri
Asked: 2018-12-02 04:59:40 +0800 CST2018-12-02 04:59:40 +0800 CST 2018-12-02 04:59:40 +0800 CST

第一次如何为 Bionic 配置 Prewikka?

  • 772

我试图安装Prewikka一个基于仿生 Web 界面的安全信息和事件管理系统包。

我按照终端上的说明进行操作,当我开始设置Prewikka软件包时,会出现确认信息:

在此处输入图像描述

我从不提供为Prewikka数据库配置密码,我尝试在站点文档上查找,但我找不到任何问题。

我怎么知道我的Prewikka密码dbconfig-common?因为我在之前的说明中选择了dbconfig-common数据库作为默认值,见下文!

在此处输入图像描述

编辑#1

Prewikka 的开发者说,至于 Prelude,我们选择使用 dbconfig-common,给管理员密码,输入 DB 密码。在此文档上用于与 Prelude Manager 集成,因此我dbconfig-common在前面的说明中选择。当我阅读 Prelude Developer 的所有文档时,我忘记为我的 Prewikka! 创建一个数据库!哦,那是我的假。而这一刻,我得到了一些我不明白的错误!但是我在确认密码时仍然有点困惑,我必须在 Prewikka 的 MySQL 数据库或 Prelude 的 DBConfig-Common 之间输入密码?

编辑#2

此刻,我得到了一些我不理解并且对我来说真的很复杂的错误!当我打开 Prewikka 的默认端口时,出现错误:

在此处输入图像描述

在我的终端上出现:

$ sudo prewikka-httpd
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 59, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 489, in __init__
    dh.apply()
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 74, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 424, in apply
    self._apply()
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 91, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 415, in _apply
    [ update.apply() for update in self.list() ]
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 415, in <listcomp>
    [ update.apply() for update in self.list() ]
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 87, in inner
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 221, in apply
    self.run()
  File "/usr/lib/python3/dist-packages/prewikka/sql/install.py", line 72, in run
    """)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 211, in query
    self.db.query(q)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 547, in query
    return preludedb.SQL.query(self, sql)
RuntimeError: All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 277, in process
    response = self._process_static(webreq) or self._process_dynamic(webreq)
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 244, in _process_dynamic
    self._prewikka_init_if_needed()
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 134, in _prewikka_init_if_needed
    raise self._prewikka_initialized
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 122, in _prewikka_init_if_needed
    env.db = database.Database(env.config.database)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 873, in __new__
    return MySQLDatabase(config)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 61, in inner
    raise DatabaseError(message=text_type(e))
prewikka.database.DatabaseError: All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "/bin/prewikka-httpd", line 62, in application
    return wsgi.application(environ, start_response)
  File "/usr/lib/python3/dist-packages/prewikka/web/wsgi.py", line 161, in application
    core.process(WSGIRequest(environ, start_response))
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 280, in process
    response = err.respond()
  File "/usr/lib/python3/dist-packages/prewikka/error.py", line 106, in respond
    return self._html_respond()
  File "/usr/lib/python3/dist-packages/prewikka/error.py", line 90, in _html_respond
    from prewikka import baseview
  File "/usr/lib/python3/dist-packages/prewikka/baseview.py", line 27, in <module>
    from prewikka import error, history, hookmanager, resource, response, template, utils, view
  File "/usr/lib/python3/dist-packages/prewikka/history.py", line 102, in <module>
    crontab.schedule("search_history", N_("Search history deletion"), "0 * * * *", _regfunc=history._history_cron, enabled=True)
  File "/usr/lib/python3/dist-packages/prewikka/crontab.py", line 240, in schedule
    self._init_system_job(ext_type, name, schedule, enabled, _regfunc)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 91, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/crontab.py", line 152, in _init_system_job
    res = env.db.query("SELECT 1 FROM Prewikka_Crontab WHERE ext_type=%s AND userid IS NULL", ext_type)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 547, in query
    return preludedb.SQL.query(self, sql)
RuntimeError: Table 'prewikka.Prewikka_Crontab' doesn't exist
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 59, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 489, in __init__
    dh.apply()
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 74, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 424, in apply
    self._apply()
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 91, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 415, in _apply
    [ update.apply() for update in self.list() ]
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 415, in <listcomp>
    [ update.apply() for update in self.list() ]
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 87, in inner
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 221, in apply
    self.run()
  File "/usr/lib/python3/dist-packages/prewikka/sql/install.py", line 72, in run
    """)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 211, in query
    self.db.query(q)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 547, in query
    return preludedb.SQL.query(self, sql)
RuntimeError: All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 277, in process
    response = self._process_static(webreq) or self._process_dynamic(webreq)
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 244, in _process_dynamic
    self._prewikka_init_if_needed()
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 134, in _prewikka_init_if_needed
    raise self._prewikka_initialized
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 122, in _prewikka_init_if_needed
    env.db = database.Database(env.config.database)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 873, in __new__
    return MySQLDatabase(config)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 61, in inner
    raise DatabaseError(message=text_type(e))
prewikka.database.DatabaseError: All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "/bin/prewikka-httpd", line 62, in application
    return wsgi.application(environ, start_response)
  File "/usr/lib/python3/dist-packages/prewikka/web/wsgi.py", line 161, in application
    core.process(WSGIRequest(environ, start_response))
  File "/usr/lib/python3/dist-packages/prewikka/main.py", line 280, in process
    response = err.respond()
  File "/usr/lib/python3/dist-packages/prewikka/error.py", line 106, in respond
    return self._html_respond()
  File "/usr/lib/python3/dist-packages/prewikka/error.py", line 90, in _html_respond
    from prewikka import baseview
  File "/usr/lib/python3/dist-packages/prewikka/baseview.py", line 27, in <module>
    from prewikka import error, history, hookmanager, resource, response, template, utils, view
  File "/usr/lib/python3/dist-packages/prewikka/history.py", line 102, in <module>
    crontab.schedule("search_history", N_("Search history deletion"), "0 * * * *", _regfunc=history._history_cron, enabled=True)
  File "/usr/lib/python3/dist-packages/prewikka/crontab.py", line 240, in schedule
    self._init_system_job(ext_type, name, schedule, enabled, _regfunc)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 91, in inner
    ret = func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/prewikka/crontab.py", line 152, in _init_system_job
    res = env.db.query("SELECT 1 FROM Prewikka_Crontab WHERE ext_type=%s AND userid IS NULL", ext_type)
  File "/usr/lib/python3/dist-packages/prewikka/database.py", line 547, in query
    return preludedb.SQL.query(self, sql)
RuntimeError: Table 'prewikka.Prewikka_Crontab' doesn't exist

编辑#3

我试图从这个问题开始,他解决了以下问题:

  • 删除 Prewikka 数据库
  • 重新创建 Prewikka 数据库
  • 重试运行 Prewikka

但这对我不起作用,我还使用了上面提到的Howto 指令:https ://www.prelude-siem.org/projects/prelude/wiki/InstallingPackageUbuntu 。所以我错过了什么伙计们?

希望任何人都可以帮助我!,在此先感谢。

package-management apt 18.04
  • 1 1 个回答
  • 517 Views

1 个回答

  • Voted
  1. Best Answer
    abu-ahmed al-khatiri
    2019-01-11T03:05:50+08:002019-01-11T03:05:50+08:00

    首次安装 Prelude 和 Prewikka 包:

    1. 安装前我们需要一个数据库来存储警报,我选择在 MySQL 中创建数据库

      $ mysql -u root -p
      Enter password: 
      Welcome to the MySQL monitor.  Commands end with ; or \g.
      Your MySQL connection id is 8
      Server version: 8.0.13 MySQL Community Server - GPL    
      Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.    
      Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.    
      Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.    
      mysql>CREATE USER user1@localhost IDENTIFIED BY 'pass';
      Query OK, 1 row affected (0,11 sec)    
      mysql>CREATE DATABASE prelude;
      Query OK, 1 row affected (2,09 sec)    
      mysql> GRANT ALL PRIVILEGES ON prelude.* TO user1@localhost;
      Query OK, 0 rows affected (0,93 sec)    
      mysql>CREATE DATABASE prewikka;
      Query OK, 1 row affected (2,10 sec)    
      mysql> GRANT ALL PRIVILEGES ON prelude.* TO user1@localhost;
      Query OK, 0 rows affected (0,94 sec)    
      mysql>FLUSH PRIVILEGES;
      mysql>EXIT;  
      
    2. 需要 Prelude 和 Prewikka 安装

      $ sudo apt install prelude-utils prelude-manager prelude-lml libpreludedb*
      Reading package lists... Done
      Building dependency tree       
      Reading state information... Done
      The following additional packages will be installed:
        dbconfig-common libmaxminddb0 prelude-lml-rules
      Suggested packages:
        dbconfig-mysql | dbconfig-pgsql | dbconfig-sqlite | dbconfig-sqlite3 | dbconfig-no-thanks mmdb-bin
      Recommended packages:
        default-mysql-client | postgresql-client
      The following NEW packages will be installed:
        dbconfig-common libmaxminddb0 libpreludedb0 libpreludedb7 libpreludedbcpp2 libpreludedb-dev libpreludedb-doc libpreludedb7-mysql libpreludedb7-pgsql libpreludedb7-sqlite prelude-lml prelude-lml-rules
        prelude-manager
      0 upgraded, 13 newly installed, 0 to remove and 0 not upgraded.
      Need to get 968 kB of archives.
      After this operation, 3.881 kB of additional disk space will be used.
      Do you want to continue? [Y/n] y
      

      在dpkg配置时,我们将创建一个用户数据库、名称数据库和密码数据库,存储在dbconfig-common. 如果我们像我的情况一样忘记了它们,我们可以在/etc/prewikka/prewikka.conf文件中检查它们。

    3. 代理注册的配置。

      Manager Agent 和 LML Client Agent 需要在 Prelude 管理员上作为分析器日志运行命令包。

      • 首先要添加 Manager Agent 与以下内容:

        $ prelude-admin add prelude-manager --uid 0 --gid 0 #for user id and group id, you can check on `/etc/passwd` file.
        Generating 2048 bits RSA private key... This might take a very long time.
        [Increasing system activity will speed-up the process].
        Generation in progress... 
        Created profile 'prelude-manager' with analyzerID 'xxxxxxxxxxxxxxxx'.  
        
      • 注册 LML 代理的第二件事如下:

        $ prelude-admin register prelude-lml "idmef:w admin:r" 127.0.0.1 --uid 0 --gid 0
        Generating 2048 bits RSA private key... This might take a very long time.
        [Increasing system activity will speed-up the process].
        Generation in progress...   
        You now need to start "prelude-admin" registration-server on 127.0.0.1:
        example: "prelude-admin registration-server prelude-manager"  
        Enter the one-shot password provided on 127.0.0.1: 
        Confirm the one-shot password provided on 127.0.0.1:  
        Connecting to registration server (127.0.0.1:5553)... Authentication succeeded.
        Successful registration to 127.0.0.1:5553.  
        

    在 Manager 代理上运行:

    $ prelude-admin registration-server prelude-manager
    The "password" password will be requested by "prelude-admin register"
    in order to connect. Please remove the quotes before using it.  
    Generating 1024 bits Diffie-Hellman key for anonymous authentication...
    Waiting for peers install request on 0.0.0.0:5553...
    Waiting for peers install request on :::5553...      
    Connection from 127.0.0.1:45796...
    Registration request for analyzerID="xxxxxxxxxxxxxxxx" permission="idmef:w admin:r".
    Approve registration? [y/n]: y
    127.0.0.1:45796 successfully registered.
    

    证书验证后,不要/etc/prelude/default/client.conf忘记在文件、/etc/prelude/default/global.conf文件、/etc/prelude-manager/prelude-manager.conf文件和文件上配置服务器的监听/etc/prelude-lml/prelude-lml.conf器。然后我们可以启动 Prelude 的服务:

    $ sudo systemctl enable prelude-manager
    $ sudo systemctl start prelude-manager
    $ sudo systemctl enable prelude-lml
    $ sudo systemctl start prelude-lml
    

    最后在执行/usr/bin/prewikkapython脚本后,我们将得到监听服务器0.0.0.0:8000,我们可以输入浏览localhost:8000,如果没有出现输出错误,那么它将如下所示:

    在此处输入图像描述

    在此处输入图像描述

    来源:Prelude-WikiStart、Installing-from-SourcesCode、Installing-from-PackageUbuntu。

    • 0

相关问题

  • 如何从命令行仅安装安全更新?关于如何管理更新的一些提示

  • 如何从命令行判断机器是否需要重新启动?

  • 有没有办法重置所有包/源并从头开始?

  • 如何回滚到 PHP 5.2?

  • 包管理器之间有什么区别?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve