Cara Membolehkan TLS 1.3 di Apache dan nginx

Cara Membolehkan TLS 1.3 di Apache dan nginx

TLS 1.3 adalah versi terbaru dari Keselamatan lapisan pengangkutan (TLS) protokol dan berdasarkan 1 yang ada.2 Spesifikasi dengan standard IETF yang betul: RFC 8446. Ia memberikan keselamatan yang lebih kukuh dan peningkatan prestasi yang lebih tinggi berbanding pendahulunya.

Dalam artikel ini, kami akan menunjukkan kepada anda panduan langkah demi langkah untuk mendapatkan sijil TLS yang sah dan membolehkan yang terkini TLS 1.3 Protokol versi di domain anda dihoskan Apache atau Nginx pelayan web.

Keperluan:

  • Apache versi 2.4.37 atau lebih besar.
  • Nginx versi 1.13.0 atau lebih besar.
  • OpenSSL Versi 1.1.1 atau lebih besar.
  • Nama domain yang sah dengan rekod DNS yang dikonfigurasi dengan betul.
  • Sijil TLS yang sah.

Pasang sijil TLS dari mari enkripsi

Untuk mendapatkan percuma Sijil SSL dari Mari enkripsi, anda perlu memasang Acme.sh pelanggan dan juga sedikit pakej yang diperlukan pada sistem Linux seperti yang ditunjukkan.

# 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 --stall -home/etc/letsencrypt --accountemail [dilindungi e -mel] # cd ~ #/etc/letsencrypt/acme.sh --issue -standalone -home /etc /letsencrypt -d contoh.com --CSP-Must-Staple --KeyLength 2048 #/etc/Letsencrypt/Acme.sh --issue -standalone -home /etc /letsencrypt -d contoh.com --CSP-Must-Staple --KeyLength EC-256 

CATATAN: Ganti Contoh.com Dalam perintah di atas dengan nama domain sebenar anda.

Sebaik sahaja anda memasang sijil SSL, anda boleh meneruskan lagi untuk membolehkan TLS 1.3 di domain anda seperti yang dijelaskan di bawah.

Dayakan TLS 1.3 pada nginx

Seperti yang saya nyatakan dalam keperluan di atas, itu TLS 1.3 disokong bermula dari Nginx 1.13 versi. Sekiranya anda menjalankan versi nginx yang lebih lama, anda perlu menaik taraf terlebih dahulu ke versi terkini.

# apt Pasang nginx # yum pasang nginx 

Periksa Nginx versi dan OpenSSL versi yang mana nginx disusun (pastikan bahawa nginx versi sekurang -kurangnya 1.14 dan OpenSSL versi 1.1.1).

# nginx -v 
Output sampel
Versi nginx: nginx/1.14.1 Dibina oleh GCC 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) dibina dengan OpenSSL 1.1.1 FIPS 11 Sep 2018 Sokongan SNI TLS diaktifkan .. 

Sekarang mulakan, aktifkan dan sahkan pemasangan nginx.

# Systemctl Mula Nginx.Perkhidmatan # Systemctl Dayakan Nginx.Perkhidmatan # Systemctl Status Nginx.perkhidmatan 

Sekarang buka konfigurasi vhost nginx /etc/nginx/conf.d/contoh.com.Conf fail menggunakan editor kegemaran anda.

# vi/etc/nginx/conf.d/contoh.com.Conf 

dan cari ssl_protocols arahan dan tambah TLSV1.3 pada akhir baris seperti yang ditunjukkan di bawah

pelayan mendengar 443 ssl http2; Dengar [::]: 443 SSL http2; Contoh Server_name.com; # RSA ssl_certificate/etc/letsencrypt/contoh.com/fullchain.cer; ssl_certificate_key/etc/letsencrypt/contoh.com/contoh.com.kunci; # Ecdsa ssl_certificate/etc/letsencrypt/contoh.com_ecc/fullchain.cer; ssl_certificate_key/etc/letsencrypt/contoh.com_ecc/contoh.com.kunci; SSL_PROTOCOLS TLSV1.2 TLSV1.3; SSL_CIPHERS 'ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA205: ECDHE-RSA-CHACA205: RSA-AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128; SSL_PREFER_SERVER_CIPHERS ON;  

