Free SSL with Let’s Encrypt: Step by Step

Website security is no longer optional. If your website still runs on HTTP instead of HTTPS, browsers will warn visitors that your site is “Not Secure.”
The good news is that you do not need to pay for expensive SSL certificates anymore. Thanks to Let’s Encrypt, you can install free SSL certificates on your website in minutes.
In this guide, you will learn how to install and configure free SSL using Let’s Encrypt step by step.
What Is Let’s Encrypt?
Let’s Encrypt is a free certificate authority that provides SSL certificates for websites.
It allows website owners to:
- Enable HTTPS
- Encrypt visitor data
- Improve SEO rankings
- Build trust with visitors
Why SSL Is Important
Benefits include:
Security
Encrypts data between browser and server.
SEO Boost
Google favors HTTPS websites.
Browser Trust
Avoids “Not Secure” warnings.
Compliance
Required for modern web standards.
Prerequisites
Before installing SSL:
You need:
- Linux server
- Domain pointed to server
- Apache or Nginx installed
- Root/sudo access
Step 1: Update Server Packages
Run:
sudo apt update
sudo apt upgrade -y
Step 2: Install Certbot
For Ubuntu/Debian:
sudo apt install certbot python3-certbot-nginx -y
For Apache:
sudo apt install certbot python3-certbot-apache -y
Step 3: Verify Domain DNS
Ensure your domain points correctly:
ping yourdomain.com
It should return your server IP.
Step 4: Generate SSL Certificate
For Nginx:
sudo certbot --nginx
For Apache:
sudo certbot --apache
Step 5: Enter Email Address
Certbot will ask for:
- Terms agreement
Accept prompts.
Step 6: Select Domain
Choose your domain:
example.com
www.example.com
Step 7: Force HTTPS Redirect
Choose:
Redirect HTTP to HTTPS
Recommended for SEO/security.
Step 8: Verify Installation
Visit:
https://yourdomain.com
You should see:
- Secure padlock icon
Step 9: Test SSL Status
Run:
sudo certbot certificates
Step 10: Test Auto Renewal
Let’s Encrypt certificates expire every 90 days.
Run test renewal:
sudo certbot renew --dry-run
Common Errors and Fixes
Domain Not Pointed Properly
Fix DNS first.
Port 80 Blocked
Allow firewall:
sudo ufw allow 80
sudo ufw allow 443
Certbot Fails
Restart web server:
sudo systemctl restart nginx
Advanced Security Tips
Enable HSTS
Improves HTTPS security.
Use Strong SSL Settings
Disable old TLS versions.
Benefits of Free SSL
- Zero cost
- Auto-renewal
- Trusted by browsers
- Easy setup
FAQs
Is Let’s Encrypt really free?
Yes.
Is it safe?
Yes, widely trusted.
Does it renew automatically?
Yes.
Final Thoughts
Let’s Encrypt has made website security accessible to everyone. Whether you run a personal blog, business site, or eCommerce store, free SSL is a must-have.
Installing Let’s Encrypt takes only a few minutes and immediately improves trust, SEO, and security.
