Kuinka aktivoit tlsv1.3: n ninxissä. Vestacp / CentOS tai Ubuntu

Tässä opetusohjelmassa opit miten Activezi tlsv1.3 tai nginx. Mitä se tarkoittaa TLSv 1.3- Mikä auttaa Ja miksi tarvitset verkkopalvelimessa CA TLS voidaan aktivoida. Palvelimille, joilla on hallintajärjestelmä Vestacp (CentOS tai Ubuntu) on hieman vaikeampi aktivoitit TLS 1.3 Vain palvelimella, jolla on CPanel, mutta se ei ole mahdotonta.

Miksi TLS on 1,3 parempi kuin TLS 1,2?

TLS (Transport Layer Security) Se on a salausprotokolla mikä varmistaa Yhteysturva Tietokoneen ja verkon välillä se kuuluu. TLS käytetään sovelluksissa, kuten: sähköposti- lähettiläs- Ääni- ja videopuhelut (VoIP), mutta etenkin HTTPS. Varmistetaan turvallinen viestintä käyttäjän tietokoneen tai älypuhelimen ja käytetyn sivun verkkopalvelimen välillä.

TLS 1.3 Tarjoaa O suurempi nopeus asiakasyhteys – palvelin ja yksi plus turvallisuus poistamalla algoritmit. Erot TLSV1.2: n ja TLSV1.3: n välillä.

Noin HTTPS- SSL (Secure Sockets Layer) Sanoin myös muissa kohteissa:

Kuinka aktivoit TLS 1.3: n ninxissä. Palvelin Vestacp / Centos Management

Ennen kuin näet kuinka aktivoit TLSV1.3: n NGINX: llä, sinun on harkittava joitain vähimmäisvaatimuksia TLS 1.3.

  1. Ningin 1.13.x tai uudempi versio
  2. Kelvollinen TLS -sertifikaatti
  3. Verkkotunnus Aktiivinen DNS: n määritetty oikein – olla saatavissa Internetissä
  4. Kelvollinen TLS / SSL -varmenne. Se voi olla Let’s Encrypt.

Vestacpissa asennettuna kauan sitten meillä on vain protokolla TLS 1.2. Näin monissa opetusohjelmissa, että se riittää nginx.conf Lisäämme seuraavan rivin TLS 1.3: lle aktivoida:

server {

  listen 443 ssl http2;
  listen [::]:443 ssl http2;

  server_name example.com;
  root /var/www/example.com/public;

  ssl_certificate /path/to/your/certificate.crt;
  ssl_certificate_key /path/to/your/private.key;

  ssl_protocols TLSv1.2 TLSv1.3;

Vääriä. Jos palvelimella CentOS Cu Management Vestacp- Ningxiä ei ole koottu vähimmäisversiossa OpenSSL 1.1.1.1- ssl_protocols TLSv1.2 TLSv1.3; sisä- nginx.conf .. se ei auta mistään.

[root@north ~]# nginx -V
nginx version: nginx/1.22.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled

Asar, yllä olevassa esimerkissä Nginx 1.22.0 on yhteensopiva TLS 1.3 -version kanssa, mutta ei auta kirjakauppaa OpenSSL 1.0.2k-fips.

TLSV1.3: n aktivoimiseksi NGINX: llä on ensin asennettava kirjakaupat lapsuuden ja kehityspakettien suhteen. Development Tools. Suorittaa Centos 7 -komentorivillä:

yum install gcc gcc-c++ pcre-devel zlib-devel make unzip gd-devel perl-ExtUtils-Embed libxslt-devel openssl-devel perl-Test-Simple
yum groupinstall 'Development Tools'

1. Asenna uusin versio OpenSSL

Tällä hetkellä viimeisin versio on OpenSSL 1.1.1p, mutta siitä, mitä huomasin, on jo OpenNSL 3: ta. Löydät lähteet OpenSSL.org.

cd /usr/src
wget https://www.openssl.org/source/openssl-1.1.1p.tar.gz
tar xvf openssl-1.1.1p.tar.gz 
mv openssl-1.1.1p openssl
cd openssl
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl --libdir=/lib64 shared zlib-dynamic
make -j4
make test 
make install 

Erittäin tärkeä juosta make test Ennen kirjakaupan asentamista. Jos testissä on tapahtunut virheitä, älä suorita make install kunnes virheet korjataan.

Seuraavassa vaiheessa teemme varmuuskopion nykyiseen binaaritiedostoon openssl Ja lisään symlink uudelle.

mv /usr/bin/openssl /usr/bin/openssl-backup
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

Sisä- /usr/local/openssl/bin suorittaa ldd OpenSSL -riippuvuuksien tarkistaminen. Voimme myös vahvistaa OpenSL -version. Komento openssl version.

[root@north bin]# ldd openssl
	linux-vdso.so.1 =>  (0x00007ffd20bd7000)
	libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007fab09b62000)
	libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007fab09675000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fab09471000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fab09255000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fab08e87000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fab09df5000)
[root@north bin]# openssl version
OpenSSL 1.1.1p  21 Jun 2022

Tällä hetkellä meillä on uusin versio asennettu OpenSSL joka tukee TLSv1.3. Voimme tarkistaa versiot TLS / SSL Kirjastonhoitajat tukevat OpenSSL tilauksen mukaan:

[root@north bin]# openssl ciphers -v | awk '{print $2}' | sort | uniq
SSLv3
TLSv1
TLSv1.2
TLSv1.3
[root@north bin]# 

Tämä ei tarkoita, että verkkosivustot isännöivät johtajan avulla VestaCP Heillä on heti TLS 1.3.

Vaikka olemme asentaneet OpenSSL 1.1.1p, Nginx on koottu vanhaan versioon OpenSSL 1.0.2k-fips.

