Skip to content

SSL Certificates

Piora integrates Let’s Encrypt through Traefik to provide free SSL/TLS certificates for all your domains automatically, with no manual configuration required.

  1. When you add a domain to an application, Traefik automatically requests a certificate from Let’s Encrypt
  2. The HTTP-01 challenge is used to verify domain ownership
  3. Once issued, the certificate is automatically applied to the domain
  4. Certificates are auto-renewed 30 days before expiration
ItemDescription
Certificate AuthorityLet’s Encrypt
Certificate TypeDV (Domain Validation)
Validity90 days
Auto-renewal30 days before expiration
CostFree

Piora automatically redirects all HTTP requests to HTTPS by default:

http://app.example.com → 301 → https://app.example.com

This ensures all traffic is transmitted over encrypted connections.

In the Piora dashboard, you can view the SSL certificate status for each domain:

StatusDescription
ValidCertificate is active and working
RequestingCurrently requesting from Let’s Encrypt
RenewingAuto-renewal in progress
FailedRequest or renewal failed

If an SSL certificate request fails, common causes include:

Let’s Encrypt requires HTTP-01 validation. Ensure DNS correctly points to your VPS:

Terminal window
# Check DNS records
dig +short yourdomain.com
# Should return your VPS IP

The Let’s Encrypt validation process requires access to port 80:

Terminal window
# Confirm port 80 is open
sudo ufw status
# Ensure 80/tcp shows ALLOW

Let’s Encrypt has rate limits:

  • Maximum 50 certificates per domain per week
  • Maximum 10 failed validations per IP per 3 hours

If you hit rate limits, wait before retrying.

While Let’s Encrypt free certificates are sufficient for most cases, you can use custom certificates if you have special needs (e.g., EV certificates or wildcard certificates).

  1. Prepare your certificate file (.crt) and private key file (.key)
  2. In the application’s SSL settings, select “Custom Certificate”
  3. Upload the certificate and private key

Traefik supports TLS 1.2 and TLS 1.3 by default:

TLS VersionStatus
TLS 1.0Not supported (insecure)
TLS 1.1Not supported (insecure)
TLS 1.2Supported
TLS 1.3Supported (recommended)

This ensures modern encryption standards and security.