Server Deploymentο
This section describes how to deploy the Parsec Server on Linux.
Before you begin, take a look at the Application architecture section for an overview of software systems and interactions involved with the Parsec Server.
The steps and requirements described in this section may vary based on your specific needs. It is recommended to deploy and observe performance on a pilot project prior to using in production.
Note
Some setup and administrative operations must be performed with Parsec CLI on Linux. Please refer to the Install Parsec CLI on Linux section.
Deployment optionsο
Parsec offers the following deployment options:
Prerequisitesο
The Parsec Server depends on the following components:
A PostgreSQL database to store Parsec metadata.
An S3-like object storage (e.g. OpenStack Swift or Amazon S3) to store encrypted data.
An SMTP server to allow sending emails from the Parsec Server.
A TSL/SSL server certificate for
HTTPScommunication with Parsec client applications.
Optionally, the following components can be used to support additional features:
A Sentry Data Source Name (DSN) to support Parsec Server telemetry reports.
A CryptPad server to support document editing from Parsec client applications.
An OpenBAO server to support authentication with SSO.
Important
For security reasons, installation and configuration of these components are not covered in this guide. Please refer to their corresponding official documentation for instructions on how to do it.
This guide provides instructions for quickly settings up mock-ups or basic installs of those components. Keep in mind that these instructions are provided for convenience and should not be used in production.
Important
It is not recommended to deploy both Parsec Server and PostgreSQL database on a single system for production use, but it is a good option for testing purposes.
System Requirementsο
The following panel describes the minimum software and hardware requirements.
Minimum system requirements
Hardware: 1 vCPU/core with 1GB RAM
Database: PostgreSQL v16+, 20GB for metadata storage
S3 Object Storage: 2TB for encrypted data storage (around x100 metadata size)
Preparationο
TLS certificatesο
This section describe how to generate the required TLS certificates with a custom Certificate Authority (CA) created for this purpose.
Important
For a production environment, you should always use certificates issued from a trusted CA.
The setup-tls.sh script below will allow you to generate everything you need:
Generate the CA key & self-signed certificate (
custom-ca.{key,crt}).For
parsec-s3andparsec-serverservices:Generate the service key & Certificate Signing Request (CSR)
parsec-{service}.{key,csr}.Generate the certificate using the CSR and the CA.
For
parsec-serverservice:Change the key file group ID to
1234(the GID used by theparsec-servercontainer).Change the file mode to give read permission to the group
1234. This is required because Docker Compose does not allow to mount the file with the correct permissions in the container.
setup-tls.sh
1# shellcheck disable=SC2148
2function generate_cert_conf() {
3 local name=$1
4 local san=$2
5
6 echo "Generating $name.crt.conf"
7
8 cat << EOF > "$name".crt.conf
9[req]
10distinguished_name = req_dist_name
11req_extensions = req_ext
12prompt = no
13
14[req_dist_name]
15CN = $name
16
17[req_ext]
18subjectAltName = $san
19EOF
20}
21
22function generate_certificate_request() {
23 local name=$1
24 echo "Generate certificate request $name.csr"
25 openssl req -batch \
26 -new -sha512 -noenc -newkey rsa:4096 \
27 -config "$name".crt.conf \
28 -keyout "$name".key -out "$name".csr
29}
30
31function sign_crt_with_ca() {
32 local ca_crt=$1
33 local ca_key=$2
34 local name=$3
35
36 echo "Sign certificate request $name.crt"
37
38 openssl x509 -req -in "$name".csr \
39 -CA "$ca_crt" -CAkey "$ca_key" \
40 -extfile "$name".crt.conf \
41 -extensions req_ext \
42 -CAcreateserial -out "$name".crt \
43 -days 10 -sha512
44}
45
46if [ ! -f custom-ca.key ]; then
47 echo "Generate a mini Certificate Authority"
48 openssl req -batch \
49 -x509 -sha512 -nodes -days 10 -newkey rsa:4096 \
50 -subj "/CN=Mini Certificate Authority" \
51 -keyout custom-ca.key -out custom-ca.crt
52fi
53
54for service in parsec-{s3,server,proxy}; do
55 if [ ! -f "$service".crt.conf ]; then
56 generate_cert_conf "$service" DNS:"$service",DNS:localhost,IP:127.0.0.1
57 fi
58
59 # Generate key + csr if missing or if the key is older than the conf
60 if [ ! -f "$service".key ] || [ "$service".key -ot "$service".crt.conf ]; then
61 generate_certificate_request "$service"
62 fi
63
64 # Generate crt if missing or if it's older than the csr or the custom CA
65 if [ ! -f "$service".crt ] || [ "$service".crt -ot "$service".csr ] || [ "$service".crt -ot custom-ca.key ]; then
66 sign_crt_with_ca custom-ca.{crt,key} "$service"
67 fi
68done
69
70if [ "$(stat -c %g parsec-server.key)" -ne 1234 ]; then
71 echo "Changing group id of parsec-server.key to 1234"
72 sudo chown "$USER":1234 parsec-server.key
73fi
74
75if [ "$(stat -c %a parsec-server.key)" -ne 640 ]; then
76 echo "Changing permission of parsec-server.key to 640"
77 chmod 640 parsec-server.key
78fi
Set up the env filesο
The easiest way to configure the Parsec Sever is by using environment variables. These variables can be stored in a file and sourced before running the server.
In this guide, the environment variables are stored into multiple files in order to better describe how to configure each component.
The administration tokenο
To be able to perform admin tasks (like creating an organization) on the server, an administration token is required. Below you will find a simple script to generate a token:
gen-admin-token.sh
1# shellcheck disable=SC2148
2set -euo pipefail
3
4ENV_FILE=parsec-admin-token.env
5if [ ! -f $ENV_FILE ]; then
6 PARSEC_ADMINISTRATION_TOKEN=$(openssl rand -hex 32)
7 echo "PARSEC_ADMINISTRATION_TOKEN=$PARSEC_ADMINISTRATION_TOKEN" > $ENV_FILE
8
9 PARSEC_FAKE_ACCOUNT_PASSWORD_ALGORITHM_SEED=$(openssl rand -hex 32)
10 echo "PARSEC_FAKE_ACCOUNT_PASSWORD_ALGORITHM_SEED=$PARSEC_FAKE_ACCOUNT_PASSWORD_ALGORITHM_SEED" >> $ENV_FILE
11
12 echo "Parsec administration token generated in: $ENV_FILE"
13else
14 echo "Parsec administration token already exists in: $ENV_FILE"
15fi
The script will generate a random token (openssl rand -hex 32) and create the env file parsec-admin-token.env.
The token doesnβt have to be a valid hexadecimal value: any string with enough entropy can be used. For example, it could be replaced by a value from a password-generator.
The script above also generates FAKE_ACCOUNT_PASSWORD_ALGORITHM_SEED which is a secret used to make unpredictable
the password algorithm configuration returned for non-existing accounts.
Database env fileο
Create the file parsec-db.env and specify the the following content to configure the access to the PostgreSQL database:
parsec-db.env
1# The PostgreSQL database URL
2PARSEC_DB=postgresql://DB_USER:DB_PASS@parsec-postgres:5432/parsec
3
4# The minimum number of connections to the database
5PARSEC_DB_MIN_CONNECTIONS=5
6
7# The maximum number of connections to the database
8PARSEC_DB_MAX_CONNECTIONS=7
SMTP env fileο
Create the file parsec-smtp.env to configure the access to the SMTP server (mailhog in this case).
We need to set the connection information, the sender information, the default language the emails are sent in:
parsec-smtp.env
1# The SMTP host to use for sending email
2PARSEC_EMAIL_HOST=parsec-smtp
3
4# The SMTP server port
5PARSEC_EMAIL_PORT=1025
6
7# The SMTP server username
8PARSEC_EMAIL_HOST_USER=SMTP_USER
9
10# The SMTP password
11PARSEC_EMAIL_HOST_PASSWORD=SMTP_PASS
12
13# The SMTP sender's email address
14PARSEC_EMAIL_SENDER=parsec@test.xyz
15
16# Enable to use TLS (secure) connection to connect to the SMTP server
17# PARSEC_EMAIL_USE_SSL
18
19# Enable to use implicit TLS (secure) connection to connect to the SMTP server
20# PARSEC_EMAIL_USE_TLS
S3 env fileο
Create the file parsec-s3.env with the following content to set the URL for the S3-like service:
parsec-s3.env
1# The blockstore configuration
2#
3# The syntax should be one of the following:
4#
5# - s3:[<endpoint_url>]:<region>:<bucket>:<key>:<secret>
6# - swift:<auth_url>:<tenant>:<container>:<user>:<password>
7# - POSTGRESQL
8# - MOCKED
9#
10# For S3/Swift, <endpoint_url> & <auth_url> are considered as HTTPS by default
11# (e.g."s3:foo.com:[...]" -> https://foo.com).
12#
13# Note that escaping must be used in URLs in order to provide:
14# - a custom scheme (e.g. "s3:http\\://foo.com:[...]"")
15# - a port (e.g. "s3:parsec-s3\:9000:[...]")
16#
17# No extra parameter is needed for MOCKED (will use in-memory store) and
18# POSTGRESQL (will use the same database specified in PARSEC_DB).
19#
20# Multiple blockstore can be provided to form a RAID0/1/5 cluster.
21# In this case, each configuration must be provided with the following syntax:
22# - <raid_type>:<node>:<config>
23# where <raid_type> is RAID0/RAID1/RAID5, <node> is an integer and
24# `<config>` is one of the previous s3/swift/POSTGRESQL/MOCKED configuration.
25
26PARSEC_BLOCKSTORE=s3:parsec-s3\:9000:region1:parsec:S3_ROOT_USER:S3_ROOT_PASS
Parsec env fileο
Create the file parsec.env with the following content to configure the parsec-server service:
parsec.env
1# Host & Port to listen to.
2PARSEC_HOST=0.0.0.0
3PARSEC_PORT=6777
4
5# The SSL key file.
6PARSEC_SSL_KEYFILE=/run/secrets/parsec-pem-key
7
8# The SSL certificate file.
9PARSEC_SSL_CERTFILE=/run/secrets/parsec-pem-crt
10
11# A comma-separated list of ciphers suites to use
12# This is the list of suites recommended by ANSSI
13# See: https://cyber.gouv.fr/guide-tls
14PARSEC_SSL_CIPHERS=
15PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}TLS_AES_256_GCM_SHA384,
16PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}TLS_AES_128_GCM_SHA256,
17PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}TLS_AES_128_CCM_SHA256,
18PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}TLS_CHACHA20_POLY1305_SHA256,
19PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-ECDSA-AES256-GCM-SHA384,
20PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-ECDSA-AES128-GCM-SHA256,
21PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-ECDSA-AES256-CCM,
22PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-ECDSA-AES128-CCM,
23PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-ECDSA-CHACHA20-POLY1305,
24PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-RSA-AES256-GCM-SHA384,
25PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-RSA-AES128-GCM-SHA256,
26PARSEC_SSL_CIPHERS=${PARSEC_SSL_CIPHERS}ECDHE-RSA-CHACHA20-POLY1305
27
28# The log file (defaults to stderr)
29# PARSEC_LOG_FILE=
30
31# The log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
32# Only log messages of the specified level (or above) will be displayed
33# (e.g. WARNING will output WARNING + ERROR + CRITICAL messages)
34PARSEC_LOG_LEVEL=WARNING
35
36# The log message format (CONSOLE, JSON)
37PARSEC_LOG_FORMAT=CONSOLE
38
39# List of proxy addresses to trust
40PARSEC_PROXY_TRUSTED_ADDRESS=parsec-proxy
41
42# The URL to reach Parsec server
43PARSEC_SERVER_ADDR=parsec3://example.com
44
45# Keep SSE connection open by sending keepalive messages to client in seconds.
46# Set to 0 to disable keepalive messages.
47PARSEC_SSE_KEEPALIVE=30
48
49# Sentry environment for telemetry report.
50PARSEC_SENTRY_ENVIRONMENT=production
Parsec Server can be further configured with other environment variables.
To see the full list, run the following command and look for sections such as
[env var: VARIABLE] next to each configuration option. For example:
$ python -m parsec run --help
[...]
--administration-token TOKEN Secret token to access the Administration API
[env var: PARSEC_ADMINISTRATION_TOKEN; required]
Deploy with Dockerο
This section describes how to install Parsec Server directly on Linux.
This method is an alternative to the Direct installation on Linux server.
Additional Requirementsο
In addition to the base requirements, you will need:
Docker Compose (plugin)
The Docker Compose fileο
You can use the following Docker Compose file to deploy Parsec Server for testing:
parsec-server.docker.yaml
1services:
2 parsec-proxy:
3 depends_on:
4 - parsec-server
5 image: nginx:1.27-alpine
6 container_name: parsec-proxy
7 ports:
8 - 443:443
9 - 80:80
10 volumes:
11 - ./parsec-nginx.conf:/etc/nginx/nginx.conf:ro
12 - ./parsec-proxy.crt:/certs/proxy.crt:ro
13 - ./parsec-proxy.key:/certs/proxy.key:ro
14
15 parsec-postgres:
16 image: postgres:16.10-alpine
17 container_name: parsec-postgres
18 environment:
19 POSTGRES_USER: DB_USER
20 POSTGRES_PASSWORD: DB_PASS
21 POSTGRES_DB: parsec
22 ports:
23 # Expose PostgreSQL to localhost
24 - 127.0.0.1:5432:5432
25 volumes:
26 - parsec-db-data:/var/lib/postgresql/data
27
28 parsec-s3:
29 image: quay.io/minio/minio:RELEASE.2024-09-13T20-26-02Z
30 container_name: parsec-s3
31 command: server --console-address ":9090" --certs-dir /opts/certs /data
32 environment:
33 MINIO_ROOT_USER: S3_ROOT_USER
34 MINIO_ROOT_PASSWORD: S3_ROOT_PASS
35 ports:
36 # Admin console exposed to https://127.0.0.1:9090
37 - 127.0.0.1:9090:9090
38 # Expose S3 API to localhost
39 - 127.0.0.1:9000:9000
40 volumes:
41 - parsec-object-data:/data
42 - ./parsec-s3.key:/opts/certs/private.key:ro
43 - ./parsec-s3.crt:/opts/certs/public.crt:ro
44 - ./custom-ca.crt:/opts/certs/CAs/ca.test.crt:ro
45
46 parsec-smtp:
47 image: mailhog/mailhog:v1.0.1
48 container_name: parsec-smtp
49 ports:
50 - 1025:1025
51 # Web interface exposed to http://127.0.0.1:8025
52 - 127.0.0.1:8025:8025
53
54 parsec-server:
55 depends_on:
56 - parsec-smtp
57 - parsec-s3
58 - parsec-postgres
59 image: ghcr.io/scille/parsec-cloud/parsec-server:3.9.0
60 restart: on-failure
61 container_name: parsec-server
62 env_file:
63 - parsec.env
64 - parsec-s3.env
65 - parsec-db.env
66 - parsec-smtp.env
67 - parsec-admin-token.env
68 environment:
69 AWS_CA_BUNDLE: /run/secrets/mini-ca-crt
70 secrets:
71 - mini-ca-crt
72 - parsec-pem-crt
73 - parsec-pem-key
74 ports:
75 - 127.0.0.1:6777:6777
76
77volumes:
78 parsec-db-data: {}
79 parsec-object-data: {}
80
81secrets:
82 parsec-pem-crt:
83 file: ./parsec-server.crt
84 parsec-pem-key:
85 file: ./parsec-server.key
86 mini-ca-crt:
87 file: ./custom-ca.crt
It will setup 4 services:
Service name |
Description |
|---|---|
|
The PostgreSQL database |
|
The Object Storage service |
|
A mock SMTP server |
|
The Parsec Server |
|
A Nginx proxy server, used as an example to configure a reverse proxy. Learn more about using Parsec behind a reverse proxy |
Starting the servicesο
The docker containers can be started as follows:
docker compose -f parsec-server.docker.yaml up
Initial configurationο
On the first start, a one-time configuration is required for the database and s3 services.
Applying the database migrationο
(Optional) Check that the database is accessible:
$ set -a
$ source parsec-db.env
$ docker exec -t parsec-postgres psql 'postgresql://DB_USER:DB_PASS@0.0.0.0:5432/parsec' \
-c "\conninfo"
...
You are connected to database "parsec" as user "parsec" on host "0.0.0.0" at port "5432".
To bootstrap the database, apply the migrations:
docker compose -f parsec-server.docker.yaml run parsec-server migrate
Create the S3 Bucketο
Access the console at https://127.0.0.1:9090. You will need to use the credential specified in parsec-server.docker.yaml:
parsec-server.docker.yaml
33 MINIO_ROOT_USER: S3_ROOT_USER
34 MINIO_ROOT_PASSWORD: S3_ROOT_PASS
Go to https://127.0.0.1:9090/buckets/add-bucket to create a new bucket named parsec with the features object locking toggled on.
After that you will need to restart the parsec-server (that likely exited because it wasnβt able to access the S3 bucket):
docker compose -f parsec-server.docker.yaml restart parsec-server
Test the SMTP configuration & serverο
You can test mailhog with the following script:
ping-mailhog.sh
1# shellcheck disable=SC2148
2set -a
3source parsec-smtp.env
4
5curl \
6 --url "smtp://127.0.0.1:$PARSEC_EMAIL_PORT" \
7 --user "$PARSEC_EMAIL_HOST_USER@localhost:$PARSEC_EMAIL_HOST_PASSWORD" \
8 --mail-from "$PARSEC_EMAIL_SENDER" \
9 --mail-rcpt rcpt@test.com \
10 --upload-file <(date --rfc-3339=seconds)
You can then check if the email is present in the web interface at http://127.0.0.1:8025
Deploy with Linuxο
This section describes how to install Parsec Server directly on Linux.
This method is an alternative to the Container-Based deployment.
Additional Requirementsο
In addition to the base requirements, you will need:
Python v3.12 with
pipandvenvmodulesParsec Server (Python package), available at https://pypi.org/project/parsec-cloud/
It can be installed with
pip(see Installation step below).To perform an offline install, you will need to download the package and all its dependencies. You can do this with pip download.
Set upο
Configure the env files as described in Set up the env files.
Installationο
Set up a virtual env:
python -m venv venv
Activate the virtual env in your current shell:
source venv/bin/activate
Install Parsec Server:
python -m pip install 'parsec-cloud==3.9.0'
Apply database migrations:
$ set -a $ source parsec-db.env $ python -m parsec migrate
Start the serverο
Create a wrapper script
run-parsec-serverwith the following content:run-parsec-server
# Load the virtual env source venv/bin/activate # Load the env files into the environment table set -a source parsec-admin-token.env source parsec-db.env source parsec-smtp.env source parsec-s3.env source parsec.env set +a # Start Parsec Server python -m parsec run
Make the script executable
chmod +x run-parsec-server
Start Parsec Server with the wrapper:
./run-parsec-server
Start using Parsec Serverο
Create an Organizationο
Follow the steps below to create an Organization (replace ORG_NAME with the desired name for your organization)
Create the organization
$ set -a $ source parsec-admin-token.env $ export SSL_CAFILE=$PWD/custom-ca.crt $ parsec-cli organization create --addr parsec3://127.0.0.1:6777 [...] Bootstrap organization url: [...]
Save the Bootstrap organization url to create the first user (owner) of the Organization.
Start Parsec with the custom CA:
$ export SSL_CAFILE=$PWD/custom-ca.crt $ parsec
Bootstrap the Organization (create its first User)
Got to
Paste the Bootstrap organization url from before (should already be filled in the text field)
Follow the instructions to create the first user of the Organization.
Running behind a reverse proxyο
To run Parsec behind a reverse proxy you will need to add the option --proxy-trusted-address or set the environment variable PARSEC_PROXY_TRUSTED_ADDRESS to the address of the reverse proxy (e.g.: localhost).
If this option is not set, the gunicorn/uvicorn FORWARDED_ALLOW_IPS environment variable is used, defaulting to trusting only localhost if absent.
Tip
You can provide multiple addresses by separating them with a comma.
For example: --proxy-trusted-address '::1,10.0.0.42' will trust the addresses ::1 and 10.0.0.42
An example of a reverse proxy configuration for nginx can be found in the Docker Compose file:
parsec-server.docker.yaml
2 parsec-proxy:
3 depends_on:
4 - parsec-server
5 image: nginx:1.27-alpine
6 container_name: parsec-proxy
7 ports:
8 - 443:443
9 - 80:80
10 volumes:
11 - ./parsec-nginx.conf:/etc/nginx/nginx.conf:ro
12 - ./parsec-proxy.crt:/certs/proxy.crt:ro
13 - ./parsec-proxy.key:/certs/proxy.key:ro
Use the following Nginx configuration file to serve the domain example.com by listening on port 80 and 443,
and proxy the requests to the Parsec Server.
parsec-nginx.conf
1events {
2 worker_connections 128;
3}
4
5
6http {
7 server {
8 listen 80;
9 listen 443 ssl;
10 server_name example.com;
11 http2 on;
12 # Hide version number
13 server_tokens off;
14
15 # Only provide tlsv1.3
16 ssl_protocols TLSv1.3;
17 ssl_certificate /certs/proxy.crt;
18 ssl_certificate_key /certs/proxy.key;
19
20 location ~ ^/authenticated/.*/events$ {
21 proxy_pass https://parsec-server:6777;
22
23 # Specific configuration for SSE:
24 # Disable buffering, cache & chunking
25 proxy_buffering off;
26 proxy_cache off;
27 chunked_transfer_encoding off;
28 proxy_read_timeout 24h;
29
30 # Add X-Forwarded headers to the proxied request
31 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
32 proxy_set_header X-Forwarded-Proto $scheme;
33 proxy_set_header X-Forwarded-Host $host;
34 proxy_set_header X-Forwarded-Port $server_port;
35
36 # Remove the Forwarded header
37 proxy_set_header Forwarded "";
38
39 # Overwrite the Host header
40 proxy_set_header Host example.com;
41
42 }
43
44 location / {
45 proxy_pass https://parsec-server:6777;
46
47 # Add X-Forwarded headers to the proxied request
48 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
49 proxy_set_header X-Forwarded-Proto $scheme;
50 proxy_set_header X-Forwarded-Host $host;
51 proxy_set_header X-Forwarded-Port $server_port;
52
53 # Remove the Forwarded header
54 proxy_set_header Forwarded "";
55
56 # Overwrite the Host header
57 proxy_set_header Host example.com;
58 }
59 }
60}
The important takeaways are:
Set the
X-Forwarded-For,X-Forwarded-Proto,X-Forwarded-HostandX-Forwarded-Portheaders.Currently, Parsec only uses the
X-Forwarded-ForandX-Forwarded-Protoheaders, but it is better to set all of them to avoid any issue.
Remove the
Forwardedheader.The
Forwardedheader (RFC-7239) is not used by Parsec, but it may be in the future.
Set the header
hostto the accessible address. Here we force the value to beexample.com, but you can set it to$hostlike forX-Forwarded-Host.
TLS Recommendationο
We recommend that connections to the service are made using a TLS layer. If you are using a reverse proxy refer to itβs documentation on how to configure TLS:
Or if you do not use a reverse proxy, see how to configure TLS on the server.
TLS Server configurationο
We recommend that when user directly connects to the server (i.e. without using a reverse proxy) to configure the TLS settings on the server.
We provide 3 options to configure the TLS connection:
--ssl-keyfile(PARSEC_SSL_KEYFILE): The TLS key file--ssl-certfile(PARSEC_SSL_CERTFILE): The TLS certificate file--ssl-ciphers(PARSEC_SSL_CIPHERS): A list of ciphers that can be used when the client & server negotiate which algorithm to use when doing the TLS handcheckNote
You are not required to provide the ciphers list as we use a default list that was recommended by the French Cybersecurity Agency (ANSSI) in Recommandations de sΓ©curitΓ© relatives Γ TLS
If you followed the installation described in Deploy with Docker, you should only have to replace the file s
parsec-server.crt and parsec-server.key that where generated on section TLS certificates.
The env variables PARSEC_SSL_KEYFILE and PARSEC_SSL_CERTFILE are already configured in parsec.env (see Parsec env file).