[root@north bin]# nginx -V
nginx version: nginx/1.22.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
[root@north bin]# openssl version
OpenSSL 1.1.1p  21 Jun 2022
[root@north bin]# 

2. VestaCP

Tässä vaiheessa meidän on palautettava uudelleen OpenSSL Jo asennettu nginx -versio järjestelmässä CentOS / VestaCP. Kuten edellä totesin, minun tapauksessani se on kyse nginx/1.22.0. Olla verkkopalvelin, jolla on VestaCP Hallintajärjestelmä, ennen kuin aloitamme uudelleenkoomistuksen, on hyvä varmuuskopioida NGINX -tiedostot.

Varmuuskopio Nginx -virta järjestelmässä VestaCP

Arkisto ja pidä jonnekin palvelimella ohjaajat “/etc/nginx” ja “/usr/local/vesta/nginx“.

Juoksua nginx -V ja tallenna olemassa oleviin tiedostoihin.

configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
Kuinka aktivoit tlsv1.3: n nginxissä
Cum hänen tlsv1.3 -sivustaan ​​nginx

Kuinka vastaanottaja Ninx Upgrage OpenSl / CentOS 7

Toistan. Jos sinulla on Vestacp, Lataa jo asentamasi Nginx -versio. Kaikki arkistot Nginx -versioilla, joista löydät ne nginx.org.

cd /usr/src
wget https://nginx.org/download/nginx-1.22.0.tar.gz 
tar xvf nginx-1.22.0.tar.gz
cd nginx-1.22.0

Yhdistämme Nginx -moduulit uudelleen:

./configure --prefix=/etc/nginx \
--sbin-path=/usr/sbin/nginx \ 
--modules-path=/usr/lib64/nginx/modules \ 
--conf-path=/etc/nginx/nginx.conf \ 
--error-log-path=/var/log/nginx/error.log  \
--http-log-path=/var/log/nginx/access.log  \
--pid-path=/var/run/nginx.pid  \
--lock-path=/var/run/nginx.lock  \
--http-client-body-temp-path=/var/cache/nginx/client_temp  \
--http-proxy-temp-path=/var/cache/nginx/proxy_temp  \
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp  \
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp  \
--http-scgi-temp-path=/var/cache/nginx/scgi_temp  \
--user=nginx  \
--group=nginx  \
--with-compat  \
--with-file-aio  \
--with-threads  \
--with-http_addition_module  \
--with-http_auth_request_module  \
--with-http_dav_module  \
--with-http_flv_module  \
--with-http_gunzip_module  \
--with-http_gzip_static_module  \
--with-http_mp4_module  \
--with-http_random_index_module  \
--with-http_realip_module  \
--with-http_secure_link_module  \
--with-http_slice_module  \
--with-http_ssl_module  \
--with-http_stub_status_module  \
--with-http_sub_module  \
--with-http_v2_module  \
--with-mail  \
--with-mail_ssl_module  \
--with-stream  \
--with-stream_realip_module  \
--with-stream_ssl_module  \
--with-stream_ssl_preread_module  \
--with-openssl=/usr/src/openssl  \
--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong  \
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC'  \
--with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
make -j4
make install

Meillä on nyt Ningx asennettu ja koottu uusimmalla versiolla OpenSSL pystyy tukemaan TLSV1.3: ta.

[root@north bin]# nginx -V
nginx version: nginx/1.22.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.1.1p  21 Jun 2022
TLS SNI support enabled

*Jos NGINX on jo asennettu palvelimelle, sinun on poistettava se. Kokoonpano ei toimi päivitys Ninxissä.

Kuinka aktivoit TLSV1.3 -kentät Vestacpissa

Tiedostossa /etc/nginx/nginx.conf Lisäämme seuraavat rivit:

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
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';

Verkkotunnusten tasolla muutin jotain malleissa Vestacp ja aktivoida HTTP/2. Joten kun lisäät uuden verkkotunnuksen (esimerkki.com), kun Let’s Encrypt on aktivoitu, minulla on seuraava SSL -määritystiedosto:

cat /home/vestacpuser/conf/web/example.com.nginx.ssl.conf 

server {
    listen      IP.IP.IP.IP:443 ssl http2;
    server_name example.com www.example.com;
    root        /home/vestacpuser/web/example.com/public_html;
    index       index.php index.html index.htm;
    access_log  /var/log/nginx/domains/example.com.log combined;
    access_log  /var/log/nginx/domains/example.com.bytes bytes;
    error_log   /var/log/nginx/domains/example.com.error.log error;

    ssl_certificate      /home/vestacpuser/conf/web/ssl.example.com.pem;
    ssl_certificate_key  /home/vestacpuser/conf/web/ssl.example.com.key;

....

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
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';

Ennen kuin käynnistät NGINX, se on hyvä ennen kuin testaa sen kokoonpano.

[root@north web]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@north web]# systemctl restart nginx

Toivon, että tämä opetusohjelma on hyödyllinen sinulle, ja jos et onnistu, jätä ongelman yksityiskohdat kommentteihin.

Intohimoinen tekniikasta, kirjoitan mielihyvällä stealthsetts.com -sivustosta alkaen vuodesta 2006. Minulla on rikas kokemus käyttöjärjestelmistä: macOS, Windows ja Linux, mutta myös ohjelmointikielissä ja bloggaamisalustoissa (WordPress) ja verkkokaupoissa (WooCommerce, Magento, Presashop).

Kotiin IT -oppaat, hyödylliset vinkit ja uutiset. Kuinka aktivoit tlsv1.3: n ninxissä. Vestacp / CentOS tai Ubuntu
Jätä kommentti