Servidores IRC

De HackLab
Saltar a: navegación, buscar


Configuración y listado de servidores IRC.

Introducción

En LibreVPN tenemos una red de servidores de IRC usando ngircd, un servidor liviano y descentralizable. Para levantar un nodo nuevo tenés que instalar `ngircd` y usar una configuración basada en Ngircd.conf

Además tenés que coordinar con los responsables de los otros nodos para que te den acceso a la red y si tu nodo es público, te agreguen al dominio irc.hackcoop.com.ar.

internet               | nodo               | responsable
-----------------------+--------------------+-------------
irc.hackcoop.com.ar    | naven.local        | fauno
irc.c3p0.com.ar        | c3p0.local         | Axolotl
irc.exodica.com.ar     | ExodicaWorld.local | exos
                       | lugosi.local       | fauno

Por tor podemos conectarnos a o3ecpul4b2ggzvsz.onion

Generar certificados

sudo certtool --generate-dh-params --bits 2048 --outfile  /etc/ssl/private/2048.dh
sudo certtool --generate-privkey --outfile /etc/ssl/private/irc.key
sudo certtool --generate-self-signed --load-privkey /etc/ssl/private/irc.key --outfile /etc/ssl/certs/irc.crt

TODO

En la migración del DNS hackcoop.com.ar a Owns, todos los demonios públicos deberían responder a irc.hackcoop.com.ar para rotar los clientes.

Datos para conectarse desde Internet

Servidor: irc.hackcoop.com.ar

Puerto: 6697

SSL: habilitado

Datos para conectarse desde LibreVPN

Lo mismo pero uno de los .local de la tabla de arriba.

Errores comunes

Debian

En Debian y similares, el script de inicio (/etc/init.d/ngircd) intenta ejecutar el daemon como el usuario "irc" sin permisos para leer los certificados. Como ngircd es capaz de iniciar como root y después cambiarse al usuario asignado (en nuestra conf "nobody"), podemos cambiar el usuario de inicio con la siguiente línea:

   # echo "DAEMONUSER=root" >>/etc/default/ngircd

Si se prefiere no cambiar este comportamiento, se puede crear un grupo con acceso a las llaves y dar permiso de lectura para las llaves privadas:

   # groupadd --system keys
   # chown root:keys /etc/ssl/private/*
   # chmod 640 /etc/ssl/private/*
   # chmod 710 /etc/ssl/private
   # chmod g+s /etc/ssl/private
   # gpasswd -a irc keys

Lo mismo se puede aplicar para cualquier servicio que necesite acceso a llaves privadas. Además queda más claro qué servicio tiene acceso a los certificados (`grep "^keys" /etc/group`).


cliente web

Qwebirc portada.png

Portada principal

Qwebirc chat.png

Sala de chat

Versión de QwebIRC del hacklab


Comandos de IRC

/join #canal

Para entrar a un canal

/join #canal clave

Para entrar a un canal con clave

/msg usuario mensaje

Para enviar un mensaje en privado. Tene en cuenta que si no usar OTR el proveedor de red y el servidor podrían leer tu mensaje en privado,

Comandos de operador

 /mode +k clave

Pone una clave al canal.

/kick usuario

Para echar un usuario del canal