This guide explains how to request, install, and manage SSL certificates in Virtualmin to secure your website with HTTPS. Using Let’s Encrypt, you can easily obtain free SSL certificates without root access, ensuring a secure browsing experience for your visitors.
Prerequisites
- Virtualmin Access: You must have login credentials for the Virtualmin control panel.
- Domain Configured: The domain you want to secure must be set up in Virtualmin.
- Website Enabled: Ensure the website feature is active for your domain (usually enabled by default).
- DNS Configured: Your domain’s DNS must point to your server’s IP address (contact support if unsure).
Step-by-Step Guide
1. Log in to Virtualmin
Access the Virtualmin control panel with your credentials. Select the domain you want to manage from the dropdown menu in the top-left corner.
2. Access SSL Certificate Management
- Navigate to SSL Settings:
- In the sidebar, click
Server Configuration
, then selectManage SSL Certificate
.
- In the sidebar, click
- View Current SSL Status:
- The SSL management page will show any existing certificates or indicate if none are installed.
3. Request a Let’s Encrypt Certificate
- Go to Let’s Encrypt Tab:
- On the
Manage SSL Certificate
page, click theLet’s Encrypt
tab.
- On the
- Configure Certificate Details:
- Domain Names: The domain (e.g.,
yourdomain.com
) and optionallywww.yourdomain.com
will be pre-filled. Include any subdomains (e.g.,blog.yourdomain.com
) if needed. - Certificate Type: Choose
Web
(default for websites). - Months Before Expiry: Set to 2 or 3 months (Let’s Encrypt certificates are valid for 90 days and will auto-renew).
- Validation Method: Select
HTTP
(Let’s Encrypt will verify ownership by placing a file in your web directory).
- Domain Names: The domain (e.g.,
- Request Certificate:
- Click
Request Certificate
. Virtualmin will contact Let’s Encrypt to issue the certificate. - If successful, you’ll see a confirmation, and the certificate will be installed.
- Click
4. Enable SSL for Your Website
- Activate SSL:
- On the
Manage SSL Certificate
page, go to theCurrent Certificate
tab. - Ensure the new Let’s Encrypt certificate is selected for
Website
. - Click
Copy to Web
to apply the certificate to your website’s configuration.
- On the
- Force HTTPS (Optional):
- To redirect all HTTP traffic to HTTPS, go to
Server Configuration > Website Redirects
. - Create a redirect from
http://yourdomain.com
tohttps://yourdomain.com
with aPermanent (301)
type.
- To redirect all HTTP traffic to HTTPS, go to
5. Test the SSL Certificate
- Visit Your Website:
- Open a browser and go to
https://yourdomain.com
. - You should see a padlock icon in the browser’s address bar, indicating a secure connection.
- Open a browser and go to
- Check Certificate Details:
- Click the padlock icon and view the certificate to confirm it’s issued by Let’s Encrypt and covers your domain.
- Test Subdomains:
- If you included subdomains, test them (e.g.,
https://blog.yourdomain.com
).
- If you included subdomains, test them (e.g.,
6. Manage or Renew Certificates
- View Certificate Status:
- In
Manage SSL Certificate
, check the certificate’s expiry date.
- In
- Auto-Renewal:
- Let’s Encrypt certificates in Virtualmin are typically set to auto-renew before expiry. Verify this in the
Let’s Encrypt
tab.
- Let’s Encrypt certificates in Virtualmin are typically set to auto-renew before expiry. Verify this in the
- Manual Renewal:
- If needed, go to the
Let’s Encrypt
tab and clickRequest Certificate
again to renew manually.
- If needed, go to the
- Delete Certificate:
- If you need to remove a certificate, contact support, as this may require server-level changes.
Additional Tips
- SSL for Subdomains:
- Ensure subdomains are included in the certificate request or request separate certificates for each subdomain.
- Mixed Content Issues:
- After enabling HTTPS, check your website for mixed content warnings (e.g., HTTP resources on an HTTPS page). Update URLs in your website files to use
https://
.
- After enabling HTTPS, check your website for mixed content warnings (e.g., HTTP resources on an HTTPS page). Update URLs in your website files to use
- Backup Certificates:
- Download a copy of your certificate from the
Current Certificate
tab for safekeeping.
- Download a copy of your certificate from the
Common Troubleshooting
- Certificate Request Fails: Ensure your domain’s DNS points to your server and port 80 is accessible. Contact support if the issue persists.
- Website Not Secure: Verify the certificate is applied to the website in
Manage SSL Certificate
. Check for mixed content issues. - SSL Not Available: If you can’t access SSL settings, contact support to verify your account permissions.
For further assistance, contact our support team via the ShopWhizzy Helpdesk.