Pour éditer le wiki, il faut demander un compte à un Lapin !
Difference between revisions of "IRC/Chiffrement"
m (→TLS: Lien interwiki) |
m (ajouts de section et de quelques broutilles) |
||
Line 2: | Line 2: | ||
Cette page n'est qu'un lâche copier-coller de documentations officielles, mais bon... c'est pas un drame non plus. Ça pourrait même s'avérer utile, au final. | Cette page n'est qu'un lâche copier-coller de documentations officielles, mais bon... c'est pas un drame non plus. Ça pourrait même s'avérer utile, au final. | ||
− | + | == SASL == | |
[[wikipedia:fr:SASL|SASL]] ('''''S'''imple '''A'''uthentication and '''S'''ecurity '''L'''ayer'') est une mécanisme permettant de s'authentifier automatiquement auprès des serveurs IRC (entre autres). | [[wikipedia:fr:SASL|SASL]] ('''''S'''imple '''A'''uthentication and '''S'''ecurity '''L'''ayer'') est une mécanisme permettant de s'authentifier automatiquement auprès des serveurs IRC (entre autres). | ||
Line 16: | Line 16: | ||
|} | |} | ||
− | + | == TLS == | |
[[wikipedia:fr:Transport_Layer_Security|TLS]] ('''''T'''ransport '''L'''ayer '''S'''ecurity'') est un protocole cryptographique permettant de chiffrer une connexion d'un bout à l'autre et d'en authentifier les données y circulant. | [[wikipedia:fr:Transport_Layer_Security|TLS]] ('''''T'''ransport '''L'''ayer '''S'''ecurity'') est un protocole cryptographique permettant de chiffrer une connexion d'un bout à l'autre et d'en authentifier les données y circulant. | ||
Vous devrez avoir installé les paquets {{Deb|OpenSSL}} et {{Deb|CA-Certificates}} au préalable. | Vous devrez avoir installé les paquets {{Deb|OpenSSL}} et {{Deb|CA-Certificates}} au préalable. | ||
+ | === Préparer le terrain === | ||
+ | |||
+ | ==== Générer son certificat ==== | ||
Pour simplifier la suite, créez un dossier provisoire et rendez-y-vous : | Pour simplifier la suite, créez un dossier provisoire et rendez-y-vous : | ||
Line 34: | Line 37: | ||
cat <votre pseudo>.cert <votre pseudo>.key '''>''' <votre pseudo>.pem | cat <votre pseudo>.cert <votre pseudo>.key '''>''' <votre pseudo>.pem | ||
+ | |||
+ | ==== Extraire l'empreinte ==== | ||
Vous devrez par la suite renseigner votre empreinte auprès du service NickServ. Enregistrez-donc provisoirement la sortie de cette commande dans un fichier : | Vous devrez par la suite renseigner votre empreinte auprès du service NickServ. Enregistrez-donc provisoirement la sortie de cette commande dans un fichier : | ||
openssl x509 -sha1 -noout -fingerprint -in <votre pseudo>.pem | sed -e 's/^.*=//;s/://g;y/ABCDEF/abcdef/' '''>''' fingerprint | openssl x509 -sha1 -noout -fingerprint -in <votre pseudo>.pem | sed -e 's/^.*=//;s/://g;y/ABCDEF/abcdef/' '''>''' fingerprint | ||
+ | |||
+ | ==== Pour finir ==== | ||
Vous pouvez désormais détruire le certificat et sa clé séparés, puis définir les permissions d'accès aux fichiers restants : | Vous pouvez désormais détruire le certificat et sa clé séparés, puis définir les permissions d'accès aux fichiers restants : | ||
Line 43: | Line 50: | ||
shred --iterations=35 --zero --remove <votre pseudo>.{cert,key} | shred --iterations=35 --zero --remove <votre pseudo>.{cert,key} | ||
chmod 600 * | chmod 600 * | ||
+ | |||
+ | {{Attention|Notez que <code>shred</code> <small>(paquet {{Deb|coreutils}})</small> se fie à une supposition très importante : le système de fichiers écrase les données en place. Il s'agit de la procédure traditionnelle, mais beaucoup de systèmes de fichiers modernes ne satisfont pas cette supposition. Plus de détails dans le manuel de <code>shred</code>...}} | ||
---- | ---- | ||
Line 52: | Line 61: | ||
|} | |} | ||
− | + | == Tor == | |
{{Attention|Certains réseaux IRC bloquent les connexions passant par Tor, à l'instar de Freenode. Ils fournissent cependant souvent un service caché auquel il faut se connecter depuis Tor (voir '''[http://freenode.net/irc_servers.shtml#tor Freenode ''via'' Tor]''').}} | {{Attention|Certains réseaux IRC bloquent les connexions passant par Tor, à l'instar de Freenode. Ils fournissent cependant souvent un service caché auquel il faut se connecter depuis Tor (voir '''[http://freenode.net/irc_servers.shtml#tor Freenode ''via'' Tor]''').}} | ||
Line 71: | Line 80: | ||
|} | |} | ||
− | + | == OTR == | |
{{Attention|Pour fonctionner, OTR doit être présent chez chaque interlocuteur.}} | {{Attention|Pour fonctionner, OTR doit être présent chez chaque interlocuteur.}} | ||
Line 90: | Line 99: | ||
<br /> | <br /> | ||
<span style="display:block; text-align: center;">'''ou'''</span> | <span style="display:block; text-align: center;">'''ou'''</span> | ||
− | + | ||
''2. Être en mesure d'effectuer une connexion directe de pair à pair avec le client de votre interlocuteur, afin d'engager un [[wikipedia:Key-agreement protocol|accord de clé]] (ce qui vous sera peut-être impossible, en fonction de la configuration du NAT et du pare-feu de votre réseau).'' | ''2. Être en mesure d'effectuer une connexion directe de pair à pair avec le client de votre interlocuteur, afin d'engager un [[wikipedia:Key-agreement protocol|accord de clé]] (ce qui vous sera peut-être impossible, en fonction de la configuration du NAT et du pare-feu de votre réseau).'' | ||
</blockquote> | </blockquote> | ||
Line 102: | Line 111: | ||
|} | |} | ||
− | + | == SILC == | |
Dès qu'on en aura le besoin, promis. | Dès qu'on en aura le besoin, promis. |
Revision as of 15:38, 2 August 2013
Dans la mesure où vous souhaiteriez sécuriser vos échanges sur les réseaux IRC, voici quelques pistes vers lesquelles s'orienter. Cette page n'est qu'un lâche copier-coller de documentations officielles, mais bon... c'est pas un drame non plus. Ça pourrait même s'avérer utile, au final.
Contents
SASL
SASL (Simple Authentication and Security Layer) est une mécanisme permettant de s'authentifier automatiquement auprès des serveurs IRC (entre autres).
Il vous est fortement recommandé de configurer l'authentification par SASL en premier lieu si vous songez à protéger vos correspondances avec les outils qui suivent.
Bien sûr, ça marchera mieux si vous avez enregistré votre pseudo auprès du service approprié (NickServ
dans la plupart des cas).
WeeChat | Irssi | XChat | Pidgin |
TLS
TLS (Transport Layer Security) est un protocole cryptographique permettant de chiffrer une connexion d'un bout à l'autre et d'en authentifier les données y circulant.
Vous devrez avoir installé les paquets OpenSSL
et CA-Certificates
au préalable.
Préparer le terrain
Générer son certificat
Pour simplifier la suite, créez un dossier provisoire et rendez-y-vous :
user@host:~$ mkdir <dossier provisoire> && cd !#^
Puis générez votre certificat TLS comme ceci :
openssl req -newkey rsa:4096 -days 730 -x509 -keyout <votre pseudo>.key -out <votre pseudo>.cert
Le certificat sera valide durant deux ans, paramétré via l'option -days 730
. Modifier donc cette option pour allonger ou raccourcir cette durée.
Entrez ensuite une phrase de passe, confirmez-la, puis concaténez votre certificat et sa clé dans un même fichier PEM :
cat <votre pseudo>.cert <votre pseudo>.key > <votre pseudo>.pem
Extraire l'empreinte
Vous devrez par la suite renseigner votre empreinte auprès du service NickServ. Enregistrez-donc provisoirement la sortie de cette commande dans un fichier :
openssl x509 -sha1 -noout -fingerprint -in <votre pseudo>.pem | sed -e 's/^.*=//;s/://g;y/ABCDEF/abcdef/' > fingerprint
Pour finir
Vous pouvez désormais détruire le certificat et sa clé séparés, puis définir les permissions d'accès aux fichiers restants :
shred --iterations=35 --zero --remove <votre pseudo>.{cert,key} chmod 600 *
WeeChat | Irssi | XChat | Pidgin |
Tor
Tor (The Onion Router) est un réseau mondial acentré de routeurs organisés en couches, appelés « nœuds de l’oignon », dont la tâche est de transmettre de manière anonyme des flux TCP. C’est ainsi que tout échange Internet basé sur TCP peut être rendu anonyme en utilisant Tor.
Évidemment, vous devrez avoir installé et configuré Tor
comme il se doit.
Notez qu'il n'est pas nécessaire d'utiliser TLS pour chiffrer des échanges transitant par Tor si le serveur dispose d'un service caché (accessible par une adresse terminant par .onion), Tor s'occupant déjà de ça.
Si ce n'est pas le cas, il vous l'est en revanche vivement recommandé.
WeeChat | Irssi | XChat | Pidgin |
OTR
OTR (Off-the-Record) est un autre protocole cryptographique vous permettant lui aussi de chiffrer les échanges avec votre correspondant. Il intègre également un mécanisme d'authentification par échange de clés.
Extraits de la FAQ du site officiel
- En quoi est-ce différent du greffon pidgin-encryption
- Le greffon pidgin-encryption fournit chiffrement et authentification, mais pas le déni plausible ou la confidentialité persistante. Si un attaquant ou un virus accèdent à votre machine, toutes vos conversations passées chiffrées par pidgin-encryption seront rétroactivement compromise. De plus, tous les messages étant signés numériquement, il est difficile de réfuter les propos que vous avez tenu : ce n'est pas ce que nous voulons pour une conversation censée être privée.
- En quoi est-ce différent de SILC
- SILC se base sur un réseau de serveurs complètement isolé et son propre protocole réseau. Dans certains environnements, tels que ceux disposant d'un pare-feu ou d'une configuration d'entreprise, où un protocole propriétaire de messagerie instantanée est peut-être utilisé, SILC pourrait ne pas être disponible. De plus, en exécution normale, tous les messages SILC sont partagés avec le serveur SILC ; si vous désirez envoyer des messages qui ne pourront être lus que par votre correspondant, vous devrez :
1. Partager un secret au préalable (ce qui est gênant pour la confidentialité persistante).
ou2. Être en mesure d'effectuer une connexion directe de pair à pair avec le client de votre interlocuteur, afin d'engager un accord de clé (ce qui vous sera peut-être impossible, en fonction de la configuration du NAT et du pare-feu de votre réseau).
WeeChat | Irssi | XChat | Pidgin |
SILC
Dès qu'on en aura le besoin, promis.