Ceci est une ancienne révision du document !



 Logo du logiciel Irssi

Irssi

Irssi est un client IRC de type CLI. C'est une alternative à Xchat et Konversation et Weechat et BitchX. Le nom Irssi vient de l'argot finnois « Irssi » signifiant IRC.


Comme la plupart des applications sous Linux Irssi se configure via l'édition d'un fichier texte.

Éditez le fichier :

 ~/.irssi/config 

.

Le répertoire caché :
~/.irssi

sera créé lors du premier lancement de Irssi.


Serveurs

Il n'est pas conseillé de modifier le fichier :
~/.irssi/config

à la main, allez plutôt à la section : Commandes équivalentes.

Ce fichier est découpé en plusieurs parties, les serveurs à joindre au démarrage :

servers = (
  {
    address = "irc.freenode.org";
    chatnet = "freenode";
    port = "6667";
    autoconnect = "yes";
    term_type = "utf-8";
  }
);

pour le SSL :

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";
  }
);

Commandes équivalentes

Se connecter automatiquement au round-robin :
irc.freenode.org

sans SSL sur le port 6667 :

Veuillez lancer votre client Irssi avec pour contenu :

/server add -auto -network freenode -port 6667 irc.freenode.org
Se connecter automatiquement au round-robin :
irc.freenode.org

avec SSL sur le port 7000 :

Veuillez lancer votre client Irssi avec pour contenu :

/server add -auto -ssl_verify -ssl_capath /etc/ssl/certs -ssl -network freenode irc.freenode.net 7000
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/
  • Le support SASL est disponible à partir de la version 0.8.18.

Veuillez lancer votre client Irssi avec pour contenu :

/server add -auto -ssl -ssl_verify -ssl_capath /etc/ssl/certs -network freenode -port 7000 irc.freenode.net
/network add -sasl_mechanism plain -sasl_username <username> -sasl_password <password> freenode
Utiliser le charset utf-8 :

Veuillez lancer votre client Irssi avec pour contenu :

/set term_charset utf-8

Voilà au lancement d'irssi, vous serez sur un serveur Freenode en utf-81).


Salles de discussion

Il n'est pas conseillé de modifier le fichier :
~/.irssi/config

à la main, allez plutôt à la section : Commandes équivalentes.

Les salles de discussion à joindre au lancement :

channels = (
  { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; }
);

La syntaxe est relativement simple :

channels = (
  { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "Yes"; },
  { name = "#autre_chan"; chatnet = "freenode"; autojoin = "Yes"; },
  { name = "#encore_un_autre"; chatnet = "freenode"; autojoin = "No"; }
);

Commandes équivalentes

Veuillez lancer votre client Irssi avec pour contenu :

 /channel add -auto #ubuntu-fr freenode
 /channel add -auto #autre_chan freenode
 /channel add -auto #encore_un_autre freenode

Identification

Il n'est pas conseillé de modifier le fichier :
~/.irssi/config

à la main, allez plutôt à la section : Commande équivalente.

freenode = {

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

client_irc_mal_configure_.jpg

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.

Veuillez lancer votre client Irssi avec pour contenu :

/network add -nick "pseudonyme" -user "nom_d_utilisateur_à_afficher" -realname "nom_réel_à_afficher" -autosendcmd "/msg NickServ IDENTIFY password ;wait 8000" freenode

Irssi se lance dans un 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 2).


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 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 avec pour contenu :

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 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

Désireux de lancer des scripts automatiquement à chaque démarrage de irssi ?

Veuillez lancer votre terminal avec pour contenu :

mkdir ~/.irssi/scripts/autorun/ 
ln -s ~/.irssi/scripts/script1.pl ~/.irssi/scripts/autorun/
ln -s ~/.irssi/scripts/script2.pl ~/.irssi/scripts/autorun/
etc...

Comment puis-je exécuter des commandes automatiquement au démarrage de irssi ?

Veuillez lancer un terminal avec pour contenu :

touch ~/.irssi/startup 
Il vous suffira alors de copier les commandes en question dans le fichier startup3).

Pour afficher le 'Topic' (sujet de la salle où vous vous trouvez) :

/topic 

Pour afficher les noms des personnes dans la salle 4) :

/names

Pour se connecter à un autre channel :

/join #nom_du_channel

Pour se connecter à un autre serveur 5) :

/connect irc.autreserveur.org

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.

