Pour éditer le wiki, il faut demander un compte à un Lapin !

IRC/Chiffrement/WeeChat

From Le L∞p's Wiki
< IRC‎ | Chiffrement(Redirected from IRC/Sec/WeeChat)
Jump to: navigation, search

SASL

Les commandes qui suivent (y compris celles des sections ci-dessous) sont à taper dans le tampon core. Pour ajouter un réseau dans votre configuration, entrez /help server.

Chiffrement du mot de passe :

# Défaut : "plain" (texte en clair)
# : "dh-blowfish" (texte chiffré)
# : "external" (certificat TLS côté client)
/set irc.server.freenode.sasl_mechanism "dh-blowfish" ou "external"

Votre mot de passe, puis votre nom d'utilisateur ou d'utilisatrice :

/set irc.server.freenode.sasl_password "<votre mot de passe>"
/set irc.server.freenode.sasl_username "<votre pseudo>"

Sauvegardez, puis rechargez votre fichier de configuration :

/save
/reload

TLS

Déplacez maintenant votre fichier PEM et son empreinte vers le dossier ~/.weechat/ssl/ .

Indiquez ici le chemin vers le certificat des autorités de confiance :

# Défaut : "%h/ssl/CAs.pem" (%h → ~/.weechat)
# Alt : "/etc/ssl/certs/ca-certificates.crt"
/set weechat.network.gnutls_ca_file "<chemin vers le certificat>"

Freenode over TLS :

/set irc.server.freenode.addresses "chat.freenode.net/6697"

Activez le chiffrement :

/set irc.server.freenode.ssl "on"

Indiquez ici le chemin vers votre certificat TLS pour authentifier automatiquement votre pseudo auprès du serveur :

/set irc.server.freenode.ssl_cert "%h/ssl/<votre pseudo>.pem"

Indiquez leur taille pour l'échange de clés Diffie-Hellman (de mémoire, Freenode n'accepte pas les clés de taille supérieure à 1024 bits) :

# Défaut : "2048"
/set irc.server.freenode.ssl_dhkey_size "1024"

Activez la vérification du certificat du serveur :

# Défaut : "on"
/set irc.server.freenode.ssl_verify null

À présent, sauvegardez puis rechargez votre configuration. Connectez-vous à Freenode et communiquez à NickServ votre empreinte :

/msg NickServ cert add <votre empreinte>

Enfin, effacez le fichier fingerprint créé précédemment à l'aide de la commande shred -zun 35 fingerprint ou, plus sagement, stockez-le sur un support sécurisé.

Tor

Créez un proxy socks5 pour Tor (le nom/IP ainsi que le port dépendent de votre configuration), ajouter un nouveau serveur, puis activer l'utilisation du proxy :

/proxy add tor socks5 127.0.0.1 9050
/server add freenode-tor p4fsi4ockecnea7l.onion
/set irc.server.freenode-tor.proxy "tor"

Pour finir, si vous êtes amené-e à conserver les deux configurations pour accéder à Freenode (TLS et Tor), pensez bien à ajuster vos autoconnect comme il se doit.

OTR

Attention.png Attention : Le greffon weechat-otr est publié sans garantie et n'a pas encore été soumis à un audit de sécurité. De plus, n'oubliez pas de mettre à jour régulièrement vos copies locales de ces dépôts.


Commencez par installer weechat-plugins.

Rapatriez ensuite potr, le module Python requis par weechat-otr, et le script weechat-otr lui-même :

mkdir <dossier provisoire> && cd !#^
git clone git://github.com/afflux/pure-python-otr.git
git clone git://github.com/mmb/weechat-otr.git
cd pure-python-otr/ && sudo python setup.py install && cd ..

Copiez le script weechat_otr.py dans votre répertoire de configuration WeeChat, puis placez un lien symbolique vers le script dans le répertoire qui va bien pour qu'il puisse être chargé automatiquement à chaque démarrage du programme :

