Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
irssi [Le 02/08/2017, 02:47] 185.9.19.40 |
irssi [Le 30/09/2018, 08:26] beaver [Pré-requis] |
||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
====== Irssi ====== | ====== Irssi ====== | ||
- | Irssi est un programme de chat sur IRC en mode console. C'est une alternative à [[:Xchat]] et [[konversation]] et [[:weechat]] et [[http://www.bitchx.com/|BitchX]]. | + | 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]]. | ||
---- | ---- | ||
Ligne 12: | Ligne 13: | ||
===== Installation ===== | ===== Installation ===== | ||
- | [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>irssi|irssi]]** | + | [[:tutoriel:comment_installer_un_paquet|Installez le paquet:]] **[[apt>irssi|irssi]]**. |
---- | ---- | ||
Ligne 18: | Ligne 19: | ||
===== Configuration ===== | ===== Configuration ===== | ||
- | Comme la plupart des applications sous Linux irssi se configure via l'édition d'un fichier texte. | + | 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]] « ~/.irssi/config ». | + | [[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] : <code bash> ~/.irssi/config </code>. |
- | Note: le répertoire ~/.irssi sera créé lors du premier lancement d'irssi. | + | <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> |
---- | ---- | ||
- | ==== Serveurs ==== | ||
- | <note warning>Il n'est pas conseillé de modifier le fichier ~/.irssi/config directement à partir du fichier de configuration, allez plutôt dans la section "Commandes équivalentes."</note> | ||
- | Ce fichier est découpé en plusieurs parties, les serveurs à joindre au démarrage : | + | ===== Utilisation ===== |
- | servers = ( | + | Irssi se lance dans un [[terminal|terminal]], via la commande : |
- | { | + | |
- | address = "irc.freenode.org"; | + | |
- | chatnet = "freenode"; | + | |
- | port = "6667"; | + | |
- | autoconnect = "yes"; | + | |
- | term_type = "utf-8"; | + | |
- | } | + | |
- | ); | + | |
- | pour le ssl: | + | irssi |
- | servers = ( | + | La fenêtre se compose de trois parties : |
- | { | + | |
- | 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"; | + | |
- | } | + | |
- | ); | + | |
- | + | ||
- | ---- | + | |
- | + | ||
- | ==== Commandes équivalentes ==== | + | |
- | <note>Se connecter automatiquement au round robin irc.freenode.org sans SSL sur le port 6667:</note> | ||
- | <code>/server add -auto -network freenode -port 6667 irc.freenode.org</code> | + | * Tout au dessus : Le sujet de la salle de discussion où vous vous trouvez actuellement. |
- | + | * L'écran de dialogue proprement dit. | |
- | <note>Se connecter automatiquement au round robin irc.freenode.org avec SSL sur le port 7000:</note> | + | * La barre de statut, tout en bas ((Il y'a, chez moi, une deuxième barre pour [[Screen]].)). |
- | <code>/server add -auto -ssl_verify -ssl_capath /etc/ssl/certs -ssl -network freenode irc.freenode.net 7000</code> | ||
- | | ||
- | <note>Se connecter automatiquement au round robin irc.freenode.org avec SASL et le support SSL sur le port 6697: | ||
- | <note warning>Attention votre mot de passe sera stocké en clair dans votre dossier ~/.irssi/</note> | + | {{applications:irssi.png?736}} |
- | + | ||
- | + | ||
- | <note>le support SASL est disponible à partir de la version 0.8.18((https://github.com/irssi/irssi/releases/tag/0.8.18))</note> | + | |
- | + | ||
- | </note> | + | |
- | + | ||
- | <code>/server add -auto -ssl -ssl_verify -ssl_capath /etc/ssl/certs -network freenode -port 6697 irc.freenode.net</code> | + | |
- | + | ||
- | /network add -sasl_mechanism plain -sasl_username <username> -sasl_password <password> freenode | + | |
- | + | ||
- | <note>Utiliser le charset utf-8:</note> | + | |
- | + | ||
- | <code>/set term_charset utf-8</code> | + | |
- | + | ||
- | Voilà au lancement d'irssi, vous serez sur un serveur freenode en utf-8 ((les salles de discussion migrent petit à petit vers utf-8, #ubuntu-fr est en utf-8 par exemple)) | + | |
---- | ---- | ||
- | ==== Salles de discussion ==== | + | ===== Configuration de Irssi ===== |
- | <note warning>Il n'est pas conseillé de modifier le fichier ~/.irssi/config directement à partir du fichier de configuration, allez plutôt dans la section "Commandes équivalentes."</note> | ||
- | Les salles de discussion à joindre au lancement : | + | ^ Le fichier de configuration((Fichier ~/.irssi/config.)) ^ Les explications ^ Les commandes équivalentes((À saisir dans un [[terminal|terminal]], ou bien dans votre [[wpfr>Client_IRC|client]] Irssi.)) ^ |
- | + | |Inexistant.|Se connecter à son premier serveur IRC.|<code bash>/connect irc.votreserveur.tld</code>| | |
- | channels = ( | + | |Inexistant.|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>| |
- | { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; } | + | |<code bash>"fe-common/core" = { theme = "fear2.theme"; term_charset = "UTF-8"; autolog = "yes"; completion_strict = "yes"; };</code>| Utiliser le charset utf-8.|<code bash>/set term_charset utf-8</code>| |
- | ); | + | |<code bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; timestamp_format = "%D %H:%M:%S"; server_reconnect_time = "1min"};</code>|Attribuer un pseudonyme sur lequel vous serez connu sur le canal.| <code bash>/nick votre_pseudonyme</code>| |
- | + | |Inexistant.|Se connecter au canal #ubuntu-fr.|<code bash>/join #ubuntu-fr</code>| | |
- | La syntaxe est relativement simple : | + | |<code bash>channels = ( { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; } );</code>| Joindre le canal IRC #ubuntu-fr de manière automatique, sous le chatnet [[https://freenode.net/|freenode]].|<code bash>/channel add -auto #ubuntu-fr freenode</code>| |
- | + | |Inexistant.| Quitter irssi.|<code bash>/quit</code>| | |
- | channels = ( | + | |<code bash>servers = ( { address = "irc.freenode.org"; chatnet = "freenode"; port = "6667"; autoconnect = "yes"; term_type = "utf-8"; } );</code>|Se connecter automatiquement au [[wpfr>Round-robin_(informatique)|round-robin]] : irc.freenode.org sans SSL sur le port 6667.| <code bash>/server add -auto -network freenode -port 6667 irc.freenode.org</code>| |
- | { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; }, | + | |<code 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"; } );</code>| Se connecter automatiquement au [[wpfr>Round-robin_(informatique)|round-robin]] : <code bash>irc.freenode.org</code> avec [[wpfr>Secure_Sockets_Layer|SSL]] sur le [[wpfr>Port_(logiciel)|port]] 7000. | <code bash>/server add -auto -ssl_verify -ssl_capath /etc/ssl/certs -ssl -network freenode irc.freenode.net 7000</code> | |
- | { name = "#autre_chan"; chatnet = "freenode"; autojoin = "Yes"; }, | + | |<code 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"; } );</code><code bash>Freenode = { type = "IRC"; max_kicks = "1"; max_msgs = "4"; max_whois = "1"; sasl_mechanism = "plain"; sasl_username = "username"; sasl_password = "password_en_clair"; };</code>|Se connecter automatiquement au [[wpfr>Round-robin_(informatique)|round-robin]] : <code bash>irc.freenode.org</code> avec [[wpfr>Simple_Authentication_and_Security_Layer|SASL]] et le support [[wpfr>Secure_Sockets_Layer|SSL]] sur le [[wpfr>Port_(logiciel)|port]] 7000((Attention votre mot de passe sera stocké en [[wpfr>Mot_de_passe#Capture_d'un_mot_de_passe_«_en_clair_»|clair]] dans votre [[wpfr>Fichier_et_répertoire_caché#Sous_Unix_et_Linux|sous-dossier]] ~/.irssi/)).| <code bash>/server add -auto -ssl -ssl_verify -ssl_capath /etc/ssl/certs -network freenode -port 7000 irc.freenode.net</code> et <code bash>/network add -sasl_mechanism plain -sasl_username <username> -sasl_password <password> freenode</code> | |
- | { name = "#encore_un_autre"; chatnet = "freenode"; autojoin = "No"; } | + | |<code 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" }; };</code>| {{ client_irc_mal_configure_.jpg?nolink=550}} Configuration du pseudonyme souhaité et permettre l'identification de son pseudonyme enregistré auprès de [[wpfr>NickServ|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 [[wpfr>NickServ|NickServ]] avant de joindre un canal [[wpfr>IRC|IRC]]. Ceci est pratique pour ne pas divulguer son adresse Internet, pour un utilisateur ayant un [[https://freenode.net/kb/answer/cloaks|cloak]] sous [[https://freenode.net/|Freenode]], et ayant un canal [[wpfr>IRC|IRC]] ou des canaux, en auto-join. Il existe aussi le script [[https://github.com/irssi/scripts.irssi.org/blob/master/scripts/cap_sasl_fail.pl|cap_sasl_fail.pl]] qui va vous permettre de vous déconnecter, si vous êtes pas identifié auprès de [[wpfr>NickServ|NickServ]] sous [[https://freenode.net/|Freenode]]. Nous verrons pas ici comment configurer [[https://github.com/irssi/scripts.irssi.org/blob/master/scripts/cap_sasl_fail.pl|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>| |
- | ); | + | |Inexistant.|Afficher le 'Topic' (sujet de la salle où vous vous trouvez).|<code bash>/topic</code>| |
- | + | |Inexistant.| 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>| | |
- | ---- | + | |Inexistant.|Parler en privé à un utilisateur.| <code bash>/msg nom_d_utilisateur message</code>| |
- | + | |Inexistant.|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.)).| | |
- | ==== Commandes équivalentes ==== | + | |Inexistant.|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>| |
- | + | |Inexistant| Redevenir 'disponible'.|<code bash>/back</code>| | |
- | /channel add -auto #ubuntu-fr freenode | + | |Inexistant.|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>| |
- | /channel add -auto #autre_chan freenode | + | |Inexistant.| Permet d'obtenir des renseignements sur x utilisateurs.|<code bash>/whois</code>| |
- | /channel add -auto #encore_un_autre freenode | + | |Inexistant.| Permet de contacter une personne en privé.|<code bash>/query</code>| |
+ | |Inexistant.| Affiche la liste des channels de l'ircnet sélectionné.|<code bash>/list</code>| | ||
+ | |Inexistant.| Affiche la liste des gens présents sur #debian.|<code bash>/who #debian</code>| | ||
+ | |Inexistant.| Met en couleur le nick de la personne qui prononce le mot.|<code bash>/hilight mot</code>| | ||
+ | |Inexistant.| Liste les fichiers disponibles par dcc.|<code bash>/dcc list</code>| | ||
+ | |Inexistant.| Récupère un fichier envoyé par dcc.|<code bash>/dcc get nick</code>| | ||
+ | |Inexistant.| Envoyer un fichier par dcc.|<code bash>/dcc send nick nom_du_fichier</code>| | ||
+ | |Inexistant.| Avoir la liste des commandes.|<code bash>/help</code>| | ||
+ | |Inexistant.| Avoir de l'aide sur une commande particulière.|<code bash>/help nom_de_la_commande</code>| | ||
+ | |Inexistant.| Exécuter des commandes automatiquement au démarrage de irssi. Il vous suffit ensuite de copier les commandes en question dans le fichier startup(('/' n'est pas nécessaire ;-).)).|Dans un [[terminal|terminal]]:<code bash>touch ~/.irssi/startup</code>| | ||
+ | |<code bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; proxy_address = "1.2.3.4"; proxy_port = "4242"; use_proxy = "yes"; };</code>| Utiliser un proxy SOCKS.|<code bash>/set proxy_address <Proxy host address></code>ensuite, <code bash>/set proxy_port <port></code> ensuite, <code bash>/set use_proxy ON</code>| | ||
+ | |<code 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"; };</code>| Utiliser Irssi derrière un proxy HTTP.| <code bash>/set use_proxy ON</code> <code bash>/set proxy_address <Proxy host address></code><code bash>/set proxy_port <Proxy port></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>| | ||
+ | |Inexistant.| 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>| | ||
+ | |<code bash>settings = { core = { real_name = "pseudo"; user_name = "pseudo"; nick = "pseudo"; }; "fe-text" = { actlist_sort = "refnum"; }; "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"; } );</code>| Avoir le bip système sur son pseudonyme.|<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>| | ||
+ | |<code bash>ignores = ( { level = "PARTS QUITS"; channels = ( "#nom_channel1", "#nom_du_channel2" ); } );</code>| Ignorer les déconnexions intempestives sur votre [[wpfr>Client_IRC|client]] Irssi.|<code bash>/ignore -channels #nom_channel1,#nom_du_channel2 * PARTS QUITS</code>| | ||
+ | |<code bash>ignores = ( { level = "JOINS"; channels = ( "#nom_channel1", "#nom_channel2" ); } );</code>| Ignorer l'affichage des utilisateurs qui se connectent sur le channel.|<code bash>/ignore -channels #nom_channel1,#nom_channel2 * JOINS</code>| | ||
+ | |<code bash>ignores = ( { level = "JOINS PARTS QUITS"; channels = ( "#nom_channel1", "#nom_channel2" ); } );</code>| Ignorer l'affichage des connexions, et des déconnexions des utilisateurs.|<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>| Ignorer les messages d'absence public.|<code bash>/ignore -regexp -pattern "is (away|gone|back)" * ACTIONS</code>| | ||
---- | ---- | ||
- | ==== Identification ==== | + | ===== Thèmes et couleurs ===== |
- | <note warning>Il n'est pas conseillé de modifier le fichier ~/.irssi/config directement à partir du fichier de configuration, allez plutôt dans la section "Commandes équivalentes."</note> | + | |
- | freenode = { | + | 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. |
- | + | ||
- | type = "IRC"; | + | |
- | nick = "pseudonyme"; | + | |
- | user_name= "nom_d'utilisateur_à_afficher"; | + | |
- | real_name = "nom_réel_à_afficher"; | + | |
- | autosendcmd = "/msg NickServ identify password;wait 8000" | + | |
- | }; | + | |
- | }; | + | |
- | ==== Commande équivalente ==== | + | 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). |
- | + | ||
- | <code>/network add -nick "pseudonyme" -user "nom_d_utilisateur_à_afficher" -realname "nom_réel_à_afficher" -autosendcmd "/msg NickServ IDENTIFY password ;wait 8000" freenode</code> | + | |
- | <note tip>Le wait 8000 permet d'attendre un laps de temps après l'identification auprès de NickServ avant de joindre un canal IRC.</note> | + | 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> | ||
- | ===== Utilisation ===== | + | 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. |
- | Irssi se lance dans un terminal, via la commande : | + | On peut également installer un nouveau thème, en copiant dans le répertoire : |
- | + | <code bash>$HOME/.irssi</code> | |
- | irssi | + | un fichier *.theme téléchargé par exemple [[http://www.irssi.org/themes|ici]]. |
- | + | ||
- | 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}} | + | |
- | + | ||
- | ---- | + | |
- | + | ||
- | ===== Thèmes et couleurs ===== | + | |
- | + | ||
- | Le thème par défaut d'irssi ne concorde pas du tout avec le thème de gnome-terminal : il est prévu pour un 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) : | + | |
- | 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 | + | |
- | + | ||
- | 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 **$HOME/.irssi** 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 : | + | Pour charger le nouveau thème, il suffit d'utiliser dans irssi la commande : |
/set theme nomduthème | /set theme nomduthème | ||
Pour revenir au thème par défaut : | Pour revenir au thème par défaut : | ||
Ligne 177: | Ligne 119: | ||
---- | ---- | ||
- | ==== Désireux de lancer des scripts automatiquement à chaque démarrage de irssi ? ==== | ||
- | mkdir ~/.irssi/scripts/autorun/ | ||
- | ln -s ~/.irssi/scripts/script1.pl ~/.irssi/scripts/autorun/ | ||
- | ln -s ~/.irssi/scripts/script2.pl ~/.irssi/scripts/autorun/ | ||
- | etc... | ||
- | ---- | + | ===== Plugins ===== |
- | ==== Comment puis-je exécuter des commandes automatiquement au démarrage de irssi ? ==== | + | ==== Irssi-proxy ==== |
- | touch ~/.irssi/startup | + | 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]]. |
- | + | ||
- | <note>il vous suffit alors de copier les commandes en question dans le fichier startup, '/' n'est pas nécessaire ;).</note> | + | |
- | ---- | + | C'est là qu'intervient le plugin proxy de Irssi. |
- | ===== IRC ===== | + | Veuillez lancer votre [[wpfr>Client_IRC|client]] Irssi avec pour contenu : |
- | Pour afficher le 'Topic' (sujet de la salle où vous vous trouvez) : | + | /load proxy |
+ | Va charger le module de proxy. | ||
- | /topic | + | **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]]: | ||
- | Pour afficher 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 )) : | + | /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). | ||
- | /names | ||
- | Pour se connecter à un autre channel : | + | ----- |
- | /join #nom_du_channel | + | ==== Irssi-OTR (chiffrement) ==== |
+ | Chiffrer vos conversations avec [[off-the-record_messaging#irssi-otr|Irssi-OTR]]. | ||
- | Pour se connecter à un autre serveur ((vous restez connecté au premier)) : | + | ---- |
- | /connect irc.autreserveur.org | + | ===== Irssi over Tor (Freenode) ===== |
- | 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. | + | ==== 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>torify|torify]],[[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 : | ||
- | Pour parler en privé à un utilisateur | + | <code bash>sudo systemctl stop tor.service</code> |
- | /msg nom_d_utilisateur message | + | <note tip> |
+ | Ce tutoriel nécessite d'avoir les options **ExitNodes**((Pour y ajouter un/des relay(s) stable(s) ;-).)) et **StrictNodes 1**((Pour ne "piocher" que les nodes que vous aurez pu indiquer ;-).)) dans votre fichier **torrc**. | ||
+ | Si vous souhaitez "idle" avec votre [[wpfr>Client_IRC|client IRC]] Irssi, et donc, avoir un relay [[tor|Tor]] stable, veuillez vous référer à la page [[https://metrics.torproject.org/rs.html#toprelays|TopRelays]]((Favoriser les relays avec un **uptime** élevé ;-).)). | ||
+ | </note> | ||
- | Se déplacer dans les différentes fenétres : | + | ==== Modification du fichier torrc et génération du certificat et ajout fingerprint pseudonyme Freenode ==== |
- | CTRL P : pour Previous, précédent | + | Veuillez maintenant [[:tutoriel:comment_modifier_un_fichier|éditer]] le fichier **/etc/tor/torrc** et y ajouter à la fin : |
- | CTRL N : pour Next, suivant | + | |
- | ALT x : où x est le numéro de la fenetre que vous voulez afficher (ALT SHIFT & : pour revenir aux messages serveurs) | + | |
- | Passer en 'non disponible' (away) ((les messages ou vous êtes nommés seront copiés dans la fenetre statut du serveur)) : | + | <code bash># For Freenode IRC |
+ | mapaddress 10.8.0.9 freenodeok2gncmy.onion | ||
+ | </code> | ||
- | /away [raison] | + | <note tip>Voici un exemple d'un fichier **torrc** fonctionnel pour [[https://freenode.net|Freenode]] : |
- | Redevenir 'disponible' : | + | <code bash> |
- | + | ## Configuration file for a typical tor user | |
- | <code>/back</code> | + | # |
+ | # On Unix, Tor will look for this file in someplace like "~/.tor/torrc" or | ||
+ | # "/etc/torrc" | ||
+ | # | ||
+ | # On Windows, Tor will look for the configuration file in someplace like | ||
+ | # "Application Data\tor\torrc" or "Application Data\<username>\tor\torrc" | ||
- | ---- | + | ## Replace this with "SocksPort 0" if you don't want clients to connect. |
+ | SocksPort 9050 # what port to advertise for application connections | ||
+ | SocksBindAddress 127.0.0.1 # accept connections only from localhost | ||
+ | #SocksBindAddress 192.168.0.1:9100 # listen on a chosen IP/port | ||
- | == Via la formation Debian GNU/Linux d'Alexis de Lattre == | + | ## Entry policies to allow/deny SOCKS requests based on IP address. |
+ | ## First entry that matches wins. If no SocksPolicy is set, we accept | ||
+ | ## all (and only) requests from SocksBindAddress. | ||
+ | #SocksPolicy accept 192.168.0.1/16 | ||
+ | #SocksPolicy reject * | ||
- | [[http://formation-debian.via.ecp.fr/irc.html|Un très bon guide pour Debian et toutes les distributions derivees]] | + | ## Allow no-name routers (ones that the dirserver operators don't |
+ | ## know anything about) in only these positions in your circuits. | ||
+ | ## Other choices (not advised) are entry,exit,introduction. | ||
+ | AllowUnverifiedNodes middle,rendezvous | ||
- | * /nick : permet d'attribuer un pseudonyme sur lequel vous serez connu sur le canal. | ||
- | * /ping : 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. | ||
- | * /whois : permet d'obtenir des renseignements sur x utilisateurs. | ||
- | * /query : permet de contacter une personne en privé. | ||
- | * /list : affiche la liste des channels de l'ircnet sélectionné, | ||
- | * /who #debian : affiche la liste des gens présents sur #debian, | ||
- | * /hilight mot : met en couleur le nick de la personne qui prononce le mot, | ||
- | * /dcc list : liste les fichiers disponibles par dcc, | ||
- | * /dcc get nick : pour récupérer un fichier envoyé par dcc, | ||
- | * /dcc send nick nom_du_fichier : pour envoyer un fichier par dcc, | ||
- | * /help pour avoir la liste des commandes, | ||
- | * /help nom_de_la_commande pour avoir de l'aide sur une commande particulière, | ||
- | * /quit pour quitter irssi. | ||
- | ---- | + | ExitNodes $FINGERPRINT1,$FINGERPRINT2,$ETC,OU_IP1,IP2,ETC,OU{fr},{en},{etc} |
+ | StrictNodes 1 | ||
+ | mapaddress 10.8.0.9 freenodeok2gncmy.onion | ||
+ | AutomapHostsSuffixes .exit,.onion | ||
+ | </code> | ||
+ | </note> | ||
+ | Veuillez sauvegarder vos modifications, et nous relançons votre [[wpfr>Daemon_(informatique)|daemon]] [[tor|tor]]. Veuillez ouvrir un [[terminal|terminal]] avec pour contenu : | ||
- | ===== Plugins ===== | + | <code bash>sudo systemctl start tor.service</code> |
- | ==== Irssi-proxy ==== | + | Nous devons ensuite générer un certificat client pour [[https://freenode.net|Freenode]], veuillez saisir dans votre [[terminal|terminal]] : |
- | 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 client irc. | + | |
- | C'est là qu'intervient le plugin proxy d'irssi. | + | <code bash>openssl req -x509 -sha256 -new -newkey rsa:4096 -days 700 -nodes -out FreenodeTor.pem -keyout FreenodeTor.pem</code> |
- | /load proxy | + | 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]] : |
- | va charger le module de proxy. | + | |
- | **Attention** : il n'y a pas encore de mot de passe donc mettez-en un en place | + | <code bash>mkdir /home/$USER/.irssi/certs && mv *.pem /home/$USER/.irssi/certs</code> |
- | /set irssiproxy_password votre_mot_de_passe | + | |
- | Il peut être different de votre mot de passe freenode (et c'est même conseillé -- c'est juste pour vous connecter au proxy). | + | |
- | Ensuite vous devez definir un port sur lequel vous connecterez votre client IRC : | + | 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 : |
- | /set irssiproxy_ports freenode=XXXX | + | <code bash>openssl x509 -in ~/.irssi/certs/FreenodeTor.pem -outform der | sha1sum -b | cut -d' ' -f1</code> |
- | où XXXX est un nombre pour le port TCP (assurez-vous que ce port est accessible de l'extérieur, i.e. qu'il n'est pas bloqué par un pare-feu). | + | |
- | ---- | + | 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 : |
- | ==== Proxy HTTP ==== | + | <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> | ||
- | Pour utiliser Irssi derrière un proxy HTTP, les commandes suivantes sont nécessaires : | + | Configurons maintenant votre [[wpfr>Client_IRC|client]] Irssi, pour utiliser [[tor|Tor]] LOL. |
- | <code>/set use_proxy ON</code> | + | ==== Configuration de votre pseudonyme avec SASL ==== |
- | <code>/set proxy_address <Proxy host address></code> | + | |
- | <code>/set proxy_port <Proxy port></code> | + | |
- | <code>/set -clear proxy_string</code> | + | |
- | <code>/set proxy_string_after conn %s %d</code> | + | |
- | <code>/eval set proxy_string CONNECT %s:%d HTTP/1.0\n\n</code> | + | |
- | <note>N'est pas compatible avec une configuration SSL.</note> | + | <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> | ||
- | ==== Socks Proxy ==== | + | ==== Ajout du réseau Tor à votre client Irssi ==== |
- | Pour utiliser un proxy socks, veuillez entrer ces commandes : | + | Dans votre [[wpfr>Client_IRC|client]] Irssi y insérer : |
- | <code>/set proxy_address <Proxy host address></code> | + | <code bash>/server add -auto -ssl -ssl_cert ~/.irssi/certs/FreenodeTor.pem -net FreenodeTor 10.8.0.9 7000</code> |
- | <code>/set proxy_port <port></code> | + | Nous ignorons les requêtes de type [[wpfr>Client-To-Client_Protocol|CTCP]] pour ne pas divulguer votre IP originale : |
- | <code>/set use_proxy ON</code> | + | <code bash>/ignore * CTCPS</code> |
+ | <code bash>/save</code> | ||
+ | <code bash>/quit</code> | ||
- | ----- | + | ==== Lancement de Irssi avec Torify ==== |
- | ==== Irssi-OTR (chiffrement) ==== | + | Dans un [[terminal|terminal]], veuillez saisir la commande : |
- | Chiffrer vos conversations avec [[off-the-record_messaging#irssi-otr|Irssi-OTR]]. | + | |
- | ==== Avoir le bip système sur son pseudo ==== | + | <code bash>torify irssi 2> /dev/null</code> |
- | + | ||
- | <code>/set beep_when_window_active on</code> | + | |
- | <code>/set beep_when_away on</code> | + | |
- | <code>/set bell_beeps on</code> | + | |
- | <code>/set beep_msg_level HILIGHT MSGS DCC DCCMSGS</code> | + | |
- | <code>/hilight ton_nick</code> | + | |
- | ----- | + | {{freenodetor.jpg?nolink560}} |
- | ==== Astuces ==== | + | Vous voilà sous [[https://freenode.net|Freenode]] à travers le réseau [[tor|Tor]] ^_^. |
- | + | ||
- | <note>Vous en avez marre de voir sur votre irssi des déconnexions intempestives ? :</note> | + | |
- | <code>/ignore -channels #nom_channel1,#nom_du_channel2 * PARTS QUITS</code> | + | |
- | + | ||
- | <note>Vous pouvez également ignorer l'affichage des utilisateurs qui se connectent sur le channel :</note> | + | |
- | <code>/ignore -channels #nom_channel1,#nom_channel2 * JOINS</code> | + | |
- | + | ||
- | <note>Évidemment vous pouvez ignorer l'affichage des connexions, et des déconnexions des utilisateurs :</note> | + | |
- | <code>/ignore -channels #nom_channel1,#nom_channel2 * JOINS PARTS QUITS</code> | + | |
- | + | ||
- | <note>Ignorer les messages d'absence public :</note> | + | |
- | <code>/ignore -regexp -pattern "is (away|gone|back)" * ACTIONS</code> | + | |
---- | ---- | ||
Ligne 336: | Ligne 272: | ||
{{:xirssi.jpg?736}} | {{:xirssi.jpg?736}} | ||
- | Si vous suivez ce tutoriel, vous connaissez le client IRC en [[http://fr.wikipedia.org/wiki/Command-line_interface|CLI]] Irssi, ici, vous allez voir comment avoir Irssi mais en version [[http://fr.wikipedia.org/wiki/GTK%2B|GTK]], pour se faire on va devoir compiler Irssi et Xirssi. | + | 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. |
---- | ---- | ||
Ligne 342: | Ligne 278: | ||
==== Compilation de Irssi ==== | ==== Compilation de Irssi ==== | ||
+ | Veuillez ouvrir un [[terminal|terminal]] avec les commandes suivantes : | ||
- | <note>Nous installons les [[http://fr.wikipedia.org/wiki/D%C3%A9pendance_logicielle|dépendances logicielles]] pour Irssi.</note> | + | <note>Nous installons les [[wpfr>dependance_logicielle|dépendances logicielles]] pour Irssi.</note> |
sudo apt-get build-dep irssi | sudo apt-get build-dep irssi | ||
Ligne 361: | Ligne 298: | ||
sudo make install | sudo make install | ||
| | ||
- | Nous vérifions notre version de Irssi via la commande suivante : | + | Nous vérifions votre version de Irssi via la commande suivante : |
irssi --version | irssi --version | ||
Ligne 369: | Ligne 306: | ||
irssi 0.8.17 (20141011 1044) | irssi 0.8.17 (20141011 1044) | ||
- | Notre Irssi est compilé, au tour de Xirssi. | + | Votre Irssi est compilé, au tour de Xirssi. |
---- | ---- | ||
Ligne 377: | Ligne 314: | ||
<note>On installe le paquet subversion et on récupère les sources de Xirssi.</note> | <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 | sudo apt-get install subversion | ||
Ligne 391: | Ligne 330: | ||
{{:xirssi1.jpg?736}} | {{:xirssi1.jpg?736}} | ||
+ | |||
+ | ---- | ||
===== Aller plus loin ===== | ===== Aller plus loin ===== | ||
- | Il y a beaucoup de commandes disponibles pour irc, encore quelques unes sur le site de [[http://fr.wikipedia.org/wiki/Internet_Relay_Chat|Wikipedia]] | + | 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 | + | - 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//) | + | - 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 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 Perl et le diffuser : http://juerd.nl/site.plp/irssiscripttut | + | - Vous pouvez écrire votre propre script en [[wpfr>Perl_(langage)|Perl]] et le diffuser : http://juerd.nl/site.plp/irssiscripttut. |
+ | |||
+ | ---- | ||
===== Liens ===== | ===== Liens ===== | ||
Ligne 408: | Ligne 351: | ||
---- | ---- | ||
- | //Contributeurs : Rédigée par Ju, peaufiné par [[:utilisateurs:beaver|BeAvEr]].// | + | //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]].// |