Cómo instalar la herramienta de auditoría del sistema Rudder en Debian 10
Rudder es una herramienta de configuración y auditoría continua, gratuita y de código abierto, que puede utilizarse para automatizar la Infraestructura de TI. Es una solución basada en web y multiplataforma que hace que tu infraestructura informática sea más fiable y fácil de gestionar. Viene con un conjunto de reglas que te ayudan a realizar patrones de configuración de bajo nivel y a vigilar el cumplimiento de la Infraestructura. Ofrece un rico conjunto de funciones, como inventario automático de host, editor de políticas personalizado, interfaz web fácil de usar, backend Git, grupos dinámicos autoactualizables, políticas reutilizables y muchas más.
Rudder está formado por varios componentes :
- Servidor Rud der : Se utiliza para definir las configuraciones a aplicar y recoge informes de aplicación.
- Agentes : Rudder se basa en un agente instalado en cada máquina gestionada. Es muy rápido y sólo tarda 10 segundos en verificar 100 reglas. Funciona en cualquier tipo de dispositivo.
- Servidores de retransmisión: Se utiliza para gestionar nodos en diferentes redes a través de un único punto de entrada.
En este tutorial, te mostraremos cómo instalar el Servidor Timón y el Agente Timón en un servidor Debian 10.
Requisitos previos
- Dos servidores que ejecuten Debian 10.
- Se ha configurado una contraseña de root en cada servidor.
Cómo empezar
Antes de empezar, es una buena idea actualizar tu sistema con la última versión. Puedes actualizar tu sistema con el siguiente comando:
apt-get update -y apt-get upgrade -y
Tras actualizar el sistema, reinícialo para aplicar los cambios.
Instalar el Servidor Timón
Antes de instalar el servidor Rudder, tendrás que instalar algunas dependencias en tu sistema. Puedes instalar todas las dependencias necesarias utilizando el siguiente comando:
apt-get install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common -y
Una vez instalados los paquetes, tendrás que descargar y añadir la clave pública de Rudder a tu servidor.
Puedes descargarla y añadirla con el siguiente comando:
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -
A continuación, añade el repositorio de Rudder utilizando el siguiente comando:
sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'
Por último, actualiza el repositorio e instala el servidor Rudder ejecutando el siguiente comando:
apt-get update -y apt-get install rudder-server-root -y
Durante la instalación, se te pedirá que configures la base de datos para rsyslog-pgsql con dbconfig-common, como se muestra a continuación:
Elige No y pulsa intro para iniciar la instalación. Una vez que la instalación se haya completado con éxito, deberías ver la siguiente salida:
You can access it via https://debian10/rudder INFO: Launching script to check if a migration is needed ... Done INFO: Make sure Rudder webapp is started... Done INFO: Make sure Apache HTTPd is started... Done INFO: No disable file detected and no agent executor process either. Restarting agent service...rudder-cf-serverd: enabled rudder-cf-execd: enabled ok: stop service rudder-agent succeeded rudder-cf-serverd: enabled rudder-cf-execd: enabled ok: start service rudder-agent succeeded Done INFO: Inventory older than 3 days, resending ...Rudder agent 6.0.2-debian10 Node uuid: root Start execution with config [20200203-072526-c88cf5a0] M| State Technique Component Key Message E| compliant Inventory inventory The inventory has been successfully sent info Rudder agent was run on a subset of policies - not all policies were checked ## Summary ##################################################################### 1 components verified in 3 directives => 1 components in Enforce mode -> 1 compliant Execution time: 11.32s ################################################################################ Done FINISH: Rudder agent check ran properly, please look at messages above to see if there has been any error. Setting up rudder-server-root (6.0.2-debian10) ... Created symlink /etc/systemd/system/multi-user.target.wants/rudder-server.service → /lib/systemd/system/rudder-server.service. Processing triggers for libc-bin (2.28-10) ... Processing triggers for rsyslog (8.1901.0-1) ...
Accede a la Interfaz Web de Rudder
En este punto, Rudder está instalado y funcionando. Es hora de acceder a la interfaz web de Timón.
Abre tu navegador web y escribe la URL https://your-server-ip/rudder/. Se te redirigirá a la página de inicio de sesión de Timón, como se muestra a continuación:
Introduce el nombre de usuario y la contraseña predeterminados de Rudder como admin/admin y haz clic en el botón INICIAR S ESIÓN. Deberías ver el panel de Rudder en la siguiente pantalla:
Se recomienda cambiar la contraseña de administrador por defecto por motivos de seguridad. También puedes listar tus redes permitidas en Configuración => General => Redes permitidas. Deberías añadir tu red aquí si quieres añadir el nodo de una red diferente. Por defecto, contendrá las redes conectadas a tus servidores.
Instalar y Configurar el Agente Timón
A continuación, tendrás que instalar el Agente Timón en el sistema que quieras gestionar desde el servidor Timón.
Por defecto, el agente Rudder no está disponible en el repositorio por defecto de Debian 10. Así que tendrás que añadir el repositorio Rudder a tu sistema.
Primero, descarga y añade la clave pública de Rudder con el siguiente comando:
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -
A continuación, añade el repositorio Rudder con el siguiente comando:
sh -c 'echo "deb http://repository.rudder.io/apt/6.0/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list'
Una vez añadido el repositorio, actualiza el repositorio e instala el agente de Timón con el siguiente comando:
apt-get update -y apt-get install rudder-agent -y
Tras instalar el agente Rudder, tendrás que definir la dirección IP de tu servidor Rudder en el archivo de configuración del agente Rudder.
Puedes hacerlo editando el siguiente archivo:
nano /var/rudder/cfengine-community/policy_server.dat
Añade la siguiente línea:
your-rudder-server-ip
Guarda y cierra el archivo cuando hayas terminado. A continuación, reinicia el servicio del agente Timón para aplicar los cambios:
systemctl restart rudder-agent.service
Ahora puedes verificar el servicio del agente Timón con el siguiente comando:
systemctl status rudder-agent.service
Deberías obtener la siguiente salida:
? rudder-agent.service - Rudder agent umbrella service Loaded: loaded (/lib/systemd/system/rudder-agent.service; enabled; vendor preset: enabled) Active: active (exited) since Fri 2020-01-31 08:00:37 UTC; 8min ago Docs: man:rudder(8) https://docs.rudder.io Main PID: 5177 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 4701) Memory: 0B CGroup: /system.slice/rudder-agent.service Jan 31 08:00:37 debianclient systemd[1]: Starting Rudder agent umbrella service... Jan 31 08:00:37 debianclient systemd[1]: Started Rudder agent umbrella service.
Verificar Agente Timón
El servidor y el agente Timón ya están instalados y configurados. Es hora de verificar si el agente Timón está añadido en el servidor Timón o no.
Abre tu navegador web y escribe la URL https://your-server-ip/rudder y haz clic en Gestión de Nodos => Aceptar nuevos nodos, como se muestra a continuación:
Haz clic en el botón Aceptar para aceptar el nuevo nodo. Deberías ver la página de confirmación que se muestra a continuación:
Haz clic en el botón Aceptar para aceptar el nuevo nodo. Deberías ver tu nuevo nodo añadido en la siguiente pantalla:
En la pantalla anterior, deberías ver el 100% de incumplimiento de un nodo recién añadido. Para resolverlo, tendrás que forzar al agente a que se ejecute y envíe un inventario ejecutando el siguiente comando:
rudder agent inventory
Deberías ver la siguiente salida:
Rudder agent 6.0.2-debian10 (CFEngine Core 3.10.2) Node uuid: 20200203-072526-c88cf5a0-8211-8a30bs00ffa9 Start execution with config [30471213-214835-13b4se13] M| State Technique Component Key Message E| compliant Inventory inventory The inventory has been successfully sent ## Summary ##################################################################### => 1 components in Enforce mode -> 1 compliant execution time: 11.27s ################################################################################
Conclusión
En el artículo anterior, hemos aprendido a instalar el servidor Ruder en un servidor Debian 10. También hemos aprendido a instalar el agente de Rudder y a añadirlo al servidor de Rudder. Ahora puedes añadir más nodos a tu servidor Rudder y empezar a gestionarlos. Para más información sobre la configuración de Rudder, puedes visitar el sitio de documentación de Rudder en Rudder Doc. No dudes en preguntarme si tienes alguna duda.