# Encryption and Certificates
By default a self-signed certificate is used. You may upload your own signed certificates or automatically provision them through Let's Encrypt. This configuration applies to both FTPS and HTTPS.
# Using Custom Certificates
Upload the certificate files to any desired location on the server. For example, on Linux, you may want to place them in the
Add, or modify if already present, the
tls_certificate_keysettings in the application configuration file to point to the certificate and private key files you uploaded:
tls_certificate: /etc/filemage/mycompany.cert tls_certificate_key: /etc/filemage/mycompany.pem
Save the changes and restart the application, your certificate is now active and used by the server.
Certificates and keys must be in PEM format. This format is often referred to as "Apache" or "Nginx" format when downloading files from certificate vendors.
# Let's Encrypt Automatic Certificates
FileMage Gateway can be configured to automatically request and renew TLS certificates from Let's Encrypt using the ACME protocol, using the
TLS-ALPN-01 challenge types.
In order for this to work you must:
- Create a DNS entry under a custom domain that you own which resolves to your FileMage Gateway virtual machine public IP address.
- Make port 80 or 443 publicly reachable to your FileMage Gateway virtual machine.
You may not exceeded the maximum number of certificates and certificate requests allowed by Let's Encrypt. (See Rate Limits)
# Enabling Automatic Certificates
Create a public DNS record that resolves to the servers public IP address.
Add, or modify if already present, the following settings in the application configuration file:
acme_use_auto_tls: true acme_hostname: <PUBLIC_DNS_NAME>
Let's Encrypt is now enabled and signed certificates will automatically be issued and renewed for free.
# Converting PFX Certificates
PFX certificates must be converted to PEM format to be used by the application.
When exporting your PFX certificate, make sure to include all intermediary certificates.
- Extract the private key and decrypt it.
openssl pkcs12 -in certificate.pfx -nocerts -out key-encrypted.pem openssl rsa -in key-encrypted.pem -out key.pem
- Extract the server and intermediary certificates.
openssl pkcs12 -in certificate.pfx -nokeys -out cert.pem