Como ativar o TLS 1.3 em apache e nginx
- 2988
- 174
- Maurice Champlin
TLS 1.3 é a versão mais recente do Segurança da camada de transporte (TLS) protocolo e é baseado no 1 existente.2 especificações com o padrão IETF adequado: RFC 8446. Ele fornece segurança mais forte e melhorias de desempenho mais altas em relação aos seus antecessores.
Neste artigo, mostraremos um guia passo a passo para obter um certificado TLS válido e permitir o último TLS 1.3 Protocolo de versão em seu domínio hospedado em Apache ou Nginx Servidores da Web.
Requisitos:
- Apache versão 2.4.37 ou mais.
- Nginx versão 1.13.0 ou maior.
- Openssl versão 1.1.1 ou maior.
- Um nome de domínio válido com registros DNS configurados corretamente.
- Um certificado TLS válido.
Instale o certificado TLS de Let's Encrypt
Para obter um grátis Certificado SSL de Vamos criptografar, você precisa instalar Acme.sh cliente e também poucos pacotes necessários no sistema Linux, como mostrado.
# apt install -y socat git [no debian/ubuntu] # dnf install -y socat git [em rhel/centos/fedora] # mkdir/etc/letSencrypt # clone git https: // github.com/neilpang/acme.sh.Git # CD Acme.sh # ./acme.SH - -Instalação -Home/etc/letSencrypt --AccountEmail [Email Protected] # CD ~ #/etc/letSencrypt/acme.sh --issue -Standalone -Home /etc /letsencrypt -d Exemplo.com --ocsp-must-staple --keylength 2048 #/etc/letsencrypt/acme.sh --issue -Standalone -Home /etc /letsencrypt -d Exemplo.com --ocsp-must-staple --KeyLength EC-256
OBSERVAÇÃO: Substituir exemplo.com
No comando acima com seu nome de domínio real.
Depois de instalar o certificado SSL, você pode prosseguir para ativar TLS 1.3 em seu domínio, conforme explicado abaixo.
Ativar TLS 1.3 no nginx
Como mencionei nos requisitos acima, que TLS 1.3 é suportado a partir de Nginx 1.13 versão. Se você estiver executando a versão mais antiga do NGINX, precisará primeiro atualizar para a versão mais recente.
# apt install nginx # yum install nginx
Verifica a Nginx versão e o OpenSSL versão contra a qual o nginx foi compilado (verifique se o nginx a versão é pelo menos 1.14 e OpenSSL versão 1.1.1).
# nginx -v
Saída de amostra
Versão nginx: nginx/1.14.1 Construído por GCC 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) construído com OpenSSL 1.1.1 FIPS 11 set 2018 TLS SNI Suporte habilitado…
Agora comece, ative e verifique a instalação do Nginx.
# SystemCtl Iniciar nginx.Serviço # SystemCtl Ativar nginx.serviço # status systemctl nginx.serviço
Agora abra a configuração do nginx vhost /etc/nginx/conf.d/exemplo.com.conf
Arquivo usando seu editor favorito.
# vi/etc/nginx/conf.d/exemplo.com.conf
e localize ssl_protocols
diretiva e anexar TLSV1.3 no final da linha, como mostrado abaixo
servidor Ouça 443 SSL HTTP2; Ouça [::]: 443 ssl http2; Exemplo server_name.com; # Rsa ssl_certificate/etc/letSencrypt/exemplo.com/fullchain.cer; ssl_certificate_key/etc/letSencrypt/exemplo.com/exemplo.com.chave; # Ecdsa ssl_certificate/etc/letsencrypt/exemplo.com_ecc/fullchain.cer; ssl_certificate_key/etc/letSencrypt/exemplo.com_ecc/exemplo.com.chave; ssl_protocols tlsv1.2 TLSV1.3; ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA2055: ECDHA-ECDSA-A-ECDS101305: ECDA-ECDSA-A-ECDS101305: ECDA-ECDA-ASES101305: ECDA-ECDSA-ASES101305: ECDA-ECDSA-ASES101305: ECDA-ECDSA-A-ECDS1013: 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;
Finalmente, verifique a configuração e recarregue o nginx.
# nginx -t # SystemCtl Reload nginx.serviço
Ativar TLS 1.3 em Apache
Começando de Apache 2.4.37, você pode tirar vantagem de TLS 1.3. Se você estiver executando a versão mais antiga de Apache, você precisa primeiro atualizar para a versão mais recente.
# apt install apache2 # yum install httpd
Depois de instalado, você pode verificar o Apache e a versão OpenSSL em que o Apache foi compilado.
# httpd -v # versão openssl
Agora comece, ative e verifique a instalação do Nginx.
-------------- No Debian/Ubuntu -------------- # SystemCtl Iniciar o Apache2.Serviço # SystemCtl Ativar Apache2.Serviço # Systemctl Status Apache2.serviço -------------- Em RHEL/CENTOS/FEDORA -------------- # SystemCtl Iniciar httpd.Serviço # SystemCtl Ativar httpd.Serviço # Status Systemctl Httpd.serviço
Agora abra o arquivo de configuração do host virtual Apache usando seu editor favorito.
# vi/etc/httpd/conf.d/vhost.conf ou # vi/etc/apache2/apache2.conf
e localize ssl_protocols
diretiva e anexar TLSV1.3 no final da linha, como mostrado abaixo.
Sslengine em # rsa ssl_certificate/etc/letSencrypt/exemplo.com/fullchain.cer; ssl_certificate_key/etc/letSencrypt/exemplo.com/exemplo.com.chave; # Ecdsa ssl_certificate/etc/letsencrypt/exemplo.com_ecc/fullchain.cer; ssl_certificate_key/etc/letSencrypt/exemplo.com_ecc/exemplo.com.chave; 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/vive/exemplo.com/cert.PEM SSLCERtificateKeyFile/etc/letSencrypt/Live/exemplo.com/privky.PEM SSLCERtificateChainFile/etc/letSencrypt/Live/exemplo.com/cadeia.PEM ServerAdmin [Email Protected] ServerName WWW.exemplo.com serveralias exemplo.com #documentroot/data/httpd/htdocs/exemplo.com/documentroot/data/httpd/htdocs/exemplo_hueman/ # Localizações de arquivos de log Loglevel warn errorLog/var/log/httpd/exemplo.com/httpSerror.Log CustomLog "|/usr/sbin/rotatelogs/var/log/httpd/exemplo.com/httpsaccess.registro.%Y-%m-%d 86400 "combinado
Por fim, verifique a configuração e recarregue o Apache.
-------------- No Debian/Ubuntu -------------- # apache2 -t # SystemCtl Reload Apache2.serviço -------------- Em RHEL/CENTOS/FEDORA -------------- # httpd -t # systemctl recarregar httpd.serviço
Verificar o site está usando o TLS 1.3
Depois de configurar através de um servidor da web, você pode verificar se o seu site está com as mangas de mão TLS 1.3 protocolo usando ferramentas de desenvolvimento do navegador Chrome em Chrome 70+ versão.
Verifique TLS 1.3 protocolo no domínioIsso é tudo. Você permitiu com sucesso TLS 1.3 Protocolo no seu domínio hospedado nos servidores da Web Apache ou Nginx. Se você tiver alguma dúvida sobre este artigo, fique à vontade para perguntar na seção de comentários abaixo.