Kuinka suojata Apache Free Lets -salaamalla SSL-varmenne Ubuntussa ja Debianissa


Sinulla on äskettäin rekisteröity verkkotunnus ja verkkopalvelimesi toimii antamallasi SSL-allekirjoitetulla varmenteella, joka aiheuttaa päänsärkyä asiakkaillesi, kun he vierailevat verkkotunnuksessa varmenteen luomien virheiden vuoksi? Sinulla on rajoitettu budjetti, eikä sinulla ole varaa ostaa luotettavan varmentajan myöntämää sertifikaattia? Tällöin Let’s Encrypt -ohjelmisto tulee kohtaukseen ja säästää päivän.

Jos haluat asentaa Let’s Encrypt for Apache- tai Nginx-sovelluksen RHEL: ään, CentOS: iin, Fedoraan tai Ubuntuun ja Debianiin, noudata seuraavia ohjeita:

Let’s Encrypt on varmenteiden myöntäjä (CA), joka auttaa sinua hankkimaan ilmaisia SSL/TLS-varmenteita, joita palvelimesi tarvitsee toimimaan turvallisesti, mikä tekee käyttäjille sujuvan selailukokemuksen ilman virheitä.

Kaikki sertifikaatin luomiseen tarvittavat vaiheet ovat enimmäkseen automatisoituja Apache-verkkopalvelimelle. Web-palvelinohjelmistostasi huolimatta jotkin vaiheet on kuitenkin tehtävä manuaalisesti ja varmenteet on asennettava manuaalisesti, varsinkin jos Nginx-daemon palvelee verkkosivustosi sisältöä.

Tämä opetusohjelma opastaa, kuinka voimme asentaa Let’s Encrypt -ohjelmiston Ubuntuun tai Debianiin, luoda ja hankkia ilmaisen varmenteen verkkotunnuksellesi ja kuinka voit asentaa varmenteen manuaalisesti Apache- ja Nginx-palvelimiin.

  1. Julkinen rekisteröity verkkotunnus, jolla on kelvollinen A -rekisteri, joka viittaa palvelimesi ulkoiseen IP-osoitteeseen. Jos palvelimesi on palomuurin takana, ryhdy tarvittaviin toimiin varmistaaksesi, että palvelimesi on sananlaajuinen Internetistä, lisäämällä reitittimen puolelle portin eteenpäin -säännöt.
  2. Apache-verkkopalvelin, johon on asennettu SSL-moduuli ja virtuaalipalvelin, jos isännöit useita verkkotunnuksia tai aliverkkotunnuksia.

Vaihe 1: Asenna Apache ja Ota SSL-moduuli käyttöön

1. Jos koneellasi ei ole vielä asennettua Apache-verkkopalvelinta, asenna apache-daemon seuraavasti:

$ sudo apt-get install apache2

2. SSL-moduulien aktivointi Apache-palvelimelle Ubuntussa tai Debianissa on melko yksinkertaista. Ota SSL-moduuli käyttöön ja aktivoi apache-oletus SSL-virtuaaliasema antamalla alla olevat komennot:

$ sudo a2enmod ssl
$ sudo a2ensite default-ssl.conf
$ sudo service apache2 restart
or
$ sudo systemctl restart apache2.service

Vierailijat voivat nyt käyttää verkkotunnustasi HTTPS-protokollan kautta. Koska palvelimesi itse allekirjoittamaa varmentetta ei myöntä luotettu varmentaja, virhesanoma näytetään heidän selaimissaan alla olevan kuvan mukaisesti.

https://yourdomain.com

Vaihe 2: Asenna ilmainen Let’s Encrypt Client

3. Let’s Encrypt -ohjelmiston asentamiseksi palvelimellesi järjestelmään on asennettava git-paketti. Asenna git-ohjelmisto antamalla seuraava komento:

$ sudo apt-get -y install git

4. Valitse seuraavaksi järjestelmähierarkistostasi hakemisto, johon haluat kloonata Let’s Encrypt git -tietovaraston. Tässä opetusohjelmassa käytämme hakemistoa /usr/local/ Let’s Encrypt -asennuksen polkuna.

Vaihda hakemistoon /usr/local ja asenna letencrypt-asiakas antamalla seuraavat komennot:

