LINUX

Cómo configurar los servicios Ircd Hybrid y Anope con SSL en Ubuntu

IRCD Hybrid es un demonio de chat de retransmisión de Internet (IRC) ligero y gratuito de código abierto. IRCD-Híbrido es comúnmente conocido por su rendimiento ultrarrápido y alto. El rendimiento de ircd-hybrid se vuelve mejor y más fuerte con Anope. Anope es un conjunto de servicios de IRC bifurcados de Epona a principios de 2003. Desde entonces, anope se ha convertido en un conjunto de servicios de IRC muy poderoso y destacado con mejoras en la calidad y funcionalidad del mismo. Algunos de los servicios populares proporcionados por Anope son NickServ, ChanServ, MemoServ, OperServ, BotServ y HostServ. Además de estos, HelpServ, DevNull y Global son otros increíbles servicios ofrecidos por Anope. Por lo tanto, la combinación de los servicios IRCD-Hybrid y Anope crea una solución increíble para un servidor IRC rico en funciones y de alto rendimiento.

En este artículo, aprenderemos cómo configurar IRC Hybrid y Anope Services en la distribución Linux de Ubuntu 15.04. A continuación, se muestran algunos pasos sencillos sobre cómo podemos hacerlo.

1. Descarga de IRCD-Hybrid

En primer lugar, antes de configurar ircd-hybrid en nuestra máquina Ubuntu, necesitaremos descargarlo. Aunque ircd-hybrid está disponible en el repositorio oficial de ubuntu, lo compilaremos a partir de su código fuente, ya que la versión de ircd-hybrid en el repositorio puede no ser la más reciente. Para descargar la última versión, es decir. 8.2.8 desde el repositorio oficial de github, es decir https://github.com/ircd-hybrid/ircd-hybrid/ . Para hacerlo, necesitaremos ejecutar el siguiente comando.

$ cd /tmp/
$ wget https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.8.tar.gz

--2015-07-18 08:35:31-- https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.8.tar.gz
Resolving github.com (github.com)... 192.30.252.129
...
Connecting to codeload.github.com (codeload.github.com)|192.30.252.145|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘8.2.8.tar.gz’
8.2.8.tar.gz [ <=> ] 1022K 675KB/s in 1.5s
2015-07-18 08:35:35 (675 KB/s) - ‘8.2.8.tar.gz’ saved [1046078]

Después de descargarlo, extraeremos el tarball usando el comando tar.

$ tar -xvf 8.2.8.tar.gz

2. Instalación de IRCD-Hybrid

Después de que terminemos de extraer el tarball, ahora ingresaremos al directorio que se acaba de extraer. Para hacerlo, necesitaremos ejecutar el siguiente comando.

$ cd ircd-hybrid-8.2.8/

Luego, iremos a configurarlo para que Makefile se pueda generar para ircd-hybrid de modo que podamos compilar códigos fuente de ircd-hybrid en binario usando el comando make. Para hacerlo, primero necesitaremos instalar las dependencias necesarias para generar el archivo MAKE.

$ sudo apt-get install build-essential

Una vez instaladas las dependencias, ejecutaremos el siguiente comando para generar el archivo MAKE.

$ ./configure --prefix="/home/arun/ircd"

Después de que se haya generado el archivo MAKE, compilaremos el código fuente en binario. Para hacerlo, necesitaremos ejecutar el siguiente comando.

$ make

Ahora instalaremos nuestro servidor híbrido ircd más reciente ejecutando el siguiente comando. Esto instalará ircd-hybrid dentro de nuestro directorio de inicio bajo un directorio llamado ircd.

$ make install

3. Descarga de los servicios de Anope

Ahora descargaremos la última versión de los servicios de anope desde su repositorio oficial de github, es decir. https://github.com/anope/anope/ . La última versión del servicio de anope actualmente es 2.0.2. Descargaremos los servicios de anope de la misma manera que descargamos ircd-hybrid.

$ cd /tmp/
$ wget https://github.com/anope/anope/releases/download/2.0.2/anope-2.0.2-source.tar.gz

--2015-07-18 08:55:14-- https://github.com/anope/anope/releases/download/2.0.2/anope-2.0.2-source.tar.gz
Resolving github.com (github.com)... 192.30.252.128
...
Connecting to s3.amazonaws.com (s3.amazonaws.com)|54.231.244.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1775003 (1.7M) [application/octet-stream]
Saving to: ‘anope-2.0.2-source.tar.gz’
anope-2.0.2-source.t 100%[========================>] 1.69M 611KB/s in 2.8s
2015-07-18 08:55:19 (611 KB/s) - ‘anope-2.0.2-source.tar.gz’ saved [1775003/1775003]

Después de que se descargue con éxito, extraeremos el tarball usando el comando tar.

$ tar -xvf anope-2.0.2-source.tar.gz

