• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

ospd/H03-May-2022-6,2444,541

tests/H03-May-2022-3,8152,714

CHANGELOG.mdH A D12-Oct-202114.7 KiB241190

COPYINGH A D12-Oct-202133.2 KiB662544

PKG-INFOH A D12-Oct-20215.7 KiB144102

README.mdH A D12-Oct-20214.5 KiB11676

poetry.lockH A D12-Oct-202155.1 KiB893815

poetry.tomlH A D12-Oct-202132 32

pyproject.tomlH A D12-Oct-20212 KiB8072

setup.pyH A D03-May-20225.5 KiB3830

README.md

1![Greenbone Logo](https://www.greenbone.net/wp-content/uploads/gb_logo_resilience_horizontal.png)
2
3# ospd <!-- omit in toc -->
4
5[![GitHub releases](https://img.shields.io/github/release/greenbone/ospd.svg)](https://github.com/greenbone/ospd/releases)
6[![PyPI](https://img.shields.io/pypi/v/ospd.svg)](https://pypi.org/project/ospd/)
7[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/greenbone/ospd/badges/quality-score.png?b=ospd-21.04)](https://scrutinizer-ci.com/g/greenbone/ospd/?branch=ospd-21.04)
8[![code test coverage](https://codecov.io/gh/greenbone/ospd/branch/ospd-21.04/graphs/badge.svg)](https://codecov.io/gh/greenbone/ospd)
9[![CircleCI](https://circleci.com/gh/greenbone/ospd/tree/ospd-21.04.svg?style=svg)](https://circleci.com/gh/greenbone/ospd/tree/ospd-21.04)
10
11ospd is a base class for scanner wrappers which share the same communication
12protocol: OSP (Open Scanner Protocol). OSP creates a unified interface for
13different security scanners and makes their control flow and scan results
14consistently available under the central Greenbone Vulnerability Manager service.
15
16OSP is similar in many ways to GMP (Greenbone Management Protocol): XML-based,
17stateless and non-permanent connection.
18
19The design supports wrapping arbitrary scanners with same protocol OSP,
20sharing the core daemon options while adding scanner specific parameters and
21options.
22
23## Table of Contents
24
25- [Table of Contents](#table-of-contents)
26- [Releases](#releases)
27- [Installation](#installation)
28  - [Requirements](#requirements)
29  - [Install using pip](#install-using-pip)
30- [How to write your own OSP Scanner Wrapper](#how-to-write-your-own-osp-scanner-wrapper)
31- [Support](#support)
32- [Maintainer](#maintainer)
33- [Contributing](#contributing)
34- [License](#license)
35
36## Releases
3738All [release files](https://github.com/greenbone/ospd/releases) are signed with
39the [Greenbone Community Feed integrity key](https://community.greenbone.net/t/gcf-managing-the-digital-signatures/101).
40This gpg key can be downloaded at https://www.greenbone.net/GBCommunitySigningKey.asc
41and the fingerprint is `8AE4 BE42 9B60 A59B 311C  2E73 9823 FAA6 0ED1 E580`.
42
43## Installation
44
45### Requirements
46
47ospd requires Python >= 3.7 along with the following libraries:
48
49    - python3-paramiko
50
51    - python3-lxml
52
53    - python3-defusedxml
54
55### Install using pip
56
57You can install ospd from the Python Package Index using [pip](https://pip.pypa.io/):
58
59    python3 -m pip install ospd
60
61Alternatively download or clone this repository and install the latest development version:
62
63    python3 -m pip install .
64
65## How to write your own OSP Scanner Wrapper
66
67As a core you need to derive from the class OSPDaemon from ospd.py.
68See the documentation there for the single steps to establish the
69full wrapper.
70
71See the file [doc/INSTALL-ospd-scanner.md](doc/INSTALL-ospd-scanner.md) about how to register a OSP scanner at
72the Greenbone Vulnerability Manager which will automatically establish a full
73GUI integration for the Greenbone Security Assistant (GSA).
74
75There are some online resources about this topic:
76<https://docs.greenbone.net/GSM-Manual/gos-3.1/en/osp.html#how-to-write-your-own-osp-wrapper>
77
78## Support
79
80For any question on the usage of OSPD please use the [Greenbone Community Portal](https://community.greenbone.net/c/osp). If you found a problem with the software, please [create an issue](https://github.com/greenbone/ospd/issues) on GitHub.
81
82## Maintainer
83
84This project is maintained by [Greenbone Networks GmbH](https://www.greenbone.net/).
85
86## Contributing
87
88Your contributions are highly appreciated. Please [create a pull request](https://github.com/greenbone/ospd/pulls) on GitHub. For bigger changes, please discuss it first in the [issues](https://github.com/greenbone/ospd/issues).
89
90For development you should use [poetry](https://python-poetry.org)
91to keep you python packages separated in different environments. First install
92poetry via pip
93
94    python3 -m pip install --user poetry
95
96Afterwards run
97
98    poetry install
99
100in the checkout directory of ospd (the directory containing the
101`pyproject.toml` file) to install all dependencies including the packages only
102required for development.
103
104The ospd repository uses [autohooks](https://github.com/greenbone/autohooks)
105to apply linting and auto formatting via git hooks. Please ensure the git hooks
106are active.
107
108    poetry install
109    poetry run autohooks activate --force
110
111## License
112
113Copyright (C) 2009-2020 [Greenbone Networks GmbH](https://www.greenbone.net/)
114
115Licensed under the [GNU Affero General Public License v3.0 or later](COPYING).
116