Követelmények
Mielőtt elkezded
Telepítse az acme.sh klienst, és szerezzen TLS-tanúsítványt a Let's Encrypt-től
Telepítse az Nginx-et
Az Nginx beállítása
A TLS 1.3 a Transport Layer Security (TLS) protokoll egyik változata, amelyet 2018-ban tettek közzé javasolt szabványként az RFC 8446-ban . Biztonsági és teljesítménybeli fejlesztéseket kínál elődeihez képest.
Ez az útmutató bemutatja, hogyan engedélyezhető a TLS 1.3 az Nginx webszerver használatával a FreeBSD 12 rendszeren.
Követelmények
- Vultr Cloud Compute (VC2) példány, amelyen a FreeBSD 12 fut.
- Egy érvényes domain név és megfelelően konfigurált
A/ AAAA/ CNAMEDNS-rekordjait a domain.
- Érvényes TLS-tanúsítvány. Kapunk egyet a Let's Encrypt-től.
- Nginx verzió
1.13.0vagy újabb .
- OpenSSL
1.1.1vagy újabb verzió .
Mielőtt elkezded
Ellenőrizze a FreeBSD verzióját.
uname -ro
# FreeBSD 12.0-RELEASE
Győződjön meg arról, hogy a FreeBSD rendszere naprakész.
freebsd-update fetch install
pkg update && pkg upgrade -y
Telepítse a szükséges csomagokat, ha azok nincsenek jelen a rendszeren.
pkg install -y sudo vim unzip wget bash socat git
Hozzon létre egy új felhasználói fiókot a kívánt felhasználónévvel (használjuk johndoe).
adduser
# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!
Futtassa a visudoparancsot, és törölje a %wheel ALL=(ALL) ALLsor megjegyzését , hogy a wheelcsoport tagjai bármilyen parancsot végrehajthassanak.
visudo
# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL
Most váltson az újonnan létrehozott felhasználóra a segítségével su.
su - johndoe
MEGJEGYZÉS: Cserélje johndoeki a felhasználónevét.
Állítsa be az időzónát.
sudo tzsetup
Telepítse az acme.sh klienst, és szerezzen TLS-tanúsítványt a Let's Encrypt-től
Telepítse acme.sh.
sudo pkg install -y acme.sh
Ellenőrizze a verziót.
acme.sh --version
# v2.7.9
Szerezzen RSA- és ECDSA-tanúsítványokat a domainjéhez.
# RSA
sudo acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength 2048
# ECC/ECDSA
sudo acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength ec-256
MEGJEGYZÉS: Cserélje example.comki a parancsokat a domain nevével.
Hozzon létre könyvtárakat a tanúsítványok és kulcsok tárolására. használni fogjuk /etc/letsencrypt.
sudo mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc
Telepítse és másolja a tanúsítványokat a /etc/letsencryptkönyvtárba.
# RSA
sudo acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem
# ECC/ECDSA
sudo acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem
A fenti parancsok futtatása után a tanúsítványok és kulcsok a következő helyeken lesznek:
RSA: /etc/letsencrypt/example.com
ECC/ECDSA: /etc/letsencrypt/example.com_ecc
Telepítse az Nginx-et
Az Nginx támogatta a TLS 1.3-at az 1.13.0-s verzióban. A FreeBSD 12 rendszer Nginx-szel és OpenSSL-lel érkezik, amelyek már a dobozból támogatják a TLS 1.3-at, így nincs szükség egyedi verzió létrehozására.
Töltse le és telepítse az Nginx legújabb verzióját a pkgcsomagkezelőn keresztül .
sudo pkg install -y nginx-devel
Ellenőrizze a verziót.
nginx -v
# nginx version: nginx/1.15.8
Ellenőrizze azt az OpenSSL-verziót, amelyre az Nginxet lefordították.
nginx -V
# built with OpenSSL 1.1.1a-freebsd 20 Nov 2018
Indítsa el és engedélyezze az Nginx-et.
sudo sysrc nginx_enable=yes
sudo service nginx start
Most, hogy sikeresen telepítettük az Nginxet, készen állunk a megfelelő konfigurációval konfigurálni, hogy elkezdjük használni a TLS 1.3-at a szerverünkön.
Futtassa a sudo vim /usr/local/etc/nginx/example.com.confparancsot, és töltse fel a fájlt a következő konfigurációval.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.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;
}
Mentse el a fájlt, és lépjen ki a :+ W+ gombbal Q.
Most bele kell foglalnunk example.com.confa nginx.conffőfájlba.
Futtassa, sudo vim /usr/local/etc/nginx/nginx.confés adja hozzá a következő sort a http {}blokkhoz.
include example.com.conf;
Figyeljük TLSv1.3meg az ssl_protocolsirányelv új paraméterét . Ez a paraméter csak a TLS 1.3 engedélyezéséhez szükséges az Nginx szerveren.
Ellenőrizze a konfigurációt.
sudo nginx -t
Töltse újra az Nginxet.
sudo service nginx reload
A TLS 1.3 ellenőrzéséhez használhatja a böngésző fejlesztői eszközeit vagy az SSL Labs szolgáltatást. Az alábbi képernyőképeken a Chrome biztonsági lapja látható.

![A TLS 1.3 engedélyezése az Nginxben a FreeBSD 12 rendszeren A TLS 1.3 engedélyezése az Nginxben a FreeBSD 12 rendszeren]()
Sikeresen engedélyezte a TLS 1.3-at az Nginxben a FreeBSD-kiszolgálón. A TLS 1.3 végleges verzióját 2018 augusztusában határozták meg, így nincs jobb alkalom az új technológia bevezetésére.