SSL Configuration

Configure SSL/TLS certificates for secure HTTPS connections to your PteroCA panel.

Overview

SSL (Secure Sockets Layer) / TLS (Transport Layer Security) encrypts communications between your users and the PteroCA panel. This is essential for production environments to:

  • Encrypt sensitive data (passwords, payment information)

  • Prevent man-in-the-middle attacks

  • Build user trust

  • Comply with security standards (PCI-DSS, etc.)

  • Enable modern browser features

Quick Start with Let's Encrypt

The easiest way to get SSL certificates is using Let's Encrypt with Certbot.

Install Certbot

sudo apt update
sudo apt install -y certbot python3-certbot-nginx

Obtain Certificate

Certbot will:

  1. Verify domain ownership

  2. Obtain SSL certificate

  3. Automatically configure NGINX

  4. Set up auto-renewal

For detailed web server setup, see Web Server Configuration.

Manual SSL Configuration

If you have an existing SSL certificate from another provider:

NGINX Configuration

Apache Configuration

SSL Certificate Providers

Let's Encrypt (Free)

Pros:

  • Completely free

  • Automated renewal

  • Trusted by all browsers

  • Easy setup with Certbot

Cons:

  • 90-day validity (but auto-renews)

  • Rate limits apply

Best for: Most installations, especially personal/small business

Commercial Providers

Popular commercial certificate authorities:

  • Sectigo (formerly Comodo)

  • DigiCert

  • GlobalSign

  • GoDaddy

Pros:

  • Longer validity (1-2 years)

  • Extended Validation (EV) options

  • Warranties included

  • Priority support

Cons:

  • Annual cost

  • Manual renewal process

Best for: Enterprise environments, companies needing EV certificates

Wildcard Certificates

Secure multiple subdomains with one certificate:

Covers:

  • example.com

  • panel.example.com

  • api.example.com

  • *.example.com

Certificate Auto-Renewal

Verify Certbot Renewal

Certbot sets up automatic renewal. Test it:

Manual Renewal

If needed, manually renew:

Renewal Hooks

Run commands after renewal:

SSL Best Practices

Use Strong Protocols

Configure Strong Ciphers

Enable HSTS

Enable OCSP Stapling

Testing SSL Configuration

SSL Labs Test

Test your SSL configuration:

  1. Visit https://www.ssllabs.com/ssltest/

  2. Enter your domain

  3. Wait for analysis

  4. Aim for A+ rating

Command Line Testing

Browser Testing

  1. Visit https://yourdomain.com

  2. Click padlock icon

  3. Verify:

    • Valid certificate

    • Correct domain

    • Trusted CA

    • No mixed content warnings

Troubleshooting

Certificate Not Trusted

Error: "NET::ERR_CERT_AUTHORITY_INVALID"

Solutions:

  1. Verify certificate chain is complete

  2. Check certificate paths in NGINX/Apache

  3. Renew certificate if expired

Mixed Content Warnings

Error: "This page contains insecure content"

Cause: HTTP resources loaded on HTTPS page

Solutions:

  1. Update site URL in PteroCA

    • Admin Panel → Settings → General

    • Ensure Site URL uses https://

  2. Check for HTTP resources

    • Open browser console (F12)

    • Look for HTTP:// requests

    • Update to HTTPS:// or relative URLs

  3. Enable HSTS

Certificate Renewal Fails

Error: Certbot renewal failed

Common Causes:

  1. Port 80/443 blocked

  2. Web server not running

  3. Domain DNS changed

    • Verify domain still points to server

    • Check with dig panel.example.com

  4. Rate limit reached

    • Let's Encrypt has rate limits

    • Wait before retrying

    • See https://letsencrypt.org/docs/rate-limits/

Redirect Loop

Symptom: Page keeps redirecting

Cause: Proxy configuration issue

Solutions:

  1. Check trusted proxies - See Trusted Proxies

  2. Verify X-Forwarded-Proto header

Security Headers

Add these headers for enhanced security:

Advanced Configuration

Certificate for Pterodactyl Panel

Both PteroCA and Pterodactyl should use SSL:

Wildcard Certificate

Follow prompts to add DNS TXT record for validation.

Certificate Backup

Backup your certificates regularly:

Monitoring

Certificate Expiration

Monitor certificate expiration:

Set Up Alerts

Use monitoring services:

  • SSL Labs Monitoring - Email alerts

  • Uptime Robot - Free monitoring

  • Nagios/Icinga - Self-hosted monitoring

Last updated