catgirl es un cliente minimalista de IRC
Por admin el 21 de Octubre de 2022
catgirl es un cliente de IRC de terminal. Es una excelente alternativa a irssi para quienes el minimalismo y la seguridad sea lo más importante, ya que además de tener menos código aprovecha las características de seguridad de FreeBSD y OpenBSD usando sandboxing para limitar el daño en caso de que se intente explotar algún agujero de seguridad.
Además, tiene un modo restringido (restricted
) que desactiva algunas funcionalidades y hace su funcionamiento más seguro. En OpenBSD aprovecha las mitigaciones de seguridad pledge(2) y unveil(2) que ofrece este sistema operativo.
Como prestación minimalista, catgirl no implementa:
- Configuración dinámica: toda la configuración se realiza al invocar el programa o en su archivo de configuración.
- Multi-red: si quieres conectarte a varias redes tendrás que usar un multiplexor de terminal como tmux(1) o screen.
- Reconexión: catgirl termina cuando se pierde la conexión al servidor en lugar de intentar reconectar automáticamente.
- CTCP: catgirl no usa CTCP ya que lo considera un protocolo inútil que se presta al abuso.
- Cobertura de protocolos: Sólo se incorporan las funcionalidades de IRCv3 que mejoren la experiencia de usuario.
- IRC en texto claro: catgirl tan sólo conecta con servidores que usan TLS ya que los certificados son fáciles de obtener.
Comparte los atajos de teclado más comunes de irssi:
-
ESC-x
va a la pestañax
-
CTRL-p
oCTRL-n
va a la pestaña anterior o siguiente, respectivamente
Además permite navegar entre pestañas con el atajo ALT-x
, siendo x el número de la pestaña.
Configuración
Si no se desea teclear las opciones en la línea de comandos se puede crear un archivo de configuración para cada red que se vaya a usar. Como ejemplo, esta sería una configuración con el modo restringido para mayor seguridad y con los colores de los nicks desactivados:
- ~/.config/catgirl/example
-
nick = mi_nick real = mi_nombre host = irc.example.com user = mi_user join = #canal hash = 0,0 restrict timestamp
Para arrancar con esta configuración ejecutaría $ catgirl example
.
Ignorar mensajes JOINS, PARTS, QUITS, NICKS
Este ajuste se realiza por cada canal con la combinación de teclas C-+ (Alt +) o C-- (Alt -). Para que esto funcione en cwm(1) he necesitado añadir esto a mi archivo ~/.Xdefaults:
xterm*eightBitInput: false
xterm*eightBitControl: false
Servidores con certificado autofirmado
Para conectar con servidores con certificado autofirmado primero se guarda el certificado:
$ catgirl -o -h irc.example.com > ~/.config/catgirl/irc.example.com.pem
Y se añade esta linea al archivo de configuración correspondiente (en este caso ~/.config/catgirl/irc.example.com):
trust = irc.example.com.pem