← Back to all services
Web Servers

Caddy Server Default Port & Auto HTTPS

caddy systemctl: caddy

Modern web server with automatic HTTPS. Written in Go, simple Caddyfile config, built-in Let's Encrypt.

🔌 Default Ports

80
tcp
HTTP (auto-redirect to HTTPS)
443
tcp
HTTPS
2019
tcp
Admin API

📦 Installation Command

apt install caddy

⚙️ Configuration Files

  • /etc/caddy/Caddyfile

📂 Default Directories

  • config: /etc/caddy
  • data: /var/www/html
  • logs: /var/log/caddy
  • ssl_certs: /var/lib/caddy/.local/share/caddy/certificates
  • state: /var/lib/caddy

🔐 Default Credentials

Username:N/A
Password:N/A
💡 Admin API on localhost:2019 has no auth by default. Restrict network access.

📌 Dependencies

libnss3

⚠️ Conflicts

nginx (port conflict)apache2 (port conflict) Port: nginxPort: apache2Port: lighttpd

✅ Works With

php-fpmany backend service (excellent reverse proxy)

🛡️ Security Notes

Restrict admin API to localhost, Caddy handles SSL automatically and securely, enable request limiting in Caddyfile

❓ Frequently Asked Questions

What port does Caddy use?
Caddy uses port 80 for HTTP and 443 for HTTPS, with automatic SSL certificate provisioning.
Does Caddy automatically get SSL certificates?
Yes, Caddy automatically obtains and renews SSL certificates from Let's Encrypt.
Where is Caddy config file?
Caddy uses Caddyfile, typically at /etc/caddy/Caddyfile.