Εισαγωγή
Προαπαιτούμενα
Βήμα πρώτο: Εγκαταστήστε το Certbot
Βήμα δεύτερο: Λήψη πιστοποιητικού SSL
Βήμα τρίτο: Ρύθμιση αρχείων πιστοποιητικού για χρήση με το Lighttpd
Βήμα τέταρτο: Διαμόρφωση Lighttpd
Βήμα πέμπτο: Επιβολή χρήσης SSL
Ανανέωση του Πιστοποιητικού SSL
Εισαγωγή
Το Let's Encrypt είναι μια Αρχή έκδοσης πιστοποιητικών (CA) που εκδίδει δωρεάν πιστοποιητικά SSL/TLS. Ο Lighttpd είναι ένας ελαφρύς διακομιστής ιστού που λειτουργεί με χαμηλούς πόρους. Τα πιστοποιητικά Let's Encrypt SSL μπορούν εύκολα να εγκατασταθούν σε έναν διακομιστή Lighttpd χρησιμοποιώντας το Certbot, ένα πρόγραμμα-πελάτη λογισμικού που αυτοματοποιεί το μεγαλύτερο μέρος της διαδικασίας απόκτησης των πιστοποιητικών.
Προαπαιτούμενα
Αυτό το σεμινάριο προϋποθέτει ότι έχετε ήδη δημιουργήσει μια παρουσία Vultr Cloud Compute με το Lighttpd εγκατεστημένο στο Ubuntu 16.04 , έχετε ένα όνομα τομέα που οδηγεί στον διακομιστή σας και έχετε συνδεθεί ως root.
Βήμα πρώτο: Εγκαταστήστε το Certbot
Το πρώτο βήμα είναι να εγκαταστήσετε το Certbot. Προσθέστε το αποθετήριο Certbot. Πατήστε Enterόταν σας ζητηθεί επιβεβαίωση.
add-apt-repository ppa:certbot/certbot
Εγκαταστήστε το Certbot.
apt-get update
apt-get install certbot
Βήμα δεύτερο: Λήψη πιστοποιητικού SSL
Μόλις εγκατασταθεί το Certbot, μπορείτε να αποκτήσετε ένα πιστοποιητικό SSL. Εκτελέστε την ακόλουθη εντολή, αντικαθιστώντας example.comμε το δικό σας όνομα τομέα:
certbot certonly --webroot -w /var/www/html -d example.com -d www.example.com
Συνεχίστε μέσω του διαδραστικού προγράμματος εγκατάστασης.
Βήμα τρίτο: Ρύθμιση αρχείων πιστοποιητικού για χρήση με το Lighttpd
Το Certbot θα τοποθετήσει τα ληφθέντα αρχεία πιστοποιητικού στο /etc/letsencrypt/live/example.com. Θα χρειαστεί να παραχωρήσετε στον χρήστη Lighttpd πρόσβαση σε αυτόν τον κατάλογο.
chown :www-data /etc/letsencrypt
chown :www-data /etc/letsencrypt/live
chmod g+x /etc/letsencrypt
chmod g+x /etc/letsencrypt/live
Το Lighttpd απαιτεί το πιστοποιητικό και το ιδιωτικό κλειδί να βρίσκονται σε ένα μόνο αρχείο. Θα χρειαστεί να συνδυάσετε τα δύο αρχεία. Εκτελέστε την ακόλουθη εντολή, αντικαθιστώντας example.comμε το δικό σας όνομα τομέα.
cat /etc/letsencrypt/live/example.com/privkey.pem /etc/letsencrypt/live/example.com/cert.pem > /etc/letsencrypt/live/example.com/merged.pem
Τα αρχεία privkey.pemκαι cert.pemθα συνδυαστούν και θα αποθηκευτούν ως merged.pem.
Μόλις τα αρχεία πιστοποιητικών είναι έτοιμα, μπορείτε να συνεχίσετε και να διαμορφώσετε το Lighttpd ώστε να χρησιμοποιεί το πιστοποιητικό SSL. Ανοίξτε το αρχείο διαμόρφωσης Lighttpd για επεξεργασία.
nano /etc/lighttpd/lighttpd.conf
Προσθέστε το ακόλουθο μπλοκ στο τέλος του αρχείου, αντικαθιστώντας το example.comμε το δικό σας όνομα τομέα,
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.ca-file = "/etc/letsencrypt/live/example.com/chain.pem"
ssl.pemfile = "/etc/letsencrypt/live/example.com/merged.pem"
}
Βήμα πέμπτο: Επιβολή χρήσης SSL
Για πρόσθετη ασφάλεια, μπορείτε να αναγκάσετε τον διακομιστή Lighttpd να δρομολογήσει όλα τα αιτήματα HTTP σε HTTPS. Ανοίξτε το lighttpd.confαρχείο για επεξεργασία.
nano /etc/lighttpd/lighttpd.conf
Προσθέστε το ακόλουθο μπλοκ στο τέλος του αρχείου,
$HTTP["scheme"] == "http" {
$HTTP["host"] =~ ".*" {
url.redirect = (".*" => "https://%0$0")
}
}
Θα χρειαστεί να επανεκκινήσετε τον διακομιστή Lighttpd για να τεθούν σε ισχύ οι αλλαγές.
systemctl restart lighttpd
Ανανέωση του Πιστοποιητικού SSL
Let's Encrypt εκδίδει πιστοποιητικά SSL με ισχύ 90 ημερών. Θα χρειαστεί να ανανεώσετε το πιστοποιητικό σας πριν λήξει για να αποφύγετε σφάλματα πιστοποιητικού. Μπορείτε να ανανεώσετε το πιστοποιητικό με το Certbot.
certbot renew
Θα χρειαστεί να συνδυάσετε το πιστοποιητικό και το ιδιωτικό κλειδί για το Lighttpd. Εκτελέστε την ακόλουθη εντολή, αντικαθιστώντας example.comμε το όνομα τομέα σας.
cat /etc/letsencrypt/live/example.com/privkey.pem /etc/letsencrypt/live/example.com/cert.pem > /etc/letsencrypt/live/example.com/merged.pem
Το πιστοποιητικό σας θα ανανεωθεί για άλλες 90 ημέρες.