ConfigureTool
This page describes the Duplicati ConfigureTool for managing HTTPS certificates.
The ConfigureTool is a command-line utility for managing HTTPS certificates and other configuration settings for Duplicati. It provides a convenient way to generate, renew, and manage SSL certificates for secure web UI access.
The ConfigureTool binary is called Duplicati.CommandLine.ConfigureTool.exe on Windows and duplicati-configure on Linux and macOS.
The configure tool was added in Canary 2.2.0.106
Overview
Duplicati can automatically generate HTTPS certificates for secure web UI access. Since Duplicati uses localhost serving by default, there is no external Certificate Authority (CA) to request certificates from. Instead, Duplicati generates its own local CA and uses it to sign server certificates. This approach allows automatic certificate renewal without requiring manual intervention every 90 days.
Security Notice: The CA private key is stored in the Duplicati database. If someone gains access to the database, they could use the CA to sign certificates for other domains, potentially enabling man-in-the-middle attacks. Enable database encryption for maximum security.
HTTPS Command
The https subcommand manages HTTPS certificates. It supports the following operations:
Generating Certificates
To generate a new CA and server certificate:
duplicati-configure https generateThis command will:
Generate a new local Certificate Authority (CA)
Create a server certificate signed by the CA
Install the CA certificate in the system trust store
Store the certificates in the Duplicati database
Options
--hostnames
Comma-separated list of hostnames to include in the certificate (defaults to auto-detected hostnames)
--no-trust
Skip installing the CA certificate in the system trust store
--auto-create-database
Create the database if it does not exist
--data-folder
Path to the Duplicati data folder (defaults to standard location)
--settings-encryption-key
Settings encryption key for the database (if settings are encrypted)
--store
(Windows only) Certificate store location: local or user. Defaults to local if running as admin, otherwise user
--cert-dir
(Linux only) Custom certificate directory for installing CA certificate
--keychain
(macOS only) Custom keychain path for installing CA certificate
Examples
Generate certificates without installing to system trust store (useful for Flatpak/Snap browsers):
Generate certificates with specific hostnames:
Renewing Certificates
Server certificates are valid for 90 days and will be renewed automatically. To manually renew the server certificate using the existing CA:
Options
--data-folder
Path to the Duplicati data folder
--settings-encryption-key
Settings encryption key for the database
Regenerating the CA
If you suspect your CA has been compromised or want to start fresh, regenerate the CA and server certificate:
This will:
Remove the old CA from the trust store
Generate a new CA and server certificate
Install the new CA in the trust store
Store the new certificates in the database
Regenerating the CA will invalidate any previously trusted certificates.
Options
--hostnames
Comma-separated list of hostnames to include
--no-trust
Skip installing the CA certificate in the system trust store
--data-folder
Path to the Duplicati data folder
--settings-encryption-key
Settings encryption key for the database
--store
(Windows only) Certificate store location
--cert-dir
(Linux only) Custom certificate directory
--keychain
(macOS only) Custom keychain path
Removing Certificates
To remove the CA from the trust store and delete all certificate data from the database:
This is useful when:
You no longer need HTTPS
You suspect the CA has been compromised
You want to clean up before uninstalling Duplicati
Options
--data-folder
Path to the Duplicati data folder
--settings-encryption-key
Settings encryption key for the database
--store
(Windows only) Certificate store location
--cert-dir
(Linux only) Custom certificate directory
--keychain
(macOS only) Custom keychain path
Displaying Certificate Status
To view the current certificate status:
This displays:
CA certificate details (subject, issuer, validity dates, trust store status)
Server certificate details (subject, issuer, validity dates, DNS names, IP addresses)
Database encryption status
Certificate expiration status
Options
--data-folder
Path to the Duplicati data folder
--settings-encryption-key
Settings encryption key for the database
--store
(Windows only) Certificate store location
--cert-dir
(Linux only) Custom certificate directory
--keychain
(macOS only) Custom keychain path
Exporting Certificates
Export CA Certificate
To export the CA certificate (public key only) for manual import into browsers:
This creates duplicati-ca.crt in the current directory. To specify a custom path:
Export Server Certificate
To export the server certificate (public key only):
This creates duplicati-server.crt in the current directory. To specify a custom path:
Browser Trust Configuration
Chrome and Firefox on Linux
Chrome and Firefox on Linux maintain their own certificate stores and may not automatically trust the system CA. This is especially true for sandboxed installations (Snap, Flatpak).
Importing to Firefox
Export the CA certificate:
duplicati-configure https export-caOpen Firefox and go to Settings → Privacy & Security
Scroll to Certificates and click View Certificates
Select the Authorities tab
Click Import and select the exported
duplicati-ca.crtfileCheck "Trust this CA to identify websites" and click OK
Importing to Chrome
Export the CA certificate:
duplicati-configure https export-caOpen Chrome and go to Settings → Privacy and security → Security
Click Manage certificates
Select the Authorities tab
Click Import and select the exported
duplicati-ca.crtfileCheck "Trust this certificate for identifying websites" and click OK
For Flatpak or Snap installations, browsers run in a sandbox that may restrict file access. If you encounter "error reading file" during import, copy the certificate to /tmp/ before importing.
Security Model
Local-Only CA
The CA is generated locally on your machine and is not shared with any external service
The CA certificate is installed only in your system's local trust store
Other machines do not trust this CA unless explicitly configured to do so
The CA should never be exported or shared with other systems
CA Constraints
The CA certificate has pathLenConstraint=0 in its Basic Constraints extension, which means:
The CA can sign end-entity (server) certificates
The CA cannot sign subordinate/intermediate CA certificates
This limits the scope of trust to only certificates directly signed by this CA
Certificate Validity Periods
CA Certificate: Valid for approximately 10 years
Server Certificate: Valid for 90 days (browser requirement)
Auto-renewal: Server certificates are automatically renewed 30 days before expiration
CA Key Storage Security
The CA private key is protected with multiple layers:
Encryption: AES-256 encryption is applied to the key
Password Separation: The encryption password is stored separately from the encrypted key
Database Encryption: If database field encryption is enabled, an additional encryption layer is applied
Database Encryption Recommendation
For maximum security, enable database field encryption, default enabled since Canary 2.2.0.105.
If database encryption is not enabled, a warning notification is emitted on startup, explaining that the CA private key is readable from the database.
Revocation and Compromise Response
If you suspect your CA private key has been compromised:
Immediate Action: Remove the certificates using
duplicati-configure https removeRegenerate: Create a new CA with
duplicati-configure https regenerate-caReview: Check recent server logs and backup history for unauthorized access
Monitor: Set up alerts for unexpected certificate changes
Using Custom Certificates
If you prefer providing your own certificate instead of using the auto-generated CA, you can do so by setting the server-ssl-certificate and server-ssl-certificatepassword settings. When using custom certificates:
Auto-renewal will not be activated
No CA will be generated
You are responsible for certificate renewal
See the Server documentation for details on configuring custom SSL certificates.
Exit Codes
The ConfigureTool returns the following exit codes:
0
Success
1
General error (certificate generation failed, export error, etc.)
Error messages are printed to the console with details about what went wrong.
Last updated
Was this helpful?