Pour parler en privé à un utilisateur :

/msg nom_d_utilisateur message

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) 6) :

/away [raison]

Redevenir 'disponible' :

/back

Via la formation Debian GNU/Linux d'Alexis de Lattre

Un très bon guide pour Debian et toutes les distributions derivees

  • /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.

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 client IRC.

C'est là qu'intervient le plugin proxy de Irssi.

Veuillez lancer votre 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 Freenode (et c'est même conseillé – c'est juste pour vous connecter au proxy).

Ensuite vous devez définir un port sur lequel vous connecterez votre client IRC:

/set irssiproxy_ports freenode=XXXX

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).


Proxy HTTP

N'est pas compatible avec une configuration SSL.

Pour utiliser Irssi derrière un proxy HTTP, veuillez lancer votre client Irssi avec pour contenu :

/set use_proxy ON
/set proxy_address <Proxy host address>
/set proxy_port <Proxy port>
/set -clear proxy_string
/set proxy_string_after conn %s %d
/eval set proxy_string CONNECT %s:%d HTTP/1.0\n\n

Socks Proxy

Pour utiliser un proxy SOCKS, veuillez lancer votre client Irssi avec ces commandes :

/set proxy_address <Proxy host address>
/set proxy_port <port>
/set use_proxy ON

Irssi-OTR (chiffrement)

Chiffrer vos conversations avec Irssi-OTR.


Pré-requis

sudo service tor stop
Ce tutoriel nécessite d'avoir les options ExitNodes8) et StrictNodes 19) dans votre fichier torrc. Si vous souhaitez "idle" avec votre client IRC Irssi, et donc, avoir un relay Tor stable, veuillez vous référer à la page TopRelays10).

Modification du fichier torrc et génération du certificat et ajout fingerprint pseudonyme Freenode

Veuillez maintenant éditer le fichier /etc/tor/torrc et y ajouter à la fin :

# For Freenode IRC
mapaddress 10.8.0.9 freenodeok2gncmy.onion
Voici un exemple d'un fichier torrc fonctionnel pour Freenode :
ExitNodes FINGERPRINT_RELAY_TOR ## Récupérer votre/vos fingerprint(s) de votre/vos nœud(s) Tor ici -> https://metrics.torproject.org/rs.html#toprelays
StrictNodes 1
VirtualAddrNetwork 10.192.0.0/10
AutomapHostsOnResolve 1
DNSPort 10.8.0.1:53530
SocksPort 9150
TransPort 10.8.0.1:9040
mapaddress 10.8.0.9 freenodeok2gncmy.onion
AutomapHostsSuffixes .exit,.onion

Veuillez sauvegarder vos modifications, et nous relançons votre daemon tor. Veuillez ouvrir un terminal avec pour contenu :

sudo service tor start

Nous devons ensuite générer un certificat client pour Freenode, veuillez saisir dans votre terminal :

openssl req -x509 -sha256 -new -newkey rsa:4096 -days 700 -nodes -out FreenodeTor.pem -keyout FreenodeTor.pem

Nous créons ensuite un dossier certs dans votre 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 :

mkdir /home/$USER/.irssi/certs && mv *.pem /home/$USER/.irssi/certs

Il nous faut ensuite extraire l'empreinte SHA-1 de votre certificat FreenodeTor.pem. Pour se faire, veuillez saisir dans un terminal la commande suivante :

openssl x509 -in ~/.irssi/certs/FreenodeTor.pem -outform der | sha1sum -b | cut -d' ' -f1

Veuillez copier votre fingerprint de votre certificat FreenodeTor.pem, et ensuite veuillez ouvrir votre client Irssi, et y saisir :

/connect irc.freenode.org
/nick <votre_pseudonyme_enregistré_auprès_de_freenode>
/msg nickserv identify <votre_mot_de_passe>
/msg nickserv CERT ADD <votre_fingerprint>

Configurons maintenant votre client Irssi, pour utiliser Tor LOL.

Configuration de votre pseudonyme avec SASL

  • Le support SASL est disponible à partir de la version 0.8.18 de Irssi.
  • Attention, votre mot de passe SASL sera stocké en clair, dans votre fichier:
    config

Veuillez démarrer votre client Irssi et y insérer :

/network add -sasl_username <votre_pseudonyme_freenode> -sasl_password <votre_mot_de_passe> -sasl_mechanism EXTERNAL FreenodeTor