Akhirnya, sahkan konfigurasi dan tambah nilai nginx.

# nginx -t # Systemctl Reload nginx.perkhidmatan 

Dayakan TLS 1.3 di Apache

Bermula dari Apache 2.4.37, anda boleh mengambil kesempatan daripada TLS 1.3. Sekiranya anda menjalankan versi lama Apache, anda perlu menaik taraf terlebih dahulu ke versi terkini.

# apt Pasang apache2 # yum pasang httpd 

Setelah dipasang, anda boleh mengesahkan Apache dan versi OpenSSL yang mana Apache disusun.

# httpd -v # openssl versi 

Sekarang mulakan, aktifkan dan sahkan pemasangan nginx.

-------------- Di Debian/Ubuntu -------------- # Systemctl Mula Apache2.Perkhidmatan # Systemctl Dayakan Apache2.Perkhidmatan # Systemctl Status Apache2.perkhidmatan -------------- Pada RHEL/Centos/Fedora -------------- # Systemctl Mula Httpd.Perkhidmatan # Systemctl Dayakan HTTPD.Perkhidmatan # SystemCTL Status HTTPD.perkhidmatan 

Sekarang buka fail konfigurasi hos maya Apache menggunakan editor kegemaran anda.

# vi/etc/httpd/conf.d/vhost.conf atau # vi/etc/apache2/apache2.Conf 

dan cari ssl_protocols arahan dan tambah TLSV1.3 pada akhir baris seperti yang ditunjukkan di bawah.

 Sslengine pada # rsa ssl_certificate/etc/letsencrypt/contoh.com/fullchain.cer; ssl_certificate_key/etc/letsencrypt/contoh.com/contoh.com.kunci; # Ecdsa ssl_certificate/etc/letsencrypt/contoh.com_ecc/fullchain.cer; ssl_certificate_key/etc/letsencrypt/contoh.com_ecc/contoh.com.kunci; SSL_PROTOCOLS TLSV1.2 TLSV1.3 SSL_CIPHERS 'ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA20505: ECDHE-RSA-CHACA205: ECDHE-RSA-CHACA205: RSA-AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128; SSL_PREFER_SERVER_CIPHERS ON; Sslcertificatefile/etc/letsencrypt/live/contoh.com/cert.PEM SSLCertificateKeyFile/etc/LetsEncrypt/Live/Example.com/privkey.PEM SSLCertificateChainFile/etc/LetseCrypt/Live/Example.com/rantai.PEM ServerAdmin [dilindungi e -mel] ServerName www.Contoh.COM Serveralias Contoh.com #documentroot/data/httpd/htdocs/contoh.com/documentroot/data/httpd/htdocs/example_hueman/ # log fail lokasi loglevel warn errorlog/var/log/httpd/contoh.com/httpserror.log customlog "|/usr/sbin/rotatelogs/var/log/httpd/contoh.com/httpsaccess.log.%Y-%m-%d 86400 "digabungkan  

Akhirnya, sahkan konfigurasi dan tambah nilai Apache.

-------------- Di Debian/Ubuntu -------------- # apache2 -t # Systemctl Reload Apache2.perkhidmatan -------------- Pada RHEL/Centos/Fedora -------------- # httpd -t # Systemctl Reload httpd.perkhidmatan 

Sahkan laman web menggunakan TLS 1.3

Sebaik sahaja anda telah mengkonfigurasi melalui pelayan web, anda boleh menyemak bahawa laman web anda membuat keputusan TLS 1.3 protokol menggunakan alat pembangunan penyemak imbas krom Chrome 70+ versi.

Sahkan TLS 1.3 Protokol di Domain

Itu sahaja. Anda telah berjaya mengaktifkan TLS 1.3 Protokol di domain anda yang dihoskan di pelayan web Apache atau Nginx. Sekiranya anda mempunyai pertanyaan mengenai artikel ini, jangan ragu untuk bertanya di bahagian komen di bawah.