Sigurni Apache s Encrypt SSL certifikatom na CentOS 8
Osiguravanje vašeg web servera uvijek je jedan od ključnih faktora koje biste trebali uzeti u obzir prije nego što počnete raditi sa svojom web lokacijom. Sigurnosni certifikat je ključan za osiguranje prometa koji se šalje od web preglednika do web servera i na taj način će inspirisati korisnike da razmjenjuju podatke s vašom web lokacijom uz puno znanje da je poslani promet osiguran.
U većini slučajeva, sigurnosni certifikati se plaćaju i obnavljaju svake godine. Certifikat Let’s Encrypt je besplatan, otvoren i automatiziran certifikat koji možete koristiti za šifriranje vaše web stranice. Certifikat ističe nakon svakih 90 dana i automatski se obnavlja bez ikakvih troškova.
Preporučeno čitanje: Kako osigurati Nginx pomoću Let’s Encrypt na CentOS 8
U ovom članku ćemo vam pokazati kako možete instalirati Let's Encrypt Certificate sa Certbot za Apache web server i kasnije, konfigurirati certifikat da se automatski obnovi na CentOS 8.
Preduvjeti
Prije nego što počnete, uvjerite se da imate sljedeće:
1. Instanca CentOS 8 servera sa instaliranim i pokrenutim Apache HTTP web serverom. Možete potvrditi da je vaš apache web server pokrenut i da radi.
sudo dnf install httpd
sudo systemctl status httpd
2. Potpuno kvalificirani naziv domene (FQDN) koji upućuje na javnu IP adresu vašeg web servera na vašem dobavljaču DNS web hostinga. Za ovaj vodič koristit ćemo linuxtechwhiz.info
koji ukazuje na IP servera 34.67.63.136
.
Korak 1. Instalirajte Certbot u CentOS 8
Certbot je klijent koji automatizira instalaciju sigurnosnog certifikata. Dohvaća certifikat od Hajde da šifriramo autoritet i postavlja ga na vaš web server bez mnogo muke.
Certbot je potpuno besplatan i omogućit će vam da instalirate certifikat na interaktivan način generiranjem instrukcija na osnovu konfiguracije vašeg web servera.
Prije preuzimanja certbota, prvo instalirajte pakete koji su neophodni za konfiguraciju šifrirane veze.
Započet ćemo instalacijom EPEL spremišta koje pruža visokokvalitetne dodatne pakete za RHEL bazirane sisteme:
sudo dnf install epel-release
Zatim instalirajte mod_ssl i openssl pakete.
sudo dnf install mod_ssl openssl
Nakon što su sve zavisnosti instalirane, instalirajte Certbot i Apache modul za Certbot.
sudo dnf install certbot python3-certbot-apache
Komanda instalira Certbot, Apache modul za Certbot i druge zavisnosti.
Korak 2: Kreirajte Apache virtuelni host
Sljedeći korak će biti kreiranje virtualne host datoteke za našu domenu – linuxtechwhiz.info
. Počnite tako što ćete prvo kreirati korijen dokumenta u koji ćete smjestiti svoje HTML datoteke.
sudo mkdir /var/www/linuxtechwhiz.info.conf
Kreirajte probnu datoteku index.html
kao što je prikazano.
sudo echo “<h1>Welcome to Apache HTTP server</h1>” > /var/www/linuxtechwhiz.info/index.html
Zatim kreirajte virtuelni host fajl kao što je prikazano.
sudo vim /etc/httpd/conf.d/linuxtechwhiz.info
Dodajte konfiguraciju ispod.
<VirtualHost *:443>
ServerName linuxtechwhiz.info
ServerAlias www.linuxtechwhiz.info
DocumentRoot /var/www/linuxtechwhiz.info/
<Directory /var/www/linuxtechwhiz.info/>
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined
</VirtualHost>
Sačuvaj i izađi.
Dodijelite dozvole korijenu dokumenta kao što je prikazano.
sudo chown -R apache:apache /var/www/linuxtechwhiz.info
Da bi promjene stupile na snagu, ponovo pokrenite Apache servis.
sudo systemctl restart httpd
Korak 3: Instalirajte Let’s Encrypt SSL certifikat na CentOS 8
Sada pokrenite certbot kako je prikazano da započnete instalaciju Let’s Encrypt certifikata.
sudo certbot --apache -d domain.com
U našem slučaju to će biti:
sudo certbot --apache -d linuxtechwhiz.info
Naredba će vas provesti kroz niz upita kako biste mogli konfigurirati Lets Encrypt za svoju domenu. Obavezno navedite svoju adresu e-pošte, prihvatite Uslove korištenja i navedite imena domena za koje želite da koristite HTTPS protokol koji je šifrirana verzija HTTP-a.
Ako je sve prošlo dobro, na kraju biste trebali dobiti poruku čestitke koja vas obavještava da je vaša stranica zaštićena pomoću Let’s Encrypt certifikata. Valjanost vašeg certifikata će također biti prikazana – što je obično nakon 90 dana nakon implementacije.
Sada se vratite na svoj virtuelni host fajl i dodajte sledeće redove konfiguracije.
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem
Sačuvaj i izađi.
Konačna Apache konfiguracija virtualnog hosta će izgledati otprilike ovako:
<VirtualHost *:443>
ServerName linuxtechwhiz.info
ServerAlias www.linuxtechwhiz.info
DocumentRoot /var/www/linuxtechwhiz.info/
<Directory /var/www/linuxtechwhiz.info/>
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem
</VirtualHost>
Još jednom, ponovo pokrenite Apache.
sudo systemctl restart httpd
Korak 4: Provjera Let’s Encrypt SSL certifikata
Da biste provjerili da li sve radi, pokrenite pretraživač i posjetite IP adresu vašeg servera. Sada biste trebali vidjeti simbol katanca na početku URL-a.
Da biste dobili više detalja, kliknite na simbol katanca i kliknite na opciju 'Certifikat' na padajućem izborniku koji se pojavi.
Detalji sertifikata će biti prikazani u sledećem iskačućem prozoru.
Također, možete testirati svoj server na https://www.ssllabs.com/ssltest/
i vaša stranica bi trebala dobiti ocjenu ‘A’
kao što je prikazano.
Korak 5: Automatski obnovite Let’s Encrypt SSL certifikat
Let’s Encrypt vrijedi samo 90 dana. Obično, proces obnove izvodi certbot paket koji dodaje skriptu za obnovu u /etc/cron.d direktorij. Skripta se pokreće dva puta dnevno i automatski će obnoviti svaki certifikat u roku od 30 dana od isteka.
Da biste testirali proces automatskog obnavljanja, izvršite test rada na suho sa certbot.
sudo /usr/local/bin/certbot-auto renew --dry-run
Ako nema grešaka, to znači da ste spremni.
Ovo nas dovodi do kraja ovog vodiča. U ovom vodiču demonstrirali smo kako možete koristiti certbot da instalirate i konfigurirate Let’s Encrypt certifikat na Apache web serveru koji radi na sistemu CentOS 8.