$ cd /usr/local
$ sudo git clone https://github.com/letsencrypt/letsencrypt

Vaihe 4: Luo SSL-varmenne Apachelle

5. Apache-SSL-sertifikaatin hankintaprosessi on automatisoitu Apache-laajennuksen ansiosta. Luo varmenne antamalla seuraava komento verkkotunnustasi vastaan. Anna verkkotunnuksesi parametrina -d -lippuun.

$ cd /usr/local/letsencrypt
$ sudo ./letsencrypt-auto --apache -d your_domain.tld

Jos esimerkiksi tarvitset varmenteen toimiakseen useilla verkkotunnuksilla tai aliverkkotunnuksilla, lisää ne kaikki käyttämällä -d -lippua jokaiselle ylimääräiselle kelvolliselle DNS-tietueelle perusverkkotunnuksen jälkeen.

$ sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld 

6. Hyväksy lisenssi, kirjoita sähköpostiosoite palautusta varten ja valitse, voivatko asiakkaat selata verkkotunnustasi sekä HTTP-protokollilla (suojatut että suojaamattomat) tai ohjata kaikki ei-suojatut pyynnöt HTTPS: ään.

7. Kun asennus on päättynyt onnistuneesti, konsoliin tulee onnitteluviesti, jossa kerrotaan viimeisestä käyttöpäivästä ja kuinka voit testata kokoonpanoa alla olevien kuvakaappausten mukaisesti.

Nyt sinun pitäisi pystyä löytämään sertifikaattitiedostot hakemistosta /etc/letsencrypt/live yksinkertaisella hakemistoluettelolla.

$ sudo ls /etc/letsencrypt/live

8. Tarkista lopuksi SSL-varmenteen tila seuraavasta linkistä. Korvaa verkkotunnus vastaavasti.

https://www.ssllabs.com/ssltest/analyze.html?d=your_domain.tld&latest

Lisäksi kävijät voivat nyt käyttää verkkotunnustasi HTTPS-protokollan avulla ilman virheitä heidän selaimissaan.

Vaihe 4: Automaattinen uusiminen antaa salauksen varmenteille

9. Oletusarvoisesti Let’s Encrypt -viranomaisen myöntämät varmenteet ovat voimassa 90 päivää. Varmenteen uusimiseksi ennen vanhentumispäivää sinun on suoritettava asiakas manuaalisesti uudelleen käyttämällä tarkkoja lippuja ja parametreja kuten aikaisemmin.

$ sudo ./letsencrypt-auto --apache -d your_domain.tld

Tai jos kyseessä on useita aliverkkotunnuksia:

$ sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld

10. Varmenteen uusimisprosessi voidaan automatisoida toimimaan alle 30 päivässä ennen viimeistä käyttöpäivää käyttämällä Linux-aikataulun cron-demonia.

$ sudo crontab -e

Lisää seuraava komento crontab-tiedoston loppuun vain yhdellä rivillä:

0 1 1 */2 * cd /usr/local/letsencrypt && ./letsencrypt-auto certonly --apache --renew-by-default --apache -d domain.tld >> /var/log/domain.tld-renew.log 2>&1

11. Yksityiskohtaiset tiedot Let’s Encrypt -ohjelmiston uusittavan toimialueen kokoonpanotiedostosta löytyvät hakemistosta /etc/letsencrypt/atnaujaminen/.

$ cat /etc/letsencrypt/renewal/caeszar.tk.conf

Tarkista myös tiedosto /etc/letsencrypt/options-ssl-apache.conf nähdäksesi äskettäin Apache-verkkopalvelimen SSL-määritystiedoston.

12. Salataan myös apache-laajennus, joka muuttaa joitain tiedostoja verkkopalvelimen määrityksissä. Voit tarkistaa, mitä tiedostoja oli muokattu, luetteloimalla hakemiston /etc/apache2/sites-enabled sisältö.

# ls /etc/apache2/sites-enabled/
# sudo cat /etc/apache2/sites-enabled/000-default-le-ssl.conf

Tässä kaikki tältä erää! Seuraavassa opetusryhmässä keskustellaan siitä, kuinka voit hankkia ja asentaa Let’s Encrypt -sertifikaatin Nginx-palvelimelle Ubuntuun, Debianiin ja CentOSiin.