Installation on GNU/Linux¶
Installation on the following distributions is currently supported:
- Debian version 11 (“bullseye”) and 12 (“bookworm”).
Important
All commands in the instructions are run by a user with the “admin” role.
Overview¶
The installation consists of several steps.
-
Preliminary steps:
-
The installation of packages is carried out in accordance with architecture and includes the following components:
- Control node.
- Console Client (CLI).
- Scanning node (after installation it must be connected to the control node).
- Report generation node.
Preparing for installation¶
Add the paths to the standard directories with executable files to the $PATH variable in the $HOME/.profile file.
Install the curl package.
Add a repository¶
When adding a repository, enter your secret token to gain access.
When adding a repository, enter your secret token to gain access.
Install and configure S3 storage¶
Important
Each individual scan node must have its own S3 storage deployed. It is allowed to share one instance of the S3 storage with different scan nodes.
Add a user¶
Replace the values of the MINIO_ROOT_USER and MINIO_ROOT_PASSWORD variables with your custom ones.
Check the S3 storage status¶
Install and configure PostgreSQL¶
In the following steps, replace the values of the POSTGRESQL_PASSWORD variables with your custom ones.
Create a database and user for the scanner¶
Create a database and user for the server part¶
Upgrade PostgreSQL version¶
For PostgreSQL version 15 or lower, follow the steps from the PostgreSQL upgrade instruction.
Install the TimescaleDB extension¶
-
Install TimescaleDB. Instead of the “*” symbol, specify the required versions for the command below.
-
Run the PostgreSQL setup for TimescaleDB.
-
Restart PostgreSQL.
Install packages¶
For the dashboard¶
During installation, you will be prompted to configure the database connection address:
-
Enter the connection string in the following format:
- Replace the
POSTGRESQL_PASSWORDvalue with a custom one. - Replace the IP address, port, and username if they do not have a default value.
After completing these steps the dashboard should be accessible at http://localhost:8100.
The nginx web server configuration of the dashboard can be found in the /etc/nginx/conf.d/solidpoint-frontend.conf file.
For the console client¶
If multi-user mode is used, authenticate using the following command. Authentication is not required for single-user mode.
For the scanner¶
Note
It is possible to deploy more than one scanning node for a single control node. To do this, follow the steps in this section of the instructions for each machine designated as a scanning node.
During the installation process, you will be prompted to perform several configuration steps.
PostgreSQL connection string step¶
-
Enter the connection string in the format:
- Replace the
POSTGRESQL_PASSWORDvalue with your custom one. - Replace the IP address, port, and username if they do not have a default value.
S3 storage address step¶
- Specify the S3 storage address in the
ip:portformat (default: 127.0.0.1:9000). If the TLS protocol is used for connection, use thehttps://scheme before the address. - Specify the previously set custom value of the
MINIO_ROOT_USERvariable. - Specify the previously set custom value of the
MINIO_ROOT_PASSWORDvariable.
The listen address step¶
- Enter the address for listening to the connection (e.g.,
tcp://0.0.0.0:7075).
Interactsh server step¶
- Specify the domain of the personal configured interactsh server. Skip it to use the internal pre-configured interactsh server.
- Specify the authentication token of the personal interactsh server, if authentication is set up on it. Skip it if it is not configured or if an internal interactsh server is used.
Setting up the fuchsiactl configuration¶
The server address must match the one specified in the listen address step.
Check that the scanner was installed correctly¶
Connecting the scanning node to the control node¶
You can connect using any of the following methods.