4. Instalación de Anope Services

Una vez extraído el tarball, ahora instalaremos los servicios de anope en nuestra distribución de Linux de Ubuntu. Para hacerlo, primero necesitaremos configurar para generar el archivo MAKE para que podamos compilar los códigos fuente en binario y podamos instalarlo en nuestro sistema. Pero antes de eso, necesitaremos cumplir con la dependencia de nuestro paquete que se requiere para ejecutar el script de configuración. Para instalar esa dependencia, necesitaremos ejecutar el siguiente comando.

$ sudo apt-get install cmake

Luego, ejecutaremos el siguiente comando para generar el archivo MAKE.

$ cd anope-2.0.2-source/
$ ./Config

El comando anterior ejecutará un programa que nos hará varias preguntas sobre la instalación y configuración de nuestro servicio anope. Simplemente podemos Presione enter» para seleccionar los valores predeterminados, el archivo MAKE se generará dentro del directorio de compilación. Ahora compilaremos el código fuente en binario. Para hacerlo, necesitaremos ejecutar el siguiente comando.

$ cd build
$ make

Ahora instalaremos los servicios de anope ejecutando el siguiente comando. Esto instalará anope services dentro de nuestro directorio de inicio bajo services.

$ make install

5. Arreglar la propiedad

Como acabamos de instalar el servidor ircd-hybrid y los servicios anope dentro de nuestro directorio de inicio, necesitaremos asegurarnos de que el usuario con el que estamos ejecutando los servicios ircd-hybrid y anope tenga acceso total de lectura y escritura y la propiedad del directorio. Entonces, para cambiar la propiedad de esos directorios, necesitaremos ejecutar el siguiente comando.

$ sudo chown -R arun: ~/ircd ~/services

Nota: Aquí, arun es el nombre de usuario a través del cual ejecutaremos nuestro servicio anope y nuestro servidor ircd-hybrid. Por lo tanto, reemplácelo de acuerdo con su sistema y configuración.

6. Generación de contraseña cifrada

Ahora, configuraremos nuestro ircd-hybrid para que funcione correctamente como se esperaba. En primer lugar, necesitaremos generar un hash de contraseña cifrado utilizando mkpasswd, que será necesario para la configuración de los servicios ircd-hybrid y anope. La contraseña de texto sin formato se utilizará para obtener los derechos de operador de nuestro servidor irc. Para generar el hash de la contraseña cifrada, necesitaremos ejecutar mkpasswd seguido de la contraseña que queremos cifrar. Como mkpasswd se encuentra dentro del directorio bin de nuestro directorio de instalación ircd-hybrid, necesitaremos ejecutar el siguiente comando.

$ cd ~/ircd/bin/
$ ./mkpasswd

$1$jcKeU1nP$3u.uVI3wxyLswDnw1S5mA/

Nota: Esta contraseña encriptada generada tiene ie $ 1 $ jcKeU1nP $ 3u.uVI3wxyLswDnw1S5mA / será utilizado para el configuración de ircd-híbrido y se necesitará una contraseña simple para obtener el derecho de operador. Por lo tanto, se recomienda encarecidamente mantener esta contraseña en un lugar seguro para que podamos usarla más tarde.

7. Configuración de ircd-hybrid

Aquí, ahora configuraremos nuestro servidor híbrido ircd con configuraciones simples que son suficientes para ejecutar un servidor IRC saludable. Aquí hay algunas configuraciones básicas que debemos hacer para que nuestro servidor IRC funcione bien. Para hacerlo, primero necesitaremos crear nuestro nombre de archivo de configuración predeterminado como ircd.conf dentro del directorio ~ / ircd / etc /. Podemos crearlo fácilmente copiando reference.conf en ircd.conf. Para hacerlo, ejecutaremos el siguiente comando.

$ cp ~/ircd/etc/reference.conf ~/ircd/etc/ircd.conf

Luego, editaremos el archivo ircd.conf usando nuestro editor de texto favorito.

$ nano ~/ircd/etc/ircd.conf

Ahora, cambiaremos la primera sección, es decir, el bloque serverinfo {} según sea necesario. Aquí, cambiaremos los valores de nombre, descripción, nombre_red y descripción_red como se muestra a continuación.

/* serverinfo {}: Contains information about the server. (OLD M:) */
serverinfo {
name = "irc.linoxide.com";
description = "Linoxide IRC Server";
network_name = "Linoxide";
network_desc = "Linoxide IRC Network";
};

A continuación, haremos cambios en el bloque admin {}. Este bloque contiene y muestra la información de administración sobre el servidor. Por lo tanto, haremos cambios en el valor del nombre, la descripción y el correo electrónico como requisito.

/* admin {}: contains admin information about the server. (OLD A:) */
admin {
name = "Linoxide Admin";
description = "Linoxide IRC Server Administrator";
email = "<info@irc.linoxide.com>";
};