Ajout du réseau Tor à votre client Irssi

Dans votre client Irssi y insérer :

/server add -auto -ssl -ssl_cert ~/.irssi/certs/FreenodeTor.pem -net FreenodeTor 10.8.0.9 7000

Nous ignorons les requêtes de type CTCP pour ne pas divulguer votre IP originale :

/ignore * CTCPS
/save
/quit

Lancement de Irssi avec Torify

Dans un terminal, veuillez saisir la commande :

torify irssi 2> /dev/null

freenodetor.jpg

Vous voilà sous Freenode à travers le réseau Tor ^_^.


Veuillez saisir dans votre client IRC les commandes :

/set beep_when_window_active on
/set beep_when_away on
/set bell_beeps on
/set beep_msg_level HILIGHT MSGS DCC DCCMSGS
/hilight -word ton_nick

Vous en avez marre de voir sur votre irssi des déconnexions intempestives ?, veuillez saisir dans votre client IRC la commande :
/ignore -channels #nom_channel1,#nom_du_channel2 * PARTS QUITS
Vous pouvez également ignorer l'affichage des utilisateurs qui se connectent sur le channel dans votre client IRC, en tapant :
/ignore -channels #nom_channel1,#nom_channel2 * JOINS
Évidemment vous pouvez ignorer l'affichage des connexions, et des déconnexions des utilisateurs :
/ignore -channels #nom_channel1,#nom_channel2 * JOINS PARTS QUITS
Ignorer les messages d'absence public :
/ignore -regexp -pattern "is (away|gone|back)" * ACTIONS

Le projet semble être abandonné.

xirssi.jpg

Si vous suivez ce tutoriel, vous connaissez le client IRC en CLI Irssi, ici, vous allez voir comment avoir Irssi mais en version GTK, pour se faire on va devoir compiler Irssi et Xirssi.


Compilation de Irssi

Veuillez ouvrir un terminal avec les commandes suivantes :

Nous installons les dépendances logicielles pour Irssi.
sudo apt-get build-dep irssi 
Ensuite, nous récupérons le tar.gz de Irssi via le site officiel.
wget http://www.irssi.org/files/irssi-0.8.17.tar.gz
Ensuite, nous décompressons le tar.gz irssi-0.8.17.tar.gz et on se place dans le dossier irssi-0.8.17.
tar -xzvf irssi-0.8.17.tar.gz && cd irssi-0.8.17
Nous lançons la compilation de Irssi.
./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

On installe le paquet subversion et on récupère les sources de Xirssi.

Veuillez ouvrir un terminal avec les commandes suivantes :

sudo apt-get install subversion
svn co http://svn.irssi.org:8080/repos/xirssi/trunk/ xirssi
On se place dans le dossier xirssi, et on lance la compilation :-D.
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


Il y a beaucoup de commandes disponibles pour IRC, encore quelques unes sur le site de Wikipedia11).

  1. Lire la doc officielle, en anglais : http://www.irssi.org/documentation.
  2. Si vous voulez utiliser de manière plus efficace Irssi vous pouvez changer les raccourcis claviers pour les principales commandes (toujours dans ~/.irssi/config).
  3. Vous pouvez utiliser un script, des tonnes ici : https://scripts.irssi.org/ Les scripts adv_windowlist, nickolor, et urlgrab sont particulièrement utiles.
  4. Vous pouvez écrire votre propre script en Perl et le diffuser : http://juerd.nl/site.plp/irssiscripttut.


1)
Les salles de discussion migrent petit à petit vers utf-8, #ubuntu-fr est en utf-8 par exemple.
2)
Il y'a, chez moi, une deuxième barre pour Screen.
3)
'/' n'est pas nécessaire ;-).
4)
Il existe un script qui tente de faire une barre latérale pour Irssi http://wouter.coekaerts.be/site/irssi/nicklist.
5)
Vous restez connecté au premier.
6)
Les messages où vous êtes nommés seront copiés dans la fenêtre statut du serveur.
7)
m(.
8)
Pour y ajouter un/des relay(s) stable(s) ;-).
9)
Pour ne "piocher" que les nodes que vous aurez pu indiquer ;-).
10)
Favoriser les relays avec un uptime élevé ;-).
11)
La page contient que des informations concernant le protocole IRC, et les flags.
  • irssi.1530602311.txt.gz
  • Dernière modification: Le 03/07/2018, 09:18
  • par beaver