GithubHelp home page GithubHelp logo

kraemii / eulabeia Goto Github PK

View Code? Open in Web Editor NEW

This project forked from greenbone/eulabeia

0.0 0.0 0.0 651 KB

License: GNU Affero General Public License v3.0

Go 51.20% Dockerfile 1.11% Shell 0.84% Makefile 1.74% CMake 2.22% C 42.13% C++ 0.04% NASL 0.72%

eulabeia's Introduction

Greenbone Logo

eulabeia

Eulabeia is a management layer with the task to control a multiple scanner on multiple machines environment easily and more predictable. Therefore it introduces a small set of commands. The orchestration is based on a single director entity and a MQTT broker is responsible for transmission of data and commands.

Eulabeia comes with four roles, two of which are direct eulabeia entities:

  • a director - manages multiple sensors and is the main communication partner of a client
  • sensor(s) - manages (or is) a scanner (currently openvas and in future also notus and more)
  • scanner(s) - a program to scan for vulnerabilities
  • client - is the using party of eulabeia (currently gvmd)

The communication between each entity is done via normalized messages over a MQTTv5.

For a detailed overview about eulabeia please checkout the documentation.

overview participants

Included projects

  • director, the director implementation
  • sensor, the sensor implementation for openvas-scanner
  • libeulabeia, the c library to use eulabeia

Requirements

The minimal requirements to use eulabeia are:

  • go
  • docker
  • make

If you want to build and run eulabeia without container you need:

  • a mqtt broker (e.g. mosquitto)
  • openvas-scanner (currently middleware branch)
  • redis

If you want to build libeulabeia you need:

Installation

If you just want to test eulabeia without installing it on your machine you should use the provided docker images by running make start-smoke-test .

Please follow the requirements instruction before installing eulabeia.

When all requirements are met you can build the sensor and director binaries by executing:

make build

This will create the binaries:

  • bin/eulabeia-director
  • bin/eulabeia-sensor
  • bin/example-client

Before you can use the director or sensor you need to configure it based on your MQTT address and redis socket.

The next step is to start the director (./bin/eulabeia-director) and sensor (./bin/eulabeia-sensor).

To validate the correctness of the setup you can execute the example client: ./bin/example-client.

For a more detailed explanation about the requirements please refer to requirements.md.

Usage

Since eulabeia is not indented to be used as a program but is a rather a service environment and meant to be used via a library or specified workflows by another service / program please refer to:

Support

For any question on the usage of Eulabeia please use the Greenbone Community Portal. If you found a problem with the software, please create an issue on GitHub. If you are a Greenbone customer you may alternatively or additionally forward your issue to the Greenbone Support Portal.

Maintainer

This project is maintained by Greenbone Networks GmbH

Contributing

Your contributions are highly appreciated. Please create a pull request on GitHub. Bigger changes need to be discussed with the development team via the issues section at GitHub first.

License

Copyright (C)2021 Greenbone Networks GmbH

Licensed under the GNU Affero General Public License v3.0 or later.

eulabeia's People

Contributors

arnostiefvater avatar bjoernricks avatar jjnicola avatar kraemii avatar nichtsfrei avatar y0urself avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.