cp <dossier provisoire>/weechat-otr/weechat_otr.py ~/.weechat/python/
ln -s ~/.weechat/python/weechat_otr.py ~/.weechat/python/autoload/ 

Retournez sur le tampon core de WeeChat. La commande /reload devrait vous charger le script. Vous pouvez constater que la commande /otr est désormais disponible.

Icone information.png Note : Rappelez-vous que les échanges ne pourront être chiffrer que si chacun·e dispose du greffon approprié pour son client de messagerie instantanée.

L'indicateur d'état

Pour être signifié-e de l'état des échanges OTR, vous pouvez ajouter l'objet [otr] dans votre barre de statut comme ceci :

/set weechat.bar.status.items "[time],[buffer_count],[buffer_plugin],buffer_number+:+buffer_name+{buffer_nicklist_count}+buffer_filter,[lag],[hotlist],completion,scroll,[otr]"

Vous vous retrouverez donc avec une barre de statut qui pourrait ressembler à ceci :

[21:02] [7] [irc/freenode] 7:naar [Act: 5(8), 3(3), 4(2)] [OTR:!SEC]

Définition des états :

  • [,!]LOG : Enregistrement du journal[1] (en l'occurence, de la conversation)
  • [,!]AUTH : Authentification
  • [,!]SEC : Chiffrement

  1. Acessible à ~/.weechat/log/irc.<serveur>.<correspondant·e>.weechatlog

Définir sa politique

Comme vous pourrez le constater vous-même en tapant /set otr*, certaines options d'affichage et de politique peuvent être configurées librement. Cette politique établie simplement quelques conditions quant à l'échanges de messages avec vos correspondants.

La politique globale peut être définie par les commandes :

/set otr.policy.default.* "<on ou off>"

Vous pouvez également appliquer une politique propre à chaque correspondant. Pour cela, ouvrez une fenêtre d'échange privée avec l'utilisateur en question, puis définissez la politique à suivre :

/query <utilisateur>
/otr policy <options> <on ou off>

<options> représente l'une des trois suivantes :

  • allow_v2 : Autoriser l'usage de la v2 du protocole OTR.
  • require_encryption : Refuser l'envoi de messages non chiffrés.
  • send_tag : Annoncer votre utilisation d'OTR grâce à l'espace blanche (the whitespace).

Pour cette dernières option, il s'agit là d'attacher un tag, l'espace blanche, à chacun de vos messages en texte clair à destination de votre correspondant lui indiquant votre aptitude à communiquer par le biais du protocole OTR. Certains clients sont configurés de telle sorte qu'ils n'accepteront d'entamer une conversation avec OTR qu'à la réception de cette demande explicite. Certains serveurs IRC les « aspire », tout simplement. Sachez-le.
Pour la petite info, ce tag peut être envoyé manuellement : ?OTRv2? au 6 12 12 à votre destinataire dans votre tampon privé.

Par défaut, définies par la politique globale, les valeurs de ces options sont respectivement on, off et off. À vous de voir si cela vous convient ou non et de l'adapter en conséquence.

Démarrer une conversation privée

Pour amorcer le chiffrement de vos messages, dans le tampon de discussion privée, entrez :

/otr start

À chacune de vos premières communications via OTR avec un nouveau correspondant, vous serez amené·e à confirmer son authentification. Vous tomberez donc face à quelque chose comme ça :

Vous pouvez vérifier que cette personne est bien celle qu'elle prétend être par l'une des manières suivantes :

1) Vérifier vos empreinte via un canal sécurisé (par mails chiffrés par exemple)
 Votre empreinte : <votre empreinte>
 Empreinte du pair : <son empreinte>
 Utilisez alors la commande : /otr trust <pseudo du pair> <réseau>

2) Secret préalablement partagé connu des deux pairs :
   /otr smp ask <pseudo du pair> <réseau> <secret>

3) Secret préalablement partagé connu des deux pairs avec une question :
   /otr smp ask <pseudo du pair> <réseau> <secret> <question>

Une fois la discussion terminée, entrez :

/otr finish