See õpetus kasutab vaikekonfiguratsioonifaili asemel eraldi Apache virtuaalset hostifaili. Soovitame luua iga domeeni jaoks uued Apache virtuaalse hosti failid, kuna see aitab vältida levinud vigu ja säilitab vaikefailid varukonfiguratsioonina.
1. samm – Certboti installimine
Esimene samm Let’s Encrypti kasutamiseks SSL-sertifikaadi saamiseks on Certboti tarkvara installimine oma serverisse.
Selle kirjutamise seisuga ei ole Certbot Debiani tarkvarahoidlatest vaikimisi saadaval. Tarkvara apt abil allalaadimiseks peate lisama Backports hoidla oma sources.list faili, kus apt otsib pakettide allikaid. Backports on Debiani testimise ja ebastabiilsete distributsioonide paketid, mis kompileeritakse uuesti nii, et need töötaksid stabiilsetel Debiani distributsioonidel ilma uute teekideta.
Backports hoidla lisamiseks avage (või looge) fail sources.list kataloogis /etc/apt/:
sudo nano /etc/apt/sources.list
/etc/apt/sources.list.d/sources.list
. . .
deb http://ftp.debian.org/debian stretch-backports main
sudo apt update
sudo apt install python-certbot-apache -t stretch-backports
2. samm – SSL-sertifikaadi seadistamine
Certbot peab SSL-i automaatseks konfigureerimiseks suutma leida teie Apache konfiguratsioonist õige virtuaalse hosti. Täpsemalt otsib see serverinime direktiivi, mis vastab domeenile, mille jaoks te sertifikaati taotlete.
Kui järgisite Apache'i installiõpetuses virtuaalse hosti seadistamise sammu, peaks teie domeeni jaoks olema VirtualHosti plokk aadressil /etc/apache2/sites-available/example.com.conf, mille ServerName direktiiv on juba õigesti seadistatud.
Kontrollimiseks avage oma domeeni virtuaalhosti fail nano või muu lemmik tekstiredaktoriga.
sudo nano /etc/apache2/sites-available/example.com.conf
/etc/apache2/sites-available/example.com.conf
...
ServerName example.com;
...
sudo apache2ctl configtest
Output
Syntax OK
sudo systemctl reload apache2
Järgmisena värskendame tulemüüri, et lubada HTTPS-i liiklust.
3. samm – HTTPS-i lubamine tulemüüri kaudu
Kui teil on ufw tulemüür lubatud, nagu on soovitatud eeltingimuste juhendites, peate HTTPS-i liikluse lubamiseks sätteid kohandama.
Praegust seadet näete, kui sisestate:
sudo ufw status
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
WWW ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
WWW (v6) ALLOW Anywhere (v6)
sudo ufw allow 'WWW Full' sudo ufw delete allow 'WWW'
sudo ufw status
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
WWW Full ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
WWW Full (v6) ALLOW Anywhere (v6)
4. samm – SSL-sertifikaadi hankimine
Certbot pakub mitmesuguseid viise SSL sertifikaatide hankimiseks pistikprogrammide kaudu. Apache pistikprogramm hoolitseb Apache ümberseadistamise ja vajaduse korral konfiguratsiooni uuesti laadimise eest. Selle pistikprogrammi kasutamiseks sisestage järgmine tekst:
sudo certbot --apache -d example.com -d www.example.com
Kui kasutate Certboti esimest korda, palutakse teil sisestada e-posti aadress ja nõustuda teenusetingimustega. Pärast seda suhtleb Certbot Let’s Encrypt serveriga ja käivitab seejärel väljakutse, et kontrollida, kas te ise kontrollite domeeni, mille jaoks sertifikaati taotlete.
Kui see õnnestub, küsib Certbot, kuidas soovite HTTPS-i sätteid konfigureerida:
Output
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
Output
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/example.com/privkey.pem
Your cert will expire on 2018-12-04. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Lõpetuseks testime uuendamisprotsessi.
5. samm – Certboti automaatse uuendamise kontrollimine
Let’s Encrypti sertifikaadid kehtivad vaid 90 (üheksakümmend) päeva. Selle eesmärk on julgustada kasutajaid oma sertifikaatide uuendamise protsessi automatiseerima. Meie installitud Certboti pakett hoolitseb selle eest, et lisades faili /etc/cron.d uuendamisskript. See skript töötab kaks korda päevas ja uuendab automaatselt kõiki sertifikaate.
Uuendusprotsessi testimiseks võite teha Certbotiga proovi, sisestades:
sudo certbot renew --dry-run
Rohkem Certboti kasutamise kohta leiate tema dokumentatsioonist aadressil https://eff-certbot.readthedocs.io/en/stable/