So aktivieren Sie TLS 1.3 in Apache und Nginx

TLS 1.3 ist die neueste Version der Transportschicht-Sicherheit (TLS) Protokoll und es basiert auf den vorhandenen 1.2 Spezifikationen mit richtigen IETF-Standard: RFC 8446. Es bietet eine höhere Sicherheit und höhere Leistungsverbesserungen als seine Vorgänger.

In diesem Artikel zeigen wir Ihnen eine Schritt-für-Schritt-Anleitung, um ein gültiges TLS-Zertifikat zu erhalten und das neueste zu aktivieren TLS 1.3 Versionsprotokoll auf Ihrer Domain gehostet auf Apache oder Nginx Webserver.

Bedarf:

  • Apache Version 2.4.37 oder höher.
  • Nginx Version 1.13.0 oder höher.
  • OpenSSL Version 1.1.1 oder höher.
  • Ein gültiger Domainname mit korrekt konfigurierten DNS-Einträgen.
  • Ein gültiges TLS-Zertifikat.

Installieren Sie das TLS-Zertifikat von Let’s Encrypt

Um eine kostenlose zu erhalten SSL-Zertifikat von Verschlüsseln wirmüssen Sie installieren Acme.sh Client und auch einige benötigte Pakete auf Linux-System wie gezeigt.

# apt install -y socat git  [On Debian/Ubuntu]
# dnf install -y socat git  [On RHEL/CentOS/Fedora]
# mkdir /etc/letsencrypt
# git clone https://github.com/Neilpang/acme.sh.git
# cd acme.sh 
# ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
# cd ~
# /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength 2048
# /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --ocsp-must-staple --keylength ec-256

HINWEIS: Ersetzen example.com im obigen Befehl mit Ihrem echten Domainnamen.

Sobald Sie das SSL-Zertifikat installiert haben, können Sie mit der Aktivierung fortfahren TLS 1.3 auf Ihrer Domain wie unten erläutert.

Aktivieren Sie TLS 1.3 unter Nginx


Wie ich in den obigen Anforderungen erwähnt habe, ist das TLS 1.3 wird ab unterstützt Nginx 1.13 Ausführung. Wenn Sie die ältere Nginx-Version ausführen, müssen Sie zuerst auf die neueste Version aktualisieren.

# apt install nginx
# yum install nginx

Überprüf den Nginx Version und die OpenSSL Version, gegen die Nginx kompiliert wurde (stellen Sie sicher, dass die Nginx Version ist mindestens 1.14 und openssl Ausführung 1.1.1).

# nginx -V
Beispielausgabe
nginx version: nginx/1.14.1
built by gcc 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) 
built with OpenSSL 1.1.1 FIPS  11 Sep 2018
TLS SNI support enabled
....

Starten, aktivieren und überprüfen Sie nun die Nginx-Installation.

# systemctl start nginx.service
# systemctl enable nginx.service
# systemctl status nginx.service

Öffnen Sie nun die nginx vhost-Konfiguration /etc/nginx/conf.d/example.com.conf Datei mit Ihrem Lieblingseditor.

# vi /etc/nginx/conf.d/example.com.conf

und suchen ssl_protocols Richtlinie und anhängen TLSv1.3 am Ende der Zeile wie unten gezeigt

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;
}

Überprüfen Sie abschließend die Konfiguration und laden Sie Nginx neu.

# nginx -t
# systemctl reload nginx.service

Aktivieren Sie TLS 1.3 in Apache

Ab Apache 2.4.37können Sie ausnutzen TLS 1.3. Wenn Sie die ältere Version von ausführen Apachemüssen Sie zuerst auf die neueste Version aktualisieren.

# apt install apache2
# yum install httpd

Nach der Installation können Sie den Apache und die OpenSSL-Version überprüfen, für die Apache kompiliert wurde.

# httpd -V
# openssl version

Starten, aktivieren und überprüfen Sie nun die Nginx-Installation.

-------------- On Debian/Ubuntu -------------- 
# systemctl start apache2.service
# systemctl enable apache2.service
# systemctl status apache2.service

-------------- On RHEL/CentOS/Fedora --------------
# systemctl start httpd.service
# systemctl enable httpd.service
# systemctl status httpd.service

Öffnen Sie nun die Konfigurationsdatei des virtuellen Apache-Hosts mit Ihrem bevorzugten Editor.

# vi /etc/httpd/conf.d/vhost.conf
OR
# vi /etc/apache2/apache2.conf

und suchen ssl_protocols Richtlinie und anhängen TLSv1.3 am Ende der Zeile wie unten gezeigt.


SSLEngine On

# 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;
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

     ServerAdmin [email protected]
     ServerName www.example.com
     ServerAlias example.com
    #DocumentRoot /data/httpd/htdocs/example.com/
    DocumentRoot /data/httpd/htdocs/example_hueman/
  # Log file locations
  LogLevel warn
  ErrorLog  /var/log/httpd/example.com/httpserror.log
  CustomLog "|/usr/sbin/rotatelogs /var/log/httpd/example.com/httpsaccess.log.%Y-%m-%d 86400" combined

Überprüfen Sie abschließend die Konfiguration und laden Sie Apache neu.

-------------- On Debian/Ubuntu -------------- 
# apache2 -t
# systemctl reload apache2.service

-------------- On RHEL/CentOS/Fedora --------------
# httpd -t
# systemctl reload httpd.service

Überprüfen Sie, ob die Site TLS 1.3 verwendet

Sobald Sie über einen Webserver konfiguriert haben, können Sie überprüfen, ob Ihre Site von Hand übergeben wird TLS 1.3 Protokoll mit Chrome-Browser-Entwicklungstools auf Chrome 70+ Ausführung.

Überprüfen Sie das TLS 1.3-Protokoll in der Domäne
Überprüfen Sie das TLS 1.3-Protokoll in der Domäne

Das ist alles. Sie haben erfolgreich aktiviert TLS 1.3 Protokoll auf Ihrer Domain, das auf Apache- oder Nginx-Webservern gehostet wird. Wenn Sie Fragen zu diesem Artikel haben, können Sie diese gerne im Kommentarbereich unten stellen.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *