
3 min. read
Passbolt Clears Three Security and Compliance Audits
This blog breaks down key findings from three independent assessments, reinforcing our commitment to strong security and compliance.

When managing passwords, secrets and other sensitive data, security should always be a top priority. One of the most important steps in securing your passbolt instance is enabling SSL/TLS encryption. This ensures that all communication between users and the server remains private and protected from cyber threats.
If your passbolt instance runs without SSL, users may see browser security warnings, and sensitive data could be intercepted by attackers. Whether you are setting up a self-signed certificate for testing or configuring a certificate from a Certificate Authority (CA) for production, this guide will help you generate, configure, and install SSL certificates for passbolt on Windows.
Before we get started, ensure you have the following:
IMPORTANT: This guide is considered a somewhat advanced method. Using this method assumes you are familiar with OpenSSL and have already generated other certificates. If you do not have experience working with MMC or OpenSSL, we recommend using the classic self-signed certificate configuration.
An SSL certificate (Secure Sockets Layer) is a digital certificate that encrypts the communication between a computer client utilized by end users and an internet server, ensuring data remains confidential. SSL certificates are essential for securing web applications like passbolt, preventing unauthorized access and data breaches.
For production environments, a certificate issued by a trusted CA is recommended. However, for internal or testing purposes, a self-signed certificate is a viable option.
Using an SSL certificate isn’t just about security—it improves user trust, compliance, and data integrity. Here’s how:
In this guide, we will show you how to create an SSL certificate on Windows. All you need to do is follow these steps:
Before proceeding, ensure you have administrative privileges.
Following the official Microsoft documentation, this information file is mandatory for any new certificate requests template. You can take a look at the dedicated table in their documentation with all the information. In our case, we will generate something like this.
[NewRequest]
Subject = "CN=passbolt.local, O=Passbolt SA, L=Esch-Sur-Alzette, ST=Esch-Sur-Alzette, C=LU"
KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
RequestType = PKCS10You can easily adapt this example following the official documentation, you can even add or remove some parameters depending on your needs.
When the information file has been written and saved, we will need to generate a private key and certificate request out of it.
certreq -new request.inf request.reqThis creates a file called request.req, which Windows will use to generate the SSL certificate.
As the Certificate Authority (CA), you will need to approve the certificate request and then export the certificate.
certreq -submit request.req certificate.cerWhen running the passbolt installation or reconfiguration command, the certificate needs to be in .pem format. We will convert the certificate to PEM using:
certutil -encode certificate.cer certificate.pemTo use the certificate in passbolt, you also need the private key:
Since we used the Microsoft Management Console to create the private key, you can export it in PFX format. We will convert it to PEM using OpenSSL in the following step.
openssl pkcs12 -in certificate.pfx -out certificate_and_key.pem -nodesAfter converting the certificate, the final step before transferring it is to extract both the private key and the certificate in .pem format.
openssl pkey -in certificate_and_key.pem -out private.pem
openssl x509 -in certificate_and_key.pem -out certificate.pemNow, you have both the certificate.pem and private.pem files, ready for use with passbolt!
Now that we have the SSL certificate and private key, we need to configure passbolt to use them.
If you are performing a fresh installation of passbolt, follow the standard installation process which will include SSL configuration as part of the setup. If passbolt is already installed, you can reconfigure it to use the newly installed SSL certificate and the private key associated, following our manual HTTPS documentation.
If you're generating your own SSL certificate rather than using one from a trusted Certificate Authority (CA), you may need to update your system's CA certificate to ensure proper trust and validation.
Here's how to identify, copy and update your CA certificate on your own server.
A CA certificate (Certificate Authority certificate) is a digital certificate issued by a trusted certificate authority. It is used to sign other certificates, thus establishing a chain of trust. When you create your own certificates for internal use, you often act as your own CA.
If you are acting as your own CA, you should have a CA certificate file, often named something like ca-cert.pem. If you do not have a separate CA certificate, you do not need to update the CA certificates on your Linux server.
If you have a CA certificate, copy it to the appropriate directory
sudo cp /path/to/ca-cert.pem /usr/local/share/ca-certificates/ca-cert.crtRun the following command to update the CA certificates
sudo update-ca-certificatesAfter completing the setup, verify that the SSL certificate is correctly installed.
Run the following command to check if the SSL certificate is properly applied to the server:
openssl s_client -connect yourdomain.com:443You should verify the SSL Certificate in your web browser to ensure that it is correctly installed and trusted.
If your certificate is not signed by a public CA, you will need to install the root CA certificate on all Windows machines that need to trust this SSL certificate.
That's it. After completing these steps, Windows will trust your passbolt SSL certificate. Users that are on Windows can now generate, import and trust their certificate for passbolt using this guide.
Setting up an SSL certificate on Windows for passbolt is a crucial step in securing your password management system. By generating a certificate, converting it to the required format, configuring Nginx, and ensuring trust on Windows machines, you can establish a fully encrypted passbolt instance.
For production environments, consider obtaining an SSL certificate from a trusted Certificate Authority (CA) to avoid trust issues.
Feel free to reach out in the community forum if you have any questions or need help with a specific request.

3 min. read
This blog breaks down key findings from three independent assessments, reinforcing our commitment to strong security and compliance.

6 min. read
Today marks an exciting milestone in Passbolt's journey. We're thrilled to announce our $8 million Series A funding round, led by Airbridge Equity Partners.