Luego, comentaremos la opción de host con «# « en el bloque listen {} para vincular al servidor todas las direcciones IP disponibles.

#   host = "192.168.0.1";

Después de eso, comentaremos el banderas = need_ident línea debajo del bloque auth {} que se encuentra justo encima del bloque operator {}.

#   flags = need_ident

Después de eso, tendremos que desplazarnos hacia abajo hasta el bloque del operador {}. Este bloque define el operador del servidor. Aquí, nombre define el nombre del operador, usuario con valor como *@127.0.0.1 define que cualquier usuario localhost puede conectarse como root. Luego, agregaremos el hash de la contraseña cifrada en la opción de contraseña como se muestra a continuación.

/* operator {}: defines ircd operators. (OLD O:) */
operator {
name = "root";
user = "*@*127.0.0.1";
password = "$1$jcKeU1nP$3u.uVI3wxyLswDnw1S5mA/";
encrypted = yes;
};

Ahora, editaremos nuestro bloque connect {} para que podamos definir el servidor ircd-hybrid para conectar con los servicios de anope usando la siguiente configuración. Esta configuración debe coincidir con la configuración de servicios de anope que crearemos en el siguiente paso. Aquí, la sección de nombre no es el nombre del servidor de ircd-hybrid, sino el nombre de los servicios de anope.

connect {
name = "ircservices.linoxide.com";
host = "127.0.0.1";
send_password = "mypassword";
accept_password = "mypassword";
encrypted = no;
hub_mask = "*";
class = "server";
};

Una vez realizadas todas las configuraciones deseadas y requeridas, guardaremos el archivo y saldremos.

Luego, iniciaremos nuestro servidor ircd-hybrid ejecutando el siguiente comando.

$ cd ~/ircd/bin/
$ ./ircd

Esto ejecutará nuestro servidor IRC. Podemos probarlo intentando conectarnos a nuestro servidor IRC usando la dirección IP del servidor o usando el dominio del servidor irc sin nuestro cliente IRC. Para conectarnos, también podemos ejecutar el siguiente comando en nuestro Cliente IRC.

/server irc.linoxide.com

IRC Connect

8. Configuración de los servicios de Anope

Ahora configuraremos nuestros servicios de anope para que se conecten con nuestro servidor híbrido ircd. Para hacerlo, primero necesitaremos crear nuestro archivo de configuración predeterminado llamado services.conf dentro del directorio conf del directorio de instalación de servicios de anope. Hay un archivo example.conf ubicado que podemos modificar para que los servicios de anope funcionen bien. Entonces, necesitaremos copiar example.conf y pegar como services.conf.

$ cd ~/services/conf/
$ cp example.conf services.conf

Ahora, editaremos nuestro archivo de configuración de servicios anope usando nuestro editor favorito.

$ nano services.conf

Ahora, haremos cambios en el bloqueo de {} enlaces ascendentes. Aquí, el host se mantiene como 127.0.0.1 ya que nuestro servidor IRC se ejecuta en nuestro mismo servidor bajo localhost. Como no estamos usando ipv6, simplemente lo desactivaremos. Si estamos ejecutando anope en un servidor diferente, se recomienda habilitar ssl manteniendo el valor como «sí», pero como estamos ejecutando tanto el servidor irc como anope en el mismo servidor, simplemente lo deshabilitaremos con el valor «no». Como el puerto predeterminado del servidor irc es 6667, lo mantendremos igual. La opción de contraseña debe definir la contraseña que hemos asignado en el bloque connect {} de la configuración de ircd (ircd.conf), es decir, mypassword en nuestro caso.

uplink
{
host = "127.0.0.1"
ipv6 = no
ssl = no
port = 6667
password = "mypassword"
}

A continuación, estableceremos el nombre de nuestro servicio anope y la descripción de nuestros servicios Anope, que se encuentran en el bloque serverinfo {}. El valor del nombre del mismo debe coincidir con el valor que le hemos asignado en el bloque connect {} de la configuración de ircd (ircd.conf), aquí hemos guardado ircservices.linoxide.com.

serverinfo
{
name = "ircservices.linoxide.com"
description = "Services for Linoxide IRC Networks"
pid = "data/services.pid"
motd = "conf/services.motd"
}

A continuación, como estamos ejecutando ircd-hybrid como nuestro servidor de irc, simplemente asignaremos el valor de name bajo modue {} block como «hybrid».

name = "hybrid"

Y mantendremos el nombre de la red como «Linoxide IRC» en el bloque networkinfo {}.

networkname = "Linoxide IRC"

Después de que todo esté configurado como nuestro requisito y deseo, ahora guardaremos y saldremos del archivo.

9. Inicio de los servicios de Anope

