Jak włączyć TLS 1.3 w Apache i Nginx
- 1179
- 50
- Juliusz Janicki
TLS 1.3 to najnowsza wersja Bezpieczeństwo warstwy transportowej (Tls) protokół i jest oparty na istniejącym 1.2 specyfikacje z odpowiednim standardem IETF: RFC 8446. Zapewnia silniejsze bezpieczeństwo i wyższe ulepszenia wydajności w stosunku do swoich poprzedników.
W tym artykule pokażemy przewodnik krok po kroku, aby uzyskać ważny certyfikat TLS i włączyć najnowsze TLS 1.3 Protokół wersji w Twojej domenie hostowany Apache Lub Nginx serwery internetowe.
Wymagania:
- Apache wersja 2.4.37 lub więcej.
- Nginx wersja 1.13.0 lub więcej.
- Wersja OpenSSL 1.1.1 lub więcej.
- Prawidłowa nazwa domeny z prawidłowo skonfigurowanymi rekordami DNS.
- Ważny certyfikat TLS.
Zainstaluj certyfikat TLS z Let's Encrypt
Aby uzyskać za darmo Certyfikat SSL z Zaszypujmy, musisz zainstalować Kulminacja.cii Klient, a także kilka potrzebnych pakietów w systemie Linux, jak pokazano.
# apt instal -y socat git [on debian/ubuntu] # dnf instaluj -y socat git [na rhel/centos/fedora] # mkdir/etc/Letsencrypt # git Clone https: // github.com/neilpang/acme.cii.git # cd acme.cii # ./kulminacja.sh - -install - -home/etc/limsecrrypt -ApcountaMail [e -mail chroniony] # cd ~ #/etc/limsecrrypt/acme.sh --issue --standalone - -home /etc /letsecrrypt -d Przykład.com --ocsp-mUd-Staple-długość keyliczna 2048 #/etc/LetsEncrypt/Acme.sh --issue --standalone - -home /etc /letsecrrypt -d Przykład.COM --CSP-MUST-STAPLE-KOLELY DHELDE EC-256
NOTATKA: Zastępować przykład.com
W powyższym poleceniu z twoją prawdziwą nazwą domeny.
Po zainstalowaniu certyfikatu SSL możesz przejść dalej, aby włączyć TLS 1.3 na twojej domenie, jak wyjaśniono poniżej.
Włącz TLS 1.3 na Nginx
Jak wspomniałem w powyższych wymaganiach, to TLS 1.3 jest obsługiwany zaczynając od Nginx 1.13 wersja. Jeśli uruchamiasz starszą wersję Nginx, musisz najpierw zaktualizować do najnowszej wersji.
# apt Zainstaluj nginx # mniam instaluj nginx
Sprawdź Nginx Wersja i Openssl wersja, w której skompilowano Nginx (upewnij się, że nginx Wersja jest przynajmniej 1.14 I Openssl wersja 1.1.1).
# nginx -v
Przykładowy wyjście
Wersja Nginx: Nginx/1.14.1 Zbudowany przez GCC 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) zbudowany z Openssl 1.1.1 FIPS 11 września 2018 TLS Wsparcie SNI włączone…
Teraz zacznij, włącz i zweryfikuj instalację Nginx.
# Systemctl start nginx.Service # Systemctl Włącz Nginx.Service # Systemctl Status nginx.praca
Teraz otwórz konfigurację nginx vhost /etc/nginx/conf.d/przykład.com.conf
Plik za pomocą ulubionego edytora.
# vi/etc/nginx/conf.d/przykład.com.conf
i zlokalizuj SSL_PROTOCOLS
dyrektywa i dołącz TLSV1.3 Na końcu linii, jak pokazano poniżej
serwer Słuchaj 443 SSL http2; Posłuchaj [::]: 443 SSL http2; Przykład_nazowy Server_name.com; # RSA SSL_Certificate/etc/LetsEncrypt/przykład.com/Fullchain.cer; ssl_certificate_key/etc/limsecrrypt/przykład.com/przykład.com.klucz; # Ecdsa SSL_Certificate/etc/LetsEncrypt/przykład.com_ecc/fullchain.cer; ssl_certificate_key/etc/limsecrrypt/przykład.com_ecc/przykład.com.klucz; 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-chacha20-poly1305 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;
Na koniec zweryfikuj konfigurację i ponownie załaduj Nginx.
# nginx -t # SystemCtl Reload nginx.praca
Włącz TLS 1.3 w Apache
Zaczynając od Apache 2.4.37, możesz skorzystać z TLS 1.3. Jeśli prowadzisz starszą wersję Apache, musisz najpierw uaktualnić do najnowszej wersji.
# apt Zainstaluj apache2 # mniam instaluj httpd
Po zainstalowaniu możesz zweryfikować Apache i wersję OpenSSL, w ramach której skompilowano Apache.
# httpd -v # wersja openssl
Teraz zacznij, włącz i zweryfikuj instalację Nginx.
-------------- Na Debian/Ubuntu -------------- # Systemctl Start Apache2.Service # Systemctl Włącz Apache2.Service # Systemctl Status Apache2.praca -------------- Na RHEL/CENTOS/FEDORA -------------- # Systemctl start httpd.Service # Systemctl Włącz HTTPD.Service # Systemctl Status HTTPD.praca
Teraz otwórz plik konfiguracyjny hosta wirtualnego Apache za pomocą ulubionego edytora.
# vi/etc/httpd/conf.D/vhost.conf lub # vi/etc/apache2/apache2.conf
i zlokalizuj SSL_PROTOCOLS
dyrektywa i dołącz TLSV1.3 Na końcu linii, jak pokazano poniżej.
SsLengine na # rsa SSL_Certificate/etc/Letsecrrypt/przykład.com/Fullchain.cer; ssl_certificate_key/etc/limsecrrypt/przykład.com/przykład.com.klucz; # Ecdsa SSL_Certificate/etc/LetsEncrypt/przykład.com_ecc/fullchain.cer; ssl_certificate_key/etc/limsecrrypt/przykład.com_ecc/przykład.com.klucz; 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-chacha20-poly1305 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; SslcertificateFile/etc/limsecrrypt/na żywo/przykład.com/cert.PEM SSLCertificateKeKeyFile/Etc/LetsEncrypt/Live/Expt.com/privey.PEM sslCertificateChainfile/etc/limsecrrypt/żyje/przykład.com/łańcuch.PEM ServerAdmin [e -mail chroniony] Servername www.przykład.Przykład com serveralias.com #documentroot/data/httpd/htdocs/przykład.com/documentroot/data/httpd/htdocs/example_hueman/ # logowanie logLevel ostrzegaj Ostrzeżenie/var/log/httpd/przykład.com/httpserror.Log CustomLog "|/usr/sbin/rotatelogs/var/log/httpd/przykład.com/httpsAccess.dziennik.%Y-%m-%d 86400 "
Na koniec zweryfikuj konfigurację i ponownie załaduj Apache.
-------------- Na Debian/Ubuntu -------------- # Apache2 -t # Systemctl RELOOD APACHE2.praca -------------- Na RHEL/CENTOS/FEDORA -------------- # httpd -t # Systemctl RELOOD HTTPD.praca
Weryfikacja witryny używa TLS 1.3
Po skonfigurowaniu za pośrednictwem serwera WWW możesz sprawdzić, czy Twoja witryna jest wycofywana TLS 1.3 Protokół za pomocą narzędzi do tworzenia przeglądarki Chrome Chrome 70+ wersja.
Sprawdź TLS 1.3 protokół na domenieTo wszystko. Udało Ci się włączyć TLS 1.3 Protokół w domenie hostowanej na serwerach Apache lub Nginx. Jeśli masz jakieś zapytania dotyczące tego artykułu, nie krępuj się zapytać w sekcji komentarzy poniżej.