489 - Semaphore, ansible y hardening

489 - Semaphore, ansible y hardening

Esto del hardening en #linux no es ni mas ni menos que conseguir que tu servidor, rasbperry, VPS o lo que tu quieras para que sea mas seguro

1:25
-3:15

Hace un par de semanas asistí a un taller de hardening en Linux e introducción al hardening con Ansible en Linux Center de la mano de Slimbook e impartido por Jesús Amorós, y se me vinieron a la cabeza miles de nuevos recursos para publicar aquí. Por supuesto que miles de recursos en todos los formatos posibles, tanto artículos, como tutoriales, como podcast como vídeo. Producción a tope. Y es que la posiblidad de automatizar determinados procesos a golpe de clic, es algo que siempre me fascina. Y me fascina por dos razones fundamentales. La primera, es que cuando algo está automatizado ya no tienes que preocuparte sobre como hacerlo, porque ya lo tienes en un script, o como quieras automatizarlo. La segunda, es que el resultado casi siempre es el mismo. Y digo casi siempre, porque en ocasiones, hacemos de las nuestras. Así, que combinar la automatización con securizar nuestras máquinas es como poner la guinda al pastel. Y es que con esto de semaphore, ansible y hardening, lo que te quiero hablar es sobre seguridad, como securizar tu servidor, como securizar tu Raspberry o lo que tu quieras.

Semaphore, ansible y hardening

Semaphore, ansible y hardening

Sobre securización

No es la primera, ni será la última vez, que te hablo sobre securizar. En concreto, en el episodio 63 del podcast ya te hablé sobre como asegurar tu Raspberry, en el episodio 292, te hablé sobre seguridad básica en tu servidor Ubuntu, y en el 443 sobre securizar y homogenizar la Rasbperry, entre otros. Así que como ves, es algo que me ocupa y me preocupa.

Tener un script, o una herramienta, donde esté organizado todo lo que tenemos que hacer para tener nuestros servidores, máquinas, Rasbperry, VPS, seguros, es garantía de éxito. Así, que después del taller, que te he mencionado anteriormente, decidí retomar el contacto con un viejo conocido como es Semaphore. Pero antes de nada, quiero hablarte sobre el hardening, para que no pienses que se trata de algo relacionado con el cultivo de las plantas.

Sobre el hardening

Imagina que tu sistema informático es una fortaleza. Y, como todo castillo, necesitas protegerlo de posibles amenazas, ¿verdad? Entonces, para hacer que tu castillo sea más seguro, debes hacer lo que se llama «hardening».

El hardening es básicamente el proceso de agregar capas y más capas de seguridad a tu castillo, como si fueran muros más gruesos y torres más altas. Puedes hacer cosas como configurar cortafuegos para bloquear el acceso no autorizado, encriptar tus datos para mantenerlos seguros, y configurar contraseñas seguras para que los atacantes no puedan entrar con facilidad.

Pero, como todo buen castillo, también necesitas mantenerlo actualizado. Eso significa estar al tanto de las últimas amenazas y parches de seguridad, y agregar nuevas medidas de seguridad según sea necesario. Además, debes asegurarte de que todos los que trabajan en el castillo sepan cómo mantenerlo seguro y sepan qué hacer en caso de un ataque.

Recuerda, el hardening no es una solución mágica que garantiza que nunca serás atacado. Pero, con el tiempo y esfuerzo, puede hacer que tu castillo sea más seguro y resistente contra las amenazas. ¡Así que ponte la armadura, toma tu espada de seguridad y comienza a endurecer tu sistema informático!

Así que existen determinadas medidas que puedes aplicar para mejorar la seguridad de tu VPS, servidor, Raspberry, etc. La cuestión es que tienes que aplicarla. Y es aquí, precisamente, donde los usuarios de a pie solemos fallar, porque, al no tener este tipo de acciones automatizadas, simplemente no las aplicamos. Y no las aplicamos, porque se nos olvida, o porque lo dejamos para otro momento, o por cualquier otro tipo de absurda razón.

Así que tenemos que acostumbrarnos a tener todos estos procesos, automatizados para hacernos la vida lo mas sencilla posible, y que aplicar un hardening a un VPS que acabamos de poner en marcha sea cuestión de coser y cantar. Y como hacerlo… con Ansible y Semaphore.

Sobre Ansible

Imagina que eres un mago y necesitas hacer muchos hechizos para mantener tus servidores y servicios en la nube funcionando. Pero cada vez que haces un hechizo, tienes que ir a cada servidor y ejecutarlo manualmente. ¡Eso es un dolor de cabeza mágico!

Pero, ¡un día descubres Ansible! Ansible es como tener un asistente mágico que hace todos los hechizos por ti. Puedes escribir tus hechizos en un lenguaje simple y Ansible los ejecuta automáticamente en cada servidor.

