Calling All Cars: The 25th Stamp / The Incorrigible Youth / The Big Shot
Sisällysluettelo:
- edellytykset
- Asenna Certbot
- Luo vahva Dh (Diffie-Hellman) -ryhmä
- Salamme SSL-varmenteen
- Automaattinen uusiminen Let's Encrypt SSL -varmenne
- johtopäätös
Let's Encrypt on Internet Security Research Groupin (ISRG) luoma varmenteen myöntäjä. Se tarjoaa ilmaisia SSL-varmenteita täysin automatisoidun prosessin avulla, joka on suunniteltu poistamaan manuaalinen varmenteiden luominen, validointi, asennus ja uusiminen.
Let's Encryptin myöntämät sertifikaatit ovat voimassa 90 päivää myöntämispäivästä, ja kaikkien tärkeimpien selainten luottamus tänään.
Tämä opetusohjelma opastaa sinua ilmaisen Let's Encrypt -sovelluksen hankkimisessa Debian 9: n certbot-työkalulla. Osoitamme myös, kuinka Apache määritetään käyttämään uutta SSL-varmennetta ja ottamaan käyttöön HTTP / 2.
edellytykset
Varmista, että olet täyttänyt seuraavat ehdot, ennen kuin jatkat tätä opastusta:
- Sisäänkirjautuneena käyttäjänä, jolla on sudo-oikeudet.On verkkotunnus osoittanut palvelimen julkiseen palvelimeen IP. Käytämme
example.com.Apache asennettuna. Verkkotunnuksen apache-virtuaalinen isäntä. Seuraa näitä ohjeita saadaksesi lisätietoja sen luomisesta.
Asenna Certbot
Certbot on täysin varusteltu ja helppokäyttöinen työkalu, joka voi automatisoida Let's Encrypt SSL -sertifikaattien hankkimis- ja uusimistehtävät. Certbot-paketti sisältyy Debianin oletusvarastoihin.
Päivitä pakettiluettelo ja asenna certbot-paketti seuraavilla komennoilla:
sudo apt update
sudo apt install certbot
Luo vahva Dh (Diffie-Hellman) -ryhmä
Diffie – Hellman-avaintenvaihto (DH) on menetelmä salausavainten vaihtamiseksi turvallisesti suojaamattoman tietoliikennekanavan kautta.
Uuden 2048-bittisten DH-parametrien sarjan luominen suoritetaan:
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
Halutessasi voit muuttaa kokoa enintään 4096 bittiä, mutta tällöin luominen voi viedä yli 30 minuuttia järjestelmän entropiasta riippuen.
Salamme SSL-varmenteen
Saadaksesi verkkotunnuksellemme SSL-varmenteen aiomme käyttää Webroot-laajennusta, joka toimii luomalla väliaikaisen tiedoston vahvistaaksesi pyydetyn verkkotunnuksen
${webroot-path}/.well-known/acme-challenge
hakemisto. Let's Encrypt -palvelin tekee HTTP-pyyntöjä väliaikaiseen tiedostoon vahvistaakseen, että pyydetty verkkotunnus ratkaisee palvelimelle, jossa certbot toimii.
Yksinkertaistamiseksi aiomme kartoittaa kaikki. Hyvin
.well-known/acme-challenge
HTTP-pyynnöt yhteen hakemistoon,
/var/lib/letsencrypt
.
Seuraavat komennot luovat hakemiston ja tekevät siitä kirjoitettavan Apache-palvelimelle.
sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp www-data /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt
Koodin päällekkäisyyksien välttämiseksi luo seuraavat kaksi kokoonpanokatkelmaa:
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder On Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" Header always set X-Frame-Options DENY Header always set X-Content-Type-Options nosniff # Requires Apache >= 2.4 SSLCompression off SSLUseStapling on SSLStaplingCache "shmcb:logs/stapling-cache(150000)" # Requires Apache >= 2.4.11 SSLSessionTickets Off SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem"
Yllä oleva katkelma käyttää Cipherli.st: n suosittelemia hakkereita, mahdollistaa OCSP-nidonnan, HSTS-tiukan liikenneturvallisuuden (HSTS) ja valvoo muutamaa turvallisuuteen keskittynyttä
Varmista ennen määritystiedostojen käyttöönottoa, että sekä
mod_ssl
että
mod_headers
ovat käytössä antamalla:
sudo a2enmod ssl
sudo a2enmod headers
Ota HTTP / 2-moduuli käyttöön, mikä tekee sivustosi nopeammiksi ja kestävämmiksi:
sudo a2enmod
Ota SSL-määritystiedostot käyttöön suorittamalla seuraavat komennot:
sudo a2enconf letsencrypt
sudo a2enconf ssl-params
Lataa Apache-asetukset uudelleen, jotta muutokset tulevat voimaan:
sudo systemctl reload apache2
Käytä Certbot-työkalua webroot-laajennuksen kanssa saadaksesi SSL-varmennetiedostot:
sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d example.com -d www.example.com
Jos SSL-varmenne saadaan onnistuneesti, certbot tulostaa seuraavan viestin:
IMPORTANT NOTES: IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will expire on 2019-01-17. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you lose your account credentials, you can recover through e-mails sent to [email protected]. - 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:
Nyt kun sinulla on varmennetiedostot, muokkaa verkkotunnuksen virtuaalisen palvelimen kokoonpanoa seuraavasti:
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
Yllä olevalla kokoonpanolla pakotamme HTTPS: n ja ohjaamme www-osoitteesta muuhun kuin www-versioon. Voit vapaasti säätää kokoonpanoa tarpeidesi mukaan.
Lataa Apache-palvelu uudelleen, jotta muutokset tulevat voimaan:
sudo systemctl reload apache2
Avaa verkkosivusto verkkosivustolla
https://
, ja huomaat vihreän lukon kuvakkeen.

