Encrypt every connection with Let's Encrypt and understand what TLS actually does
| Port 80 — HTTP | Port 443 — HTTPS | |
|---|---|---|
| Security | Unencrypted | Encrypted (TLS/SSL) |
| Data | Readable by anyone intercepting | Private between browser & server |
| Browser | No padlock | Shows padlock icon |
| Required for | Testing only | Logins, payments, SEO, production |
Transport Layer Security is a cryptographic protocol that creates a secure tunnel between a browser and a server. It uses public-key cryptography to establish trust, then symmetric encryption to protect the data flowing through that tunnel. The padlock you see in your browser means TLS is active.
Let's Encrypt is a nonprofit certificate authority that provides free SSL/TLS certificates. Certbot is the official client that automates the entire process: proving you own the domain, downloading the certificate, configuring Apache, and setting up auto-renewal.
certbot is the certificate management toolpython3-certbot-apache is the plugin that configures Apache automatically-y automatically answers "yes" to promptsLet's Encrypt must verify you control the domain. It does this by connecting to your server via HTTP and looking for a specific token file. If it finds it, it issues the certificate. This is why your domain must already be reachable from the internet before you run Certbot.
yourname.duckdns.org with your actual DuckDNS domainVisit your site with https://:
sudo apache2ctl configtest should say "Syntax OK".sudo certbot certificates shows installed certs.