Finalmente, después de haber completado la configuración de nuestra configuración de anope, ahora iniciaremos nuestros servicios de anope. Para hacerlo, necesitaremos ingresar a la carpeta bin ubicada dentro del directorio de instalación de anope. Luego, ejecutaremos nuestro script anoperc como se muestra a continuación.

$ cd ~/services/bin/
$ ./anoperc start

Starting Anope
Anope 2.0.2, build #2, compiled 12:22:26 Jul 18 2015
Using configuration file conf/services.conf
Attempting to connect to uplink #1 127.0.0.1 (127.0.0.1), port 6667
Successfully connected to uplink #1 127.0.0.1:6667
Successfully linked, launching into background...

Esto iniciará nuestros servicios Anope. Si inesperadamente nuestros servicios de anope no se inician, simplemente podemos solucionarlo revisando nuestro registro que se encuentra dentro del directorio de registros. Aquí, en nuestra instalación, está en ~ / services / logs /

Ahora, para verificar si nuestro servicio anope está funcionando bien o no, simplemente podemos ejecutar / msg NickServ ayuda en nuestro cliente de IRC. Si vimos opciones y banderas para el comando NickServ, entonces podemos verificar que nuestro servicio Anope está funcionando de manera excelente. Primero necesitamos obtener acceso de operador usando el comando / oper seguido del nombre de usuario y la contraseña que hemos creado anteriormente para el operador.

/oper root password

Después de iniciar sesión como operador, haremos un refrito de nuestro servidor IRC híbrido ircd.

/rehash

Rehash con Anope Services

Luego, finalmente probaremos nuestro servidor anope ejecutando el siguiente comando.

/msg nickserv help

Ayuda de Nickserv

10. Habilitación del cifrado SSL / TLS

Para habilitar el cifrado ssl, necesitaremos instalar el paquete de desarrollo openssl en nuestra máquina Ubuntu 15.04. Luego, necesitaremos recompilar nuestro ircd-hybrid, generar nuestros propios certificados SSL ya que no tenemos un certificado confiable y configurar la configuración de ircd-hybrid para habilitar el puerto ssl, es decir, 6697.

Entonces, para instalar el paquete de desarrollo openssl, necesitaremos ejecutar el siguiente comando.

$ sudo apt-get install libssl-dev

Simplemente podemos seguir los pasos 1 y 2 para recompilar ircd-hybrid. A continuación, generaremos nuestros propios certificados SSL y los guardaremos en el directorio ~ / ircd / etc /.

$ cd ~/ircd/etc/
$ openssl genrsa -out rsa.key 2048
$ chmod 600 rsa.key

Generando clave RSA

Después de que se haya generado la clave RSA, ahora generaremos el certificado y el archivo de parámetros DH.

$ openssl req -new -days 365 -x509 -key rsa.key -out cert.pem
$ openssl dhparam -out dhparam.pem 2048

Generando SSL y DHparam

Ahora, configuraremos nuestro ircd.conf y habilitaremos el método de cifrado SSL / TLS. Para hacerlo, abriremos ircd.conf con nuestro editor favorito.

$ nano ~/ircd/etc/ircd.conf

Ahora, descomentaremos las siguientes líneas que se encuentran en el bloque serverinfo {}.

rsa_private_key_file = "etc/rsa.key";
ssl_certificate_file = "etc/cert.pem";
ssl_dh_param_file = "etc/dhparam.pem";

Finalmente, reiniciaremos nuestro servidor ircd-hybrid. Para reiniciar, necesitaremos ejecutar los siguientes comandos.

$ killall -9 ircd
$ ~/ircd/bin/ircd

Una vez que nuestro servidor se esté ejecutando, tendremos que probar que nuestro cifrado SSL / TLS funciona o no. Ahora podemos iniciar sesión en nuestro servidor irc con cifrado SSL / TLS ejecutando el siguiente comando en nuestro cliente IRC.

/server irc.linoxide.com +6697

IRC de cifrado SSL

Conclusión

IRCD-Hybrid es un gran ejemplo de servidor IRC ligero, rápido y eficiente. Aunque los IRC se consideran tecnologías antiguas para la comunicación electrónica, es un medio de comunicación increíblemente rápido y seguro. Anope agrega algunos funcionalistas y características increíbles además de ircd-hybrid, lo que hace que nuestro servidor irc se administre correctamente. Por lo tanto, siempre se recomienda usar anope como servicio si está ejecutando ircd-hybrid como demonio de irc. Para permitir que los escáneres monitoreen nuestro servidor IRC contra proxies abiertos, hopm también es una gran herramienta desarrollada por los desarrolladores de ircd-hybrid. Si tiene preguntas, sugerencias o comentarios, escríbalos en el cuadro de comentarios a continuación para que podamos mejorar o actualizar nuestros contenidos. Gracias ! Disfrutar 🙂

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar