Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
irssi [Le 16/09/2020, 13:46] – [Fichier torrc minimal pour IRC] 82.221.131.102irssi [Le 17/10/2020, 16:46] (Version actuelle) – [Fichier torrc minimal pour IRC] 82.221.131.5
Ligne 1: Ligne 1:
 +{{tag>console communication messagerie_instantanée off-the-record_messaging}}
 +----
 +{{ irssi_logo.svg.png?80nolink| Logo du logiciel Irssi}}
  
 +
 +====== Irssi ======
 +
 +Irssi est un [[wpfr>Client_IRC|client]] [[wpfr>Internet_Relay_Chat|IRC]] de type [[wpfr>Interface_en_ligne_de_commande|CLI]]. C'est une alternative à [[:Xchat]], [[Konversation]], [[:Weechat]] et à [[http://www.bitchx.com/|BitchX]].
 +Le nom Irssi vient de l'argot finnois « Irssi » signifiant [[wpfr>Internet_Relay_Chat|IRC]].
 +
 +----
 +
 +===== Installation =====
 +
 + [[:tutoriel:comment_installer_un_paquet|Installez le paquet:]] **[[apt>irssi|irssi]]**.
 +
 +----
 +
 +===== Configuration =====
 +
 +Comme la plupart des applications sous Linux Irssi se configure via l'édition d'un fichier texte.
 +
 +[[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] : <code bash> ~/.irssi/config </code>.
 +
 +<note tip>Le [[wpfr>Fichier_et_répertoire_caché#Sous_Unix_et_Linux|répertoire caché]] :<code bash>~/.irssi</code> sera créé lors du premier lancement de Irssi.</note> 
 +
 +----
 +
 +
 +===== Utilisation =====
 +
 +Irssi se lance dans un [[terminal|terminal]], via la commande :
 +
 +  irssi
 +
 +La fenêtre se compose de trois parties :
 +
 +
 +  * Tout au dessus : Le sujet de la salle de discussion où vous vous trouvez actuellement.
 +  * L'écran de dialogue proprement dit.
 +  * La barre de statut, tout en bas ((Il y'a, chez moi, une deuxième barre pour [[Screen]].)).
 +
 +
 +{{applications:irssi.png?736}}
 +
 +----
 +
 +==== Commandes ====
 +
 +^ Action ^ Commande ^
 +|Se connecter à son premier serveur IRC.|<code bash>/connect irc.votreserveur.tld</code>|
 +|Se connecter à un autre serveur ((Vous restez connecté au premier.)). Note: une fois que vous êtes connecté à plusieurs serveurs, vous pouvez passer de l'un à l'autre en revenant sur la fenêtre « status » et en appuyant sur CTRL+X.|<code bash>/connect irc.autreserveur.tld</code>|
 +|Se connecter au canal #ubuntu-fr.|<code bash>/join #ubuntu-fr</code>|
 +|Quitter irssi.|<code bash>/quit</code>|
 +|Afficher le 'Topic' (sujet de la salle où vous vous trouvez).|<code bash>/topic</code>|
 +|Affiche les noms des personnes dans la salle ((Il existe un script qui //tente// de faire une barre latérale pour Irssi http://wouter.coekaerts.be/site/irssi/nicklist.)).|<code bash>/names</code>|
 +|Parler en privé à un utilisateur.| <code bash>/msg nom_d_utilisateur message</code>|
 +|Se déplacer dans les différentes fenêtres.| **CTRL P**  : pour Previous, précédent **CTRL N** : pour Next, suivant ALT x : où x est le numéro de la fenêtre que vous voulez afficher((**ALT SHIFT** & : pour revenir aux messages serveurs.)).|
 +|Passer en 'non disponible' (away)((Les messages où vous êtes nommés seront copiés dans la fenêtre statut du serveur.)).| <code bash>/away [raison]</code>|
 +| Redevenir 'disponible'.|<code bash>/back</code>|
 +|Permet de voir si la machine d'un utilisateur est connectée au serveur, par exemple celui de irc.freenode.org, et de voir son temps de réponse.|<code bash>/ping</code>|
 +| Permet d'obtenir des renseignements sur x utilisateurs.|<code bash>/whois</code>|
 +| Permet de contacter une personne en privé.|<code bash>/query</code>|
 +| Affiche la liste des channels de l'ircnet sélectionné.|<code bash>/list</code>|
 +| Affiche la liste des gens présents sur #debian.|<code bash>/who #debian</code>|
 +| Met en couleur le nick de la personne qui prononce le mot.|<code bash>/hilight mot</code>|
 +| Liste les fichiers disponibles par dcc.|<code bash>/dcc list</code>|
 +| Récupère un fichier envoyé par dcc.|<code bash>/dcc get nick</code>|
 +| Envoyer un fichier par dcc.|<code bash>/dcc send nick nom_du_fichier</code>|
 +| Avoir la liste des commandes.|<code bash>/help</code>|
 +| Avoir de l'aide sur une commande particulière.|<code bash>/help nom_de_la_commande</code>|
 +
 +Pour exécuter des commandes automatiquement au démarrage de irssi, il s'agit de copier les commandes en question dans le fichier startup(('/' n'est pas nécessaire ;-).)) que vous pouvez créer en saisissant dans un [[terminal|terminal]]:<code bash>touch ~/.irssi/startup</code>
 +
 +Vous pouvez également lancer des scripts au démarrage de votre Irssi. Dans notre exemple, le script portant le nom **script1.pl** et **script2.pl** s'exécuteront à chaque lancement de votre [[wpfr>Client_IRC|client]] Irssi.|Dans un [[terminal|terminal]] :<code bash>mkdir ~/.irssi/scripts/autorun/ && ln -s ~/.irssi/scripts/script1.pl ~/.irssi/scripts/autorun/ && ln -s ~/.irssi/scripts/script2.pl ~/.irssi/scripts/autorun/</code>
 +
 +----
 +
 +===== Configuration de Irssi =====
 +
 +==== Explications ====
 +
 +  - <file bash>Ligne dans le fichier de configuration ~/.irssi/config.</file>
 +    - <code>Les explications.</code>
 +    - <code bash>Les commandes équivalentes (à saisir dans votre client IRC Irssi).</code>
 +
 +----
 +
 +==== Configuration ====
 +
 +  - <file bash>"fe-common/core" = { theme = "fear2.theme"; term_charset = "UTF-8"; autolog = "yes"; completion_strict = "yes"; };</file>  
 +    - <code>Utiliser le charset utf-8.</code> 
 +    - <code bash>/set term_charset utf-8</code>
 +  - <file bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; timestamp_format = "%D %H:%M:%S"; server_reconnect_time = "1min"};</file> 
 +    - <code>Attribuer un pseudonyme sur lequel vous serez connu sur le canal.</code> 
 +    - <code bash>/nick votre_pseudonyme</code>
 +  - <file bash>channels = ( { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; } );</file> 
 +    - <code>Joindre le canal IRC #ubuntu-fr de manière automatique, sous le chatnet freenode.</code>
 +    - <code bash>/channel add -auto #ubuntu-fr freenode</code>
 +  - <file bash>servers = ( { address = "irc.freenode.org"; chatnet = "freenode"; port = "6667"; autoconnect = "yes"; term_type = "utf-8"; } );</file> 
 +    - <code>Se connecter automatiquement au round-robin : irc.freenode.org sans SSL sur le port 6667.</code> 
 +    - <code bash>/server add -auto -network freenode -port 6667 irc.freenode.org</code>
 +  - <file bash>servers = ( { address = "irc.freenode.org"; chatnet = "freenode"; port = "7000"; use_ssl = "yes"; ssl_verify = "yes"; ssl_capath = "/etc/ssl/certs"; autoconnect = "yes"; term_type = "utf-8"; } );</file> 
 +    - <code>Se connecter automatiquement au round-robin : 'irc.freenode.org' avec SSL sur le port 7000.</code> 
 +    - <code bash>/server add -auto -ssl_verify -ssl_capath /etc/ssl/certs -ssl -network freenode irc.freenode.net 7000</code>
 +  - <file bash>servers = ( { address = "irc.freenode.org"; chatnet = "freenode"; port = "7000"; use_ssl = "yes"; ssl_verify = "yes"; ssl_capath = "/etc/ssl/certs"; autoconnect = "yes"; term_type = "utf-8"; } );</file>
 +  - <file bash>Freenode = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; sasl_mechanism = "plain"; sasl_username = "username"; sasl_password = "password_en_clair"; };</file> 
 +    - <code>Se connecter automatiquement au round-robin : 'irc.freenode.org' avec SASL et le support SSL sur le port 7000 (Attention votre mot de passe sera stocké en clair dans votre sous-dossier ~/.irssi/).</code> 
 +    - <code bash>/server add -auto -ssl -ssl_verify -ssl_capath /etc/ssl/certs -network freenode -port 7000 irc.freenode.net</code>  
 +    - <code bash>/network add -sasl_mechanism plain -sasl_username <username> -sasl_password <password> freenode</code>
 +  - <file bash>freenode = { type = "IRC"; nick = "pseudonyme"; user_name= "nom_d'utilisateur_à_afficher"; real_name = "nom_réel_à_afficher"; autosendcmd = "/msg NickServ identify password;wait 8000" }; };</file> {{ client_irc_mal_configure_.jpg?nolink=690}} 
 +    - Configuration du pseudonyme souhaité et permettre l'identification de son pseudonyme enregistré auprès de NickServ, et patienter un laps de temps. L'option **wait** 8000 permet d'attendre un laps de temps après l'identification auprès de NickServ avant de joindre un canal IRC. Ceci est pratique pour ne pas divulguer son adresse Internet, pour un utilisateur ayant un cloak sous Freenode, et ayant un canal IRC ou des canaux, en auto-join. Il existe aussi le script cap_sasl_fail.pl qui va vous permettre de vous déconnecter, si vous êtes pas identifié auprès de NickServ sous Freenode. Nous verrons pas ici comment configurer cap_sasl_fail.pl. 
 +    - <code bash>/network add -nick "pseudonyme" -user "nom_d_utilisateur_à_afficher" -realname "nom_réel_à_afficher" -autosendcmd "/msg NickServ IDENTIFY password ;wait 8000" freenode</code>
 +  - <file bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; proxy_address = "1.2.3.4"; proxy_port = "4242"; use_proxy = "yes"; };</file> 
 +    - <code>Utiliser un proxy SOCKS.</code>
 +    - <code bash>/set proxy_address 1.2.3.4</code>
 +    - <code bash>/set proxy_port 4242</code> 
 +    - <code bash>/set use_proxy ON</code>
 +  - <file bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; use_proxy = "yes"; proxy_address = "1.2.3.4"; proxy_port = "4242"; proxy_string = "CONNECT %s:%d HTTP/1.0\012\012"; proxy_string_after = "conn %s %d"; };</file> 
 +    - <code>Utiliser Irssi derrière un proxy HTTP.</code> 
 +    - <code bash>/set use_proxy ON</code> 
 +    - <code bash>/set proxy_address 1.2.3.4</code>
 +    - <code bash>/set proxy_port 4242</code>
 +    - <code bash>/set -clear proxy_string</code>
 +    - <code bash>/set proxy_string_after conn %s %d</code>
 +    - <code bash>/eval set proxy_string CONNECT %s:%d HTTP/1.0\n\n</code>
 +  - <file bash>settings = { "fe-common/core" = { beep_when_window_active = "yes"; beep_when_away = "yes"; beep_msg_level = "HILIGHT MSGS DCC DCCMSGS"; }; }; hilights = ( { text = "ton_nick"; nick = "yes"; word = "no"; } );</file> 
 +    - <code>Avoir le bip système sur son pseudonyme.</code> 
 +    - <code bash>/set beep_when_window_active on</code>
 +    - <code bash>/set beep_when_away on</code>
 +    - <code bash>/set bell_beeps on</code>
 +    - <code bash>/set beep_msg_level HILIGHT MSGS DCC DCCMSGS</code>
 +    - <code bash>/hilight ton_nick</code>
 +  - <file bash>ignores = ( { level = "PARTS QUITS"; channels = ( "#nom_channel1", "#nom_du_channel2" ); } );</file> 
 +    - <code>Ignorer les déconnexions intempestives sur votre client Irssi.</code> 
 +    - <code bash>/ignore -channels #nom_channel1,#nom_du_channel2 * PARTS QUITS</code>
 +  - <file bash>ignores = ( { level = "JOINS"; channels = ( "#nom_channel1", "#nom_channel2" ); } );</file> 
 +    - <code>Ignorer l'affichage des utilisateurs qui se connectent sur le channel.</code>
 +    - <code bash>/ignore -channels #nom_channel1,#nom_channel2 * JOINS</code>
 +  - <file bash>ignores = ( { level = "JOINS PARTS QUITS"; channels = ( "#nom_channel1", "#nom_channel2" ); } );</file> 
 +    - <code>Ignorer l'affichage des connexions, et des déconnexions des utilisateurs.</code> 
 +    - <code bash>/ignore -channels #nom_channel1,#nom_channel2 * JOINS PARTS QUITS</code>
 +  - <code bash>ignores = ( { level = "ACTIONS"; pattern = "is (away|gone|back)"; regexp = "yes"; } );</code> 
 +    - <code>Ignorer les messages d'absence public.</code> 
 +    - <code bash>/ignore -regexp -pattern "is (away|gone|back)" * ACTIONS</code>
 +  - <code bash>ignores = ( { mask = "*!*@IPV4/IPV6/CLOAK/RDNS"; level = "ALL"; replies = "yes"; } );</code>
 +    - <code>Ignorer totalement un utilisateur.</code>
 +    - <code bash>/ignore -replies *!*@IPV4/IPV6/CLOAK/RDNS ALL</code>
 +
 +
 +----
 +
 +===== Thèmes et couleurs =====
 +
 +Le thème par défaut de Irssi ne concorde pas du tout avec le thème de gnome-terminal : il est prévu pour un [[terminal|terminal]] sur fond noir. En particulier, le pseudo utilisateur est en gras blanc sur blanc, et les notifications en gras jaune sur blanc.
 +
 +Pour y remédier, on peut simplement remplacer ces couleurs dans le thème par défaut. Par exemple, y remplacer toutes les occurrences de %W (blanc gras) par %B (bleu gras) et de %Y (jaune gras) par %R (rouge gras).
 +
 +Veuillez lancer un [[terminal|terminal]] avec pour contenu :
 +
 +<code bash>
 +cp /usr/share/irssi/themes/default.theme /usr/share/irssi/themes/default.theme.bak
 +sed -i 's/%W/%B/g' /usr/share/irssi/themes/default.theme
 +sed -i 's/%Y/%R/g' /usr/share/irssi/themes/default.theme</code>
 +
 +Pour prendre en compte les changements, il faut soit charger un autre thème puis recharger le thème par défaut, soit relancer irssi.
 +
 +On peut également installer un nouveau thème, en copiant dans le répertoire :
 +<code bash>$HOME/.irssi</code> 
 +un fichier *.theme téléchargé par exemple [[http://www.irssi.org/themes|ici]]. 
 +
 +Pour charger le nouveau thème, il suffit d'utiliser dans irssi la commande :
 +  /set theme nomduthème
 +Pour revenir au thème par défaut :
 +  /set theme default
 +
 +Enfin, la méthode la plus radicale consiste à désactiver les couleurs :
 +  /set colors off
 +
 +----
 +
 +===== Plugins =====
 +
 +----
 +
 +==== Irssi-proxy ====
 +
 +Irssi + screen est un duo redoutable, mais pas toujours efficace si vous êtes très loin du serveur (lag lorsque vous tapez) ou que vous voulez utiliser un autre [[wpfr>Client_IRC|client IRC]].
 +
 +C'est là qu'intervient le plugin proxy de Irssi.
 +
 +Veuillez lancer votre [[wpfr>Client_IRC|client]] Irssi avec pour contenu :
 +
 +  /load proxy
 +Va charger le module de proxy.
 +
 +**Attention** : il n'y a pas encore de mot de passe donc mettez-en un en place :
 +  /set irssiproxy_password votre_mot_de_passe
 +Il peut être différent de votre mot de passe [[https://freenode.net/|Freenode]] (et c'est même conseillé -- c'est juste pour vous connecter au proxy).
 +
 +Ensuite vous devez définir un [[wpfr>Port_(logiciel)|port]] sur lequel vous connecterez votre [[wpfr>Client_IRC|client]] [[wpfr>Internet_Relay_Chat|IRC]]:
 +
 +  /set irssiproxy_ports freenode=XXXX
 +où XXXX est un nombre pour le [[wpfr>Port_(logiciel)|port]] [[wpfr>Transmission_Control_Protocol|TCP]] (assurez-vous que ce [[wpfr>Port_(logiciel)|port]] est accessible de l'extérieur, i.e. qu'il n'est pas bloqué par un pare-feu).
 +
 +
 +-----
 +
 +==== Irssi-OTR (chiffrement) ====
 +Chiffrer vos conversations avec [[off-the-record_messaging#irssi-otr|Irssi-OTR]].
 +
 +----
 +
 +===== Irssi over Tor (Freenode) =====
 +
 +
 +==== Pré-requis ====
 +  * Disposer des [[:sudo|droits d'administration]].
 +  * Disposer d'une connexion à Internet configurée et activée.
 +  * [[:tutoriel:comment_installer_un_paquet|Installez les paquets:]] [[apt>tor|tor]],[[apt>socat|socat]],[[apt>nyx|nyx]]((Si vous souhaitez monitorer votre trafic Tor.)),[[apt>irssi|irssi]]((m(.)).
 +  * Avoir un pseudonyme [[freenode#enregistrer_un_pseudo_sur_freenode|enregistré]] auprès de [[https://freenode.net|Freenode]].
 +  * Stopper le [[wpfr>Daemon_(informatique)|daemon]] [[tor|tor]] pour se faire, veuillez ouvrir un [[terminal|terminal]] avec pour contenu :
 +
 +<code bash>sudo systemctl stop tor.service</code>
 +
 +<note important> Il peut être utile de vous référer à la page [[https://metrics.torproject.org/rs.html#advanced|Recherche avancée]]((Dans la partie **Flag**, favoriser le choix **Stable**.)).</note>
 +{{wiki.jpg?640nolink| Stable Node}}
 +
 +----
 +
 +==== Fichier torrc et lancement de socat et génération du certificat et ajout de votre empreinte SHA-1 à votre pseudonyme Freenode ====
 +
 +----
 +
 +==== Fichier torrc minimal pour IRC ===
 +<note warning>Exclure des nodes de votre configuration Tor peut impacter votre anonymat plus ou moins gravement. 
 +À vous de choisir, si il est judicieux ou non dans votre cas, de prendre le risque d'utiliser des nodes maintenus par une [[wpfr>Services_de_renseignement|agence de renseignement]](([[wpfr>Five_Eyes|Five Eyes]].)) au prix d'un léger impact de votre anonymat. La configuration ci-bas n'a pas la prétention d'exclure **l'intégralité** des [[wpfr>Services_de_renseignement|agences de renseignement]] dans le monde.</note>
 +
 +<note tip>Voici un exemple d'un fichier **torrc** fonctionnel pour [[https://freenode.net|Freenode]] :</note>
 +FIXME Il **ne semble** pas possible((Voir avec le logiciel [[apt>nyx|nyx]].)) de setter l'option **ExcludeExitNodes**, ou encore **ExitNodes avec les URL'S [[https://doc.ubuntu-fr.org/irssi#lancement_de_socat_a_travers_un_screen|.onion]] !**.
 +
 +<note tip>Pour un résultat optimal avec ce fichier torrc, veillez à ne pas utiliser la commande : <code>tor -f /etc/tor/torrc</code> mais : <code>sudo systemctl start tor</code> pour démarrer votre daemon.</note> <note tip>Pour connaître le statut de votre daemon : <code>systemctl status tor@default</code></note>
 +
 +<code bash torrc-minimal>
 +
 +############################################################################################################
 +##torrc par BeAvEr pour Freenode.                                                                          #
 +############################################################################################################
 +HardwareAccel 1                                                                                            #
 +############################################################################################################
 +RunAsDaemon 1                                                                                              #
 +############################################################################################################
 +DataDirectory /var/lib/tor                                                                                 #
 +############################################################################################################
 +user debian-tor                                                                                            #
 +############################################################################################################
 +GeoIPExcludeUnknown 1                                                                                      #
 +############################################################################################################
 +## ⬇️ Pour un résultat optimal avec ExcludeNodes, ne surtout pas décommenter cette option !. ⬇️              # 
 +## ⬇️ Cette option ne fonctionne pas ou bien mal avec les URL'S .onion, voir avec le logiciel Nyx. ⬇️        #
 +#StrictNodes 1                                                                                             #
 +############################################################################################################                                                                                          
 +## ⬇️ https://fr.wikipedia.org/wiki/Five_Eyes  ⬇️                                                            #
 +## https://www.developpez.com/actu/309598/L-alliance-Five-Eyes-poursuit-ses-efforts-pour-briser-le-        #
 +## chiffrement-de-bout-en-bout-utilise-par-les-entreprises-technologiques-l-Inde-et-le-Japon-se-joignent-  #
 +## au-mouvement/                                                                                           #
 +ExcludeNodes {fr}, {ca}, {nz}, {uk}, {au}, {us}, {in}, {jp}, default, Unnamed, unnamed                     #
 +############################################################################################################
 +LongLivedPorts 6697, 7000                                                                                  #
 +############################################################################################################
 +## ⬇️ Avoid disk writes, are there any drawbacks to this ?.⬇️                                                #
 +AvoidDiskWrites 1                                                                                          #
 +############################################################################################################
 +## ⬇️➡️ ssh -D 8123 -f -C -q -N -p votre_port_ssh beaver@ip_distante :).⬇️                                    #
 +#Socks5Proxy 127.0.0.1:8123                                                                                #
 +############################################################################################################
 +TestSocks 1                                                                                                #
 +############################################################################################################
 +## ⬇️ https://trac.torproject.org/projects/tor/wiki/doc/TorBrowser/Sandbox/Linux. ⬇️                         #
 +## ⬇️ Si vous souhaitez utiliser l'option et que vous obtenez une erreur, veuillez recommenter l'option. ⬇️  #
 +## ⬇️ (Attention l'option sandbox n'est pas sécurisée, privilégier Docker par exemple !): ⬇️                 #
 +Sandbox 1                                                                                                  #
 +############################################################################################################
 +## ⬇️ Vous souhaitez utiliser le logiciel Nyx ? : ⬇️                                                         #
 +ControlPort 9051                                                                                           #
 +############################################################################################################
 +</code>
 +----
 +
 +==== Lancement de socat à travers un screen ====
 +
 +----
 +
 +=== Pré-requis ===
 + 
 +  * Disposer des [[:sudo|droits d'administration]].
 +  * Disposer d'une connexion à Internet configurée et activée.
 +  * [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] [[apt>screen]].
 +  * [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] [[apt>socat]].
 +
 +----
 +
 +<note important>Si vous utilisez Ubuntu 18.04 (Beaver Bionic), merci de visiter l'adresse https://2019.www.torproject.org/docs/debian.html.en, et d'ajouter le dépôt en question. Le binaire de Tor des dépôts Ubuntu Beaver Bionic 18.04, ne reçoit plus aucune mise à jour !.</note>
 +
 +Pour que votre client Irssi se lance avec le **.onion** de Freenode, il nous faudra utiliser la commande [[apt>socat]], à travers le logiciel [[:screen]]. Dans notre exemple nous allons utiliser le port **4242** de [[apt>socat]], et le port **9050** de [[tor|tor]], pour le **.onion** de Freenode **ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion** :
 +
 +Si vous avez une version **>** ou **=** à la version [[https://freenode.net/news/torv3|0.3.5]] de [[tor|tor]], veuillez saisir dans votre [[:terminal]] :
 +<code>screen -S socat</code>
 +Et :
 +<code bash socat>socat TCP4-LISTEN:4242,fork SOCKS4A:localhost:ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion:6697,socksport=9050</code>
 +
 +Nous relançons ensuite votre [[wpfr>​Daemon_(informatique)|daemon]] [[tor|tor]]. Veuillez saisir dans votre [[terminal|terminal]] :
 +
 +<code bash>sudo systemctl start tor.service</code>
 +
 +----
 +
 +=== Génération du certification client et extraction de l'empreinte SHA-1 pour Freenode ===
 +
 +Nous devons ensuite générer un certificat client pour [[https://freenode.net|Freenode]], veuillez saisir dans votre [[terminal|terminal]] :
 +
 +<code bash>openssl req -x509 -sha256 -new -newkey rsa:4096 -days 700 -nodes -out FreenodeTor.pem -keyout FreenodeTor.pem</code>
 +
 +Nous créons ensuite un dossier **certs** dans votre [[wpfr>Fichier_et_répertoire_caché#Sous_Unix_et_Linux|sous-dossier]] **.irssi** et nous allons transférer votre certificat **FreenodeTor.pem** fraîchement généré dans le dossier **certs**. Veuillez saisir dans votre [[terminal|terminal]] :
 +
 +<code bash>mkdir /home/$USER/.irssi/certs && mv *.pem /home/$USER/.irssi/certs</code>
 +
 +Il nous faut ensuite extraire l'[[wpfr>Fonction_de_hachage_cryptographique|empreinte]] [[wpfr>SHA-1|SHA-1]] de votre certificat **FreenodeTor.pem**. Pour se faire, veuillez saisir dans un [[terminal|terminal]] la commande suivante :
 +
 +<code bash>openssl x509 -in ~/.irssi/certs/FreenodeTor.pem -outform der | sha1sum -b | cut -d' ' -f1</code>
 +
 +----
 +
 +=== Ajout de l'empreinte SHA-1 à votre pseudonyme Freenode ===
 +
 +Veuillez copier votre [[wpfr>Fonction_de_hachage_cryptographique|fingerprint]] de votre certificat **FreenodeTor.pem**, et ensuite veuillez ouvrir votre [[wpfr>Client_IRC|client]] Irssi, et y saisir :
 +
 +<code bash>/connect irc.freenode.org</code>
 +<code bash>/nick <votre_pseudonyme_enregistré_auprès_de_freenode></code>
 +<code bash>/msg nickserv identify <votre_mot_de_passe></code>
 +<code bash>/msg nickserv CERT ADD <votre_fingerprint></code>
 +
 +Configurons maintenant votre [[wpfr>Client_IRC|client]] Irssi, pour utiliser [[tor|Tor]] LOL.
 +
 +----
 +
 +==== Configuration de votre pseudonyme avec SASL ====
 +
 +<note warning>
 +  * Le support [[wpfr>Simple_Authentication_and_Security_Layer|SASL]] est disponible à partir de la version [[https://github.com/irssi/irssi/releases/tag/0.8.18|0.8.18]] de Irssi.
 +  * Attention, votre mot de passe [[wpfr>Simple_Authentication_and_Security_Layer|SASL]] sera stocké en [[wpfr>Mot_de_passe#Capture_d'un_mot_de_passe_«_en_clair_»|clair]], dans votre fichier: <code bash>config</code>
 +</note>
 +
 +Veuillez démarrer votre [[wpfr>Client_IRC|client]] Irssi et y insérer :
 +<code bash>/network add -sasl_username <votre_pseudonyme_freenode> -sasl_password <votre_mot_de_passe> -sasl_mechanism EXTERNAL FreenodeTor</code>
 +
 +----
 +
 +==== Ajout du réseau Tor à votre client Irssi ====
 +
 +Dans votre [[wpfr>Client_IRC|client]] Irssi y insérer :
 +
 +<code bash>/server add -auto -ssl -ssl_cert ~/.irssi/certs/FreenodeTor.pem -net FreenodeTor localhost 4242</code>
 +
 +Nous ignorons les requêtes de type [[wpfr>Client-To-Client_Protocol|CTCP]] et [[wpfr>Direct_Client-to-Client|DCC]] pour ne pas divulguer votre IP originale :
 +
 +<code bash>/ignore * CTCPS</code>
 +<code bash>/ignore * DCC</code>
 +<code bash>/save</code>
 +<code bash>/quit</code>
 +
 +Il vous suffira ensuite de relancer votre client irssi pour vous connecter au **.onion** de Freenode, via la commande :
 +
 +<code>irssi</code>
 +
 +
 +---- 
 +
 +===== Xirssi =====
 +
 +<note warning>Le projet semble être abandonné.</note>
 +
 +{{:xirssi.jpg?736}}
 +
 +Si vous suivez ce tutoriel, vous connaissez le [[wpfr>Client_IRC|client]] [[wpfr>Internet_Relay_Chat|IRC]] en [[wpfr>Interface_en_ligne_de_commande|CLI]] Irssi, ici, vous allez voir comment avoir Irssi mais en version [[wpfr>GTK|GTK]], pour se faire on va devoir compiler Irssi et Xirssi.
 +
 +----
 +
 +==== Compilation de Irssi ====
 +
 +Veuillez ouvrir un [[terminal|terminal]] avec les commandes suivantes :
 +
 +<note>Nous installons les [[wpfr>dependance_logicielle|dépendances logicielles]] pour Irssi.</note> 
 +
 +  sudo apt-get build-dep irssi 
 +
 +<note>Ensuite, nous récupérons le tar.gz de Irssi via le site officiel.</note>
 +
 +  wget http://www.irssi.org/files/irssi-0.8.17.tar.gz
 +
 +<note>Ensuite, nous décompressons le tar.gz irssi-0.8.17.tar.gz et on se place dans le dossier irssi-0.8.17.</note>
 +
 +  tar -xzvf irssi-0.8.17.tar.gz && cd irssi-0.8.17
 +
 +<note>Nous lançons la compilation de Irssi.</note>
 +
 +  ./configure --with-perl --with-glib2 ## L'option --with-glib2 n'est plus disponible, mais ce fut le cas à l'époque.
 +  make
 +  sudo make install
 +  
 +Nous vérifions votre version de Irssi via la commande suivante :
 +
 +  irssi --version
 +
 +Et on obtient ceci :
 +
 +  irssi 0.8.17 (20141011 1044)
 +
 +Votre Irssi est compilé, au tour de Xirssi.
 +
 +----
 +
 +==== Compilation de Xirssi ====
 +
 +
 +<note>On installe le paquet subversion et on récupère les sources de Xirssi.</note>
 +
 +Veuillez ouvrir un [[terminal|terminal]] avec les commandes suivantes :
 +
 +  sudo apt-get install subversion
 +  svn co http://svn.irssi.org:8080/repos/xirssi/trunk/ xirssi
 +
 +<note>On se place dans le dossier xirssi, et on lance la compilation :-D.</note>
 +  cd xirssi
 +  ./autogen.sh
 +  ./configure --with-irssi=/patch/irssi
 +  make
 +  sudo make install
 +
 +Si tout est ok, vous devriez avoir votre binaire Xirssi :
 +
 +{{:xirssi1.jpg?736}}
 +
 +----
 +
 +===== Aller plus loin =====
 +
 +Il y a beaucoup de commandes disponibles pour [[wpfr>Internet_Relay_Chat|IRC]], encore quelques unes sur le site de <del>[[wpfr>Internet_Relay_Chat|Wikipedia]]</del>((La page contient que des informations concernant le protocole IRC, et les flags.)).
 +
 +  - Lire la doc officielle, en anglais : http://www.irssi.org/documentation.
 +  - Si vous voulez utiliser de manière plus efficace Irssi vous pouvez changer les raccourcis claviers pour les principales commandes (toujours dans //~/.irssi/config//).
 +  - Vous pouvez utiliser un script, des tonnes ici : https://scripts.irssi.org/ Les scripts ''adv_windowlist'',  ''nickolor'', et ''urlgrab'' sont particulièrement utiles.
 +  - Vous pouvez écrire votre propre script en [[wpfr>Perl_(langage)|Perl]] et le diffuser : http://juerd.nl/site.plp/irssiscripttut.
 +
 +----
 +
 +===== Liens =====
 +
 +  * http://totalement.geek.oupas.fr/article/2007/07/20/irssi-un-client-irssi-en-mode-texte
 +  * http://blog.creaone.fr/post/2010/11/08/Proxy-IRC-pour-Ubuntu
 +
 +----
 +
 +//Contributeurs : Rédigée par Ju, refonte de l'intégralité de la documentation par [[:utilisateurs:beaver|BeAvEr]] depuis [[https://doc.ubuntu-fr.org/irssi?do=revisions&first=160|2010]].//