Automaattinen uusiminen Let's Encrypt SSL -varmenne
Salatko varmenteet ovat voimassa 90 päivää. Jos haluat uusia sertifikaatteja automaattisesti ennen niiden voimassaolon päättymistä, certbot-paketti luo cronjobin, joka toimii kahdesti päivässä ja uusii sertifikaatit automaattisesti 30 päivää ennen niiden voimassaolon päättymistä.
Kun varmenne uusitaan, meidän on myös ladattava Apache-palvelu uudelleen. Lisää
--renew-hook "systemctl reload apache2"
/etc/cron.d/certbot
joten se näyttää seuraavalta:
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew --renew-hook "systemctl reload apache2"
Testaa uusimisprosessi käyttämällä certbot
--dry-run
-kytkintä:
sudo certbot renew --dry-run
Jos virheitä ei ole, uusimisprosessi onnistui.
johtopäätös
Tässä opetusohjelmassa käytit Let's Encrypt Client -sertifikaattia saadaksesi verkkotunnuksesi SSL-varmenteet. Olet myös luonut Apache-katkelmat koodin päällekkäisyyksien välttämiseksi ja määrittänyt Apachen käyttämään varmenteita. Opetusohjelman lopussa olet asettanut cronjob-sertifikaatin automaattiseen uusimiseen.
apache debian salattava certbot sslTämä viesti on osa Kuinka asentaa LAMP-pino Debian 9 -sarjaan.
Muut tämän sarjan viestit:
• Kuinka asentaa Apache Debian 9: ään • Kuinka asentaa PHP Debian 9: ään • Kuinka asentaa Apache-virtuaalisia isäntä Debian 9: ään • Kuinka asentaa MariaDB Debian 9: ään • Suojaa Apache suojaamalla Debian 9Varmista apache salaamalla sentos 7
Tässä opetusohjelmassa kerrotaan vaiheet, jotka ovat tarpeen ilmaisen Let's Encrypt SSL -sertifikaatin asentamiseksi CentOS 7 -palvelimeen, joka käyttää Apache-palvelinta web-palvelimena.
Varmista apache salaamalla sentos 8
Tämä opetusohjelma selittää, kuinka asennetaan ilmainen Let's Encrypt SSL -varmenne CentOS 8: aan, joka käyttää Apachea Web-palvelimena. Käytämme certbot-työkalua sertifikaattien hankkimiseen ja uusimiseen.
Suojaa apache salaamalla ubuntu 18.04
Tässä opetusohjelmassa annamme vaiheittaiset ohjeet siitä, kuinka suojata Apache-sovellus Let's Encrypt -sovelluksella käyttämällä certbot-työkalua Ubuntu 18.04: ssä.







