Rudder es una herramienta de configuración y auditoría continua gratuita y de código abierto que se puede utilizar para automatizar la infraestructura de TI. Es una solución basada en web y multiplataforma que hace que su infraestructura de TI sea más confiable y fácil de administrar. Viene con un conjunto de reglas que lo ayudan a realizar patrones de configuración de bajo nivel y vigilar el cumplimiento de la infraestructura. Proporciona un amplio conjunto de características que incluyen, inventario de host automático, editor de políticas personalizado, interfaz web fácil de usar, backend Git, actualización automática de grupos dinámicos, políticas reutilizables y mucho más.
El timón está hecho de varios componentes:
- Servidor de timón: Se utiliza para definir las configuraciones a aplicar y recopila informes de aplicación.
- Agentes: Rudder se basa en un agente instalado en cada máquina administrada. Es muy rápido y tarda solo 10 segundos en verificar 100 reglas. Funciona en cualquier tipo de dispositivo.
- Servidores de retransmisión: Se utiliza para administrar nodos en diferentes redes a través de un único punto de entrada.
En este tutorial, le mostraremos cómo instalar Rudder Server y Rudder Agent en el servidor Debian 10.
Requisitos
- Dos servidores que ejecutan Debian 10.
- Se configura una contraseña raíz en cada servidor.
Cómo empezar
Antes de comenzar, es una buena idea actualizar su sistema con la última versión. Puede actualizar su sistema con el siguiente comando:
apt-get update -y
apt-get upgrade -y
Después de actualizar el sistema, reinícielo para implementar los cambios.
Instalar servidor de timón
Antes de instalar el servidor Rudder, deberá instalar algunas dependencias en su sistema. Puede instalar todas las dependencias requeridas usando el siguiente comando:
apt-get install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common -y
Una vez que los paquetes estén instalados, deberá descargar y agregar la clave pública de Rudder a su servidor.
Puede descargarlo y agregarlo con el siguiente comando:
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | apt-key add -
Luego, agregue el repositorio Rudder usando 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'
Finalmente, actualice el repositorio e instale el servidor Rudder ejecutando el siguiente comando:
apt-get update -y
apt-get install rudder-server-root -y
Durante la instalación, se le pedirá que configure la base de datos para rsyslog-pgsql con dbconfig-common como se muestra a continuación:
Elija No y pulsa enter para iniciar la instalación. Una vez que la instalación se haya completado con éxito, debería ver el siguiente resultado:
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) ...
Acceder a la interfaz web del timón
En este punto, Rudder está instalado y funcionando. Es hora de acceder a la interfaz web de Rudder.
Abra su navegador web y escriba la URL https://your-server-ip/rudder/. Será redirigido a la página de inicio de sesión de Rudder como se muestra a continuación:
Proporcione el nombre de usuario y la contraseña predeterminados de Rudder como admin/admin y haga clic en FIRMAR EN botón. Debería ver el panel de control del timón en la siguiente pantalla:
Se recomienda cambiar la contraseña de administrador predeterminada por razones de seguridad. También puede enumerar sus redes permitidas en Configuración => General => Redes permitidas . Debe agregar su red aquí si desea agregar el nodo desde una red diferente. De forma predeterminada, esto contendrá las redes conectadas a sus servidores.
Instalar y configurar Rudder Agent
A continuación, deberá instalar Rudder Agent en el sistema que desea administrar desde el servidor de Rudder.
De forma predeterminada, el agente Rudder no está disponible en el repositorio predeterminado de Debian 10. Por lo tanto, deberá agregar el repositorio Rudder a su sistema.
Primero, descargue y agregue 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, agregue 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 que se haya agregado el repositorio, actualícelo e instale el agente Rudder con el siguiente comando:
apt-get update -y
apt-get install rudder-agent -y
Después de instalar el agente de Rudder, deberá definir la dirección IP de su servidor de Rudder en el archivo de configuración del agente de Rudder.
Puedes hacerlo editando el siguiente archivo:
nano /var/rudder/cfengine-community/policy_server.dat
Agregue la siguiente línea:
your-rudder-server-ip
Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servicio del agente Rudder para implementar los cambios:
systemctl restart rudder-agent.service
Ahora puede verificar el servicio del agente Rudder con el siguiente comando:
systemctl status rudder-agent.service
Deberías obtener el siguiente resultado:
? 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 de timón
El servidor y el agente de Ruder ahora están instalados y configurados. Es hora de verificar si el agente de Rudder está agregado en el servidor de Rudder o no.
Abra su navegador web y escriba la URL https://your-server-ip/rudder y haga clic en Administració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ía 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ía ver su nodo recién agregado en la siguiente pantalla:
En la pantalla anterior, debería ver un 100 % de incumplimiento para un nodo recién agregado. Para resolver esto, deberá obligar al agente a ejecutar y enviar un inventario ejecutando el siguiente comando:
rudder agent inventory
Debería ver el siguiente resultado:
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, aprendimos cómo instalar el servidor Ruder en el servidor Debian 10. También aprendimos cómo instalar el agente de Rudder y agregarlo al servidor de Rudder. Ahora puede agregar más nodos a su servidor Rudder y comenzar a administrarlos. Para obtener más información sobre la configuración de Rudder, puede visitar el sitio de documentación de Rudder en Rudder Doc. Siéntase libre de preguntarme si tiene alguna pregunta.