Y eso no es todo, ¡Ansible también puede hacer que tus hechizos sean reproducibles y escalables! Puedes crear playbooks (libros de hechizos) que describen cómo configurar tus servidores y servicios. Luego, puedes ejecutar el playbook una y otra vez en diferentes servidores, ¡y Ansible hará todo el trabajo por ti!

Pero espera, ¡hay más! Ansible también te permite automatizar tareas como la creación de usuarios, la instalación de paquetes, la configuración de firewall y mucho más. Así que no tienes que preocuparte por hacer cada tarea manualmente.

¿Es difícil Ansible?

Ansible es una herramienta poderosa, pero también es bastante accesible para los usuarios, especialmente si tienes conocimientos previos de scripting y configuración de sistemas.

La curva de aprendizaje de Ansible puede variar dependiendo de tu nivel de experiencia en programación y administración de sistemas. Pero lo bueno es que Ansible utiliza un lenguaje de programación muy sencillo y fácil de entender llamado YAML (YAML Ain’t Markup Language). Esto significa que no tienes que aprender un lenguaje de programación complicado para empezar a usar Ansible.

Además, Ansible viene con una documentación completa y una gran comunidad de usuarios dispuestos a ayudar. Puedes encontrar muchos tutoriales, guías y ejemplos en línea para ayudarte a aprender y resolver cualquier problema que puedas encontrar.

Dicho esto, si eres completamente nuevo en la administración de sistemas, puede ser útil tener una base sólida en conceptos básicos como SSH, línea de comandos y administración de servidores antes de sumergirte en Ansible.

¿Donde puedo aprender sobre Ansible?

Hay muchas formas de aprender sobre Ansible,

  • Documentación oficial de Ansible: La documentación oficial de Ansible es un excelente lugar para comenzar. Proporciona una guía detallada sobre cómo instalar, configurar y utilizar Ansible, y es actualizada regularmente.
  • Cursos en línea: Hay muchos cursos en línea que cubren Ansible, tanto gratuitos como de pago. Algunos de los más populares son los cursos ofrecidos por Udemy, Coursera, Pluralsight y Linux Academy.
  • Tutoriales en línea: Hay muchos tutoriales en línea que pueden ayudarte a aprender sobre Ansible. Algunos de los sitios web más populares para buscar tutoriales son DigitalOcean, Linode, y Ansible para DevOps, y por supuesto aquí, en atareao.es en el tutorial sobre Ansible
  • Comunidad de Ansible: La comunidad de Ansible es una gran fuente de información y recursos. Puedes unirte a grupos de usuarios de Ansible en línea, como la comunidad de Ansible en Reddit o en el canal de Ansible en Slack, para hacer preguntas y obtener ayuda.
  • Práctica: La mejor manera de aprender Ansible es practicando. Puedes comenzar con proyectos sencillos, como la automatización de tareas de configuración en un solo servidor, y luego avanzar a proyectos más complejos y escalables.

El inconveniente, si lo podemos llamar así, es que tienes que tirar de terminal, y no a todo el mundo le resulta atractivo lidiar con esta interfaz. Sin embargo, precisamente, aquí te traigo la siguiente solución, que es, ni mas ni menos que Ansible Semaphore.

Sobre Ansible Semaphore

Ansible Semaphore es una interfaz web de código abierto para Ansible, una herramienta de automatización de TI popular que permite la configuración y el aprovisionamiento de servidores y servicios en la nube.

Con Ansible Semaphore, los usuarios pueden crear y ejecutar tareas de Ansible sin necesidad de escribir código YAML o utilizar la línea de comandos de Ansible. La herramienta permite a los usuarios crear proyectos, cargar inventarios, crear plantillas y crear flujos de trabajo.

Además, Ansible Semaphore proporciona una interfaz gráfica de usuario intuitiva que permite a los usuarios monitorear el progreso de las tareas y ver los resultados en tiempo real. También admite la integración con sistemas de control de versiones como Git y sistemas de autenticación y autorización externos como LDAP.

En resumen, Ansible Semaphore es una herramienta útil para los equipos de TI que desean simplificar la creación y ejecución de tareas de Ansible mediante una interfaz gráfica de usuario fácil de usar.

Instalación

Ansible Semaphore es realmente sencilla de instalar. De echo, en mi caso, la tengo con Docker y es tremendamente fácil ponerla en marcha, y olvidarte de realizar otras operaciones tirando de terminal.

En el proyecto de Self Hosted, en GitHub, encontrarás los archivos necesarios para poner en marcha tu propio Ansible Semaphore en dos patadas, de forma literal.


Espero que te haya gustado este nuevo episodio del podcast. Si puedes, te agradecería una valoración en iVoox y/o en Apple Podcast.

Deja una respuesta

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