Problemas de la VoIP y NAT


La VoIP suele ser muy problemática cuando hay enmascaramiento de direcciones involucradas, el mayor problema es que el protocolo SIP utiliza un puerto para señalización mientras que el audio funciona por otro. En este artículo explicaremos como funcionan los diferentes tipos de NAT, sabiendo esto podremos elegir el tipo de solución que mejor se adapte a nuestro escenario.

 


Autor: kr0m -- 25/07/2019 22:35:46

Sincronización Redis, bucle infinito


La sincronización de redis puede ser problemática si el dataset a transferir es de gran tamaño, mientras un master le pasa el dataset a un slave los cambios se guardan en ram, cuando el slave ha recibido los datos se le pasan los cambios que el master había almacenado en ram.

Si el buffer de cambios es demasiado pequeño el dataset ya no es válido y se reinicia el proceso de sincronización desde cero, esta reinicialización se producirá de forma indefinida formando un bucle infinito, en este artículo explicaremos como modificar dichos buffers para poder finalizar la sincronización con éxito.

 


Autor: kr0m -- 24/07/2019 09:27:51

Roles en Ansible


Los roles de Ansible nos permitirán reutilizar partes de código entre playbooks simplemente incluyendo el role pertinente, de este modo cuando necesitemos realizar algún cambio en el role solo tendremos que tocar un único fichero.
En este ejemplo tendremos un playbook base que incluirá tres roles, uno de configuración de screen, otro de instalación de utilidades básicas en Gentoo y otro de utilidades básicas en Ubuntu.

 


Autor: kr0m -- 23/06/2019 11:14:23

Selenium con python


Selenium es un entorno de pruebas de software para aplicaciones basadas en la web, este nos permite automatizar tareas a través de un navegador, en este caso simularemos un login en un web y un click sobre un botón de dicha web. Todo este proceso lo automatizaremos mediante un script en python que comprobará que hora es y actuará en consecuencia, este script lo dejaremos en forma de servicio para que corra idefinidamente.

 


Autor: kr0m -- 19/06/2019 08:31:35

Ezjails FreeBSD


Ezjail es una utilidad que nos ayudará a gestionar de forma mas sencilla los jails sobre FreeBSD, una característica interesante es que utiliza una plantilla base que se comparte entre jails mediante nullfs, de este modo se reutilizará la base sin utilizar espacio adicional en disco.
Las actualizaciones realizadas en la base se aplicarán de forma automática en el resto de jails, el sistema de ports se comportará de forma análoga.

 


Autor: kr0m -- 18/06/2019 21:46:23

Firewall bajo jails


Siguiendo con el artículo anterior sobre jails y este otro sobre ipfw vamos a explicar como configurar reglas de firewall en un jail, en el host padre cargaremos el módulo de firewall pero no filtraremos nada, cada jail filtrará su propio tráfico.

 


Autor: kr0m -- 17/06/2019 21:36:02

Iniciar ssh-agent en el arranque de las X


Tener la clave ssh protegida por passphrase está muy bien, en caso de robo el atacante tendrá que superar un segundo obstáculo, pero también es muy engorroso tener que meter la passphrase cada vez que queremos conectar a algún servidor, para ello tenemos ssh-agent que nos preguntará el password una vez y lo cacheará. De este modo tendremos la key protegida y nuestro trabajo como sysadmin seguirá siendo igual de ágil.

 


Autor: kr0m -- 15/06/2019 19:23:04

Jails bajo FreeBSD


Los sistemas tipo BSD disponen de chroot desde la época de 4.2BSD. chroot permite restringir el directorio raíz de un conjunto de procesos creando un entorno seguro y separado del resto del sistema, es una buena herramienta para tareas sencillas que no requieran mucha flexibilidad, características complejas o muy avanzadas. Por desgracia, desde su invención se han ido encontrando formas de saltarse las barreras que impone, es evidente que chroot no es la solución ideal para ejecutar servicios con seguridad. Este es uno de los principales motivos por los que se crearon las jaulas.


Autor: kr0m -- 09/06/2019 16:08:27

ARA y Ansible


Ara es una aplicación de registro de ejecuciones de Ansible, no ejecuta playbooks, si no que guarda en una base de datos el resultado de la ejecución manual para luego mostrar los datos a través de una interfaz web, esto nos permitirá debugear playbooks poco optimizados.

 


Autor: kr0m -- 08/06/2019 09:28:46

Autenticación SSH mediante certificados


Utilizar certificados mediante ssh nos puede resultar útil cuando un desarrollador pierde su key y hay que regenerarla, no tendremos que entrar en todos los servidores para instalar la nueva key,
simplemente generaremos otra, la firmaremos con la CA, añadiremos la antigua a la lista de revocadas y distribuiremos la lista de revocadas a los servidores.

 


Autor: kr0m -- 04/06/2019 19:06:45