Prérequis :
- Savoir utiliser un client SSH (Putty, kitty…)
- Savoit utiliser un éditeur texte vim (Ou utiliser le mode Edition du client sftp WinSCP) (on va essayer de minimiser ce dernier point)
Joie, vous venez enfin d’intégrer le Tracker super privé que vous convoittiez, ou la dernière grosse board DDL …
Mais Horreur, le logiciel de Download / BitTorrent de votre Nas ne parvient pas à se connecter aux serveurs en question.
Tracker: [Peer certificate cannot be authenticated with given CA certificates]
Error: Unable to establish a secure connection
Pourtant le navigateur web de mon PC se connecte sans problème en HTTPS et je peux consulter le contenu disponible.
- Alors où est le problème ?
Il y a de fortes chances que le problème concerne le certificat de sécurité SSL/TLS utilisé par les sites en question.
Et que ce certificat provienne de l’Autorité de Certification Let’s Encrypt (CA qui fournit des certificats gratuits aux sites web).
Let’s Encrypt utilisait dans sa chaîne de certification un Certificat Intermédiaire qui a expiré en Septembre 2021. Rien de problématique puisque maintenant il fournit un nouveau certificat pour la validation et qu’une très grande partie des Systèmes d’Exploitation ont intégré ces nouveaux Certificats Root Let’s Encrypt dans leur bundle de certificats Root CA.
Malheureusement ce n’est pas le cas pour certains matériels anciens qui n’auront pas de mise à jour ainsi que pour certains Nas.
C’est le cas pour des Nas QNAP (O.S QTS à jour), il n’y a pas eu de mise à jour du bundle de certificats Root CA.
- Comment savoir si mon Nas est concerné ?
Il faut ouvrir une session admin (root) à distance sur le Nas par SSH et exécuter la commande suivante
wget https://framadrive.org
Votre Nas est concerné si vous avez ce retour
Connecting to framadrive.org|94.130.9.91|:443... connected.
ERROR: cannot verify framadrive.org's certificate, issued by ‘CN=R3,O=Let's Encrypt,C=US’:
Issued certificate has expired.
- Alors que peut-on faire ?
On va ajouter au Nas les certificats Let’s Encrypt nécessaires en suivant les commandes suivantes
(on est toujours en session à dustance par SSH)
# on cree un dossier de stockage
mkdir ~/lets-encrypt-certs
cd ~/lets-encrypt-certs
# on recupere les certificats
curl --ipv4 --insecure -O https://letsencrypt.org/certs/isrgrootx1.pem
curl --ipv4 --insecure -O https://letsencrypt.org/certs/isrg-root-x2.pem
# on modifie le nom des fichiers pour les rendre compatible ave openssl
for filename in *pem; do cp $filename `openssl x509 -hash -noout -in $filename`.0; done;
# on ajoute les fichiers de certificat au bundle de Certificats Root CA du systeme
cp *.0 /etc/ssl/certs/
cd
Et maintenant on valide la modification
wget https://framadrive.org
Résultat, Code 200, tout va bien
Reusing existing connection to framadrive.org:443.
HTTP request sent, awaiting response... 200 OK
Length: 25337 (25K) [text/html]
Saving to: ‘index.html’
Dorénavant tous les softwares affectés par ce problèmes vont fonctionner correctement. Software comme wget, curl, transmission, …
J’ai utilisé le site framadrive.org comme exemple pour respecter les urls illégales, je peux indiquer que ce problème concerne également au moins 2 trackers
- sharewood.*** (site généraliste français)
- re*******.*** (site de musique suisse)
Remarques importantes :
1 - Ni le forum ni moi-même ne sont responsables de vos actions sur votre Nas, si vous ne comprennez pas ce aque vous êtes en train de faire alors ne le faite pas !
2 - Vu le fonctionnement du système QTS, cette modififcation sera écrasée après redémarrage du Nas
Je remercie fortement la personne qui m’a permis de tester ce HOW-TO sur son Nas QNAP
Nota : Je ferais un update quand je pourrais tester une solution pour rendre la modification permanente après redémarrage du Nas.