Introduksjon
Krav
Før du begynner
Installer Acme.sh-klienten og få TLS-sertifikat fra Let's Encrypt
Installer Nginx
Konfigurer Nginx
Introduksjon
TLS 1.3 er en versjon av Transport Layer Security (TLS)-protokollen som ble publisert i 2018 som en foreslått standard i RFC 8446 . Den tilbyr sikkerhet og ytelsesforbedringer i forhold til forgjengerne.
Denne veiledningen vil demonstrere hvordan du aktiverer TLS 1.3 ved å bruke Nginx-nettserveren på Fedora 29.
Krav
- Nginx-versjon
1.13.0eller nyere.
- OpenSSL-versjon
1.1.1eller nyere.
- Vultr Cloud Compute (VC2)-forekomst som kjører Fedora 29.
- Et gyldig domenenavn og riktig konfigurerte
A/ AAAA/ CNAMEDNS-poster for ditt domene.
- Et gyldig TLS-sertifikat. Vi får en fra Let's Encrypt.
Før du begynner
Sjekk Fedora-versjonen.
cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)
Opprett en ny non-rootbrukerkonto med sudotilgang og bytt til den.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
MERK: Erstatt johndoemed brukernavnet ditt.
Sett opp tidssonen.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Sørg for at systemet ditt er oppdatert.
sudo dnf check-upgrade || sudo dnf upgrade -y
Installer de nødvendige pakkene.
sudo dnf install -y socat git
Deaktiver SELinux og brannmur.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Installer Acme.sh-klienten og få TLS-sertifikat fra Let's Encrypt
I denne guiden vil vi bruke Acme.sh-klienten for å få SSL-sertifikater fra Let's Encrypt. Du kan bruke en klient du er mest kjent med.
Last ned og installer Acme.sh .
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~
Sjekk versjonen.
/etc/letsencrypt/acme.sh --version
# v2.8.1
Skaff RSA- og ECDSA-sertifikater for domenet ditt.
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength ec-256
MERK: Erstatt example.comi kommandoene med ditt domenenavn.
Etter å ha kjørt de forrige kommandoene, vil sertifikatene og nøklene dine være tilgjengelige på:
- RSA:
/etc/letsencrypt/example.com.
- ECC/ECDSA:
/etc/letsencrypt/example.com_ecc.
Installer Nginx
Nginx la til støtte for TLS 1.3 i versjon 1.13.0. Fedora 29 kommer med Nginx og OpenSSL som støtter TLS 1.3 ut av esken, så det er ikke nødvendig å bygge en tilpasset versjon.
Installer Nginx.
sudo dnf install -y nginx
Sjekk versjonen.
nginx -v
# nginx version: nginx/1.14.2
Sjekk OpenSSL-versjonen som Nginx ble kompilert mot.
nginx -V
# built with OpenSSL 1.1.1b FIPS 26 Feb 2019
Start og aktiver Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Nå som vi har installert Nginx, er vi klare til å konfigurere den med riktig konfigurasjon for å begynne å bruke TLS 1.3 på serveren vår.
Kjør sudo vim /etc/nginx/conf.d/example.com.confkommandoen, og fyll filen med følgende konfigurasjon.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_prefer_server_ciphers on;
}
Lagre filen og avslutt med :+ W+ Q.
Legg merke til den nye TLSv1.3parameteren i ssl_protocolsdirektivet. Denne parameteren er bare nødvendig for å aktivere TLS 1.3 på Nginx.
Sjekk konfigurasjonen.
sudo nginx -t
Last inn Nginx på nytt.
sudo systemctl reload nginx.service
For å bekrefte TLS 1.3 kan du bruke nettleserutviklerverktøy eller SSL Labs-tjeneste. Skjermbildene nedenfor viser Chromes sikkerhetsfane.

![Slik aktiverer du TLS 1.3 i Nginx på Fedora 29 Slik aktiverer du TLS 1.3 i Nginx på Fedora 29]()
Det er alt. Du har aktivert TLS 1.3 i Nginx på din Fedora 29-server. Den endelige versjonen av TLS 1.3 ble definert i august 2018, så det er ingen bedre tid å begynne å ta i bruk denne nye teknologien.