TLS 1.3 és una versió del protocol Transport Layer Security (TLS) que es va publicar el 2018 com a estàndard proposat a RFC 8446. Ofereix millores de seguretat i rendiment respecte als seus predecessors.
Aquesta guia mostrarà com habilitar TLS 1.3 mitjançant el servidor web Apache a Debian 10.
Requisits
- Instància Vultr Cloud Compute (VC2) que executa Debian 10 (Buster).
- Un nom de domini vàlid i degudament configurats
A/ AAAA/ CNAMEregistres DNS del seu domini.
- Un certificat TLS vàlid. En obtindrem un de Let's Encrypt.
- Versió d'Apache
2.4.36o superior.
- Versió OpenSSL
1.1.1o superior.
Abans que comencis
Comproveu la versió de Debian.
lsb_release -ds # Debian GNU/Linux 10 (buster)
Creeu un non-rootcompte d'usuari nou amb sudoaccés i canvieu-hi.
adduser johndoe --gecos "John Doe" usermod -aG sudo johndoe su - johndoe
NOTA : Substituïu-lo johndoepel vostre nom d'usuari .
Configura la zona horària.
sudo dpkg-reconfigure tzdata
Assegureu-vos que el vostre sistema estigui actualitzat.
sudo apt update && sudo apt upgrade -y
Instal·leu els paquets necessaris.
sudo apt install -y zip unzip curl wget git socat
Instal·leu el acme.shclient i obteniu un certificat TLS de Let's Encrypt
Instal·leu acme.sh.
sudo mkdir /etc/letsencrypt git clone https://github.com/Neilpang/acme.sh.git cd acme.sh sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com cd ~ source ~/.bashrc
Comproveu la versió.
/etc/letsencrypt/acme.sh --version # v2.8.2
Obteniu certificats RSA i ECDSA per al vostre domini.
# RSA sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength 2048 # ECC/ECDSA sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength ec-256
NOTA: Substituïu les example.comordres pel vostre nom de domini.
Creeu directoris intel·ligents per emmagatzemar els vostres certificats i claus. Farem servir /etc/letsencrypt.
sudo mkdir -p /etc/letsencrypt/example.com sudo mkdir -p /etc/letsencrypt/example.com_ecc
Instal·leu i copieu certificats a /etc/letsencrypt.
# RSA sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem # ECC/ECDSA sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem
Després d'executar les ordres anteriors, els vostres certificats i claus estaran a les ubicacions següents:
- RSA :
/etc/letsencrypt/example.com
- ECC / ECDSA :
/etc/letsencrypt/example.com_ecc
Instal·leu Apache
Apache va afegir suport per a TLS 1.3 a la versió 2.4.36. El sistema Debian 10 inclou Apache i OpenSSL que admeten TLS 1.3 des de la caixa, de manera que no cal crear una versió personalitzada.
Baixeu i instal·leu la darrera branca 2.4 d'Apache mitjançant el aptgestor de paquets.
sudo apt install -y apache2
Comproveu la versió.
sudo apache2 -v # Server version: Apache/2.4.38 (Debian) # Server built: 2019-04-07T18:15:40
Configureu Apache per a TLS 1.3
Ara que hem instal·lat Apache amb èxit, estem preparats per configurar-lo per començar a utilitzar TLS 1.3 al nostre servidor.
Primer, activeu el mòdul SSL.
sudo a2enmod ssl
Reinicieu Apache.
sudo systemctl restart apache2
Executeu sudo vim /etc/apache2/sites-available/example.com.conf, i ompliu el fitxer amb la configuració bàsica següent.
<IfModule mod_ssl.c> <VirtualHost *:443> ServerName example.com SSLEngine on SSLProtocol all -SSLv2 -SSLv3 # RSA SSLCertificateFile "/etc/letsencrypt/example.com/fullchain.pem" SSLCertificateKeyFile "/etc/letsencrypt/example.com/private.key" # ECC SSLCertificateFile "/etc/letsencrypt/example.com_ecc/fullchain.pem" SSLCertificateKeyFile "/etc/letsencrypt/example.com_ecc/private.key" </VirtualHost> </IfModule>
Desa el fitxer i surt.
Activeu el nou fitxer de configuració enllaçant el fitxer al sites-enableddirectori.
sudo a2ensite example.com.conf
Comproveu la configuració.
sudo apachectl configtest
Torna a carregar Apache.
sudo systemctl reload apache2
Obriu el vostre lloc mitjançant el protocol HTTPS al vostre navegador web. Per verificar TLS 1.3, podeu utilitzar les eines de desenvolupament del navegador o el servei SSL Labs. Les captures de pantalla següents mostren la pestanya de seguretat de Chrome amb TLS 1.3 en acció.

![Com habilitar TLS 1.3 a Apache a Debian 10]()
Heu activat correctament TLS 1.3 a Apache al vostre servidor Debian 10. La versió final de TLS 1.3 es va definir l'agost de 2018, així que no hi ha millor moment per començar a adoptar aquesta nova tecnologia.