Mostrando entradas con la etiqueta linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta linux. Mostrar todas las entradas

07 marzo 2014

Zabbix - Software Monitoreo de Infraestructura

El monitoreo de nuestros servidores y equipos de red es una de las actividades más importantes cuando somos administradores de sistemas o redes. Al día de hoy existen varias soluciones para esto, para mencionar algunos nagios, Groundwork, Solarwinds, entre otros. Pero hoy les hablaré del software de Monitoreo de Red Zabbix el cual he estado probando y ha llenado mis expectativas.  En esta publicación tocare que es Zabbix y más adelante publicaré un tutorial sobre como instalarlo.
Zabbix es un Sistema de Monitoreo de Redes creado por Alexei Vladishev. Está diseñado para monitorear y registrar el estado de varios servicios de red, Servidores, y hardware de red, es una solución de código abierto para el monitoreo de la disponibilidad y performance de nuestro servidores y equipos de red, ofrece monitoreo, alertas y visualización avanzada que están ausentes en otros software de monitoreo. Lo que más me llamo la atención es que cuando subes Zabbix te das cuenta que tienes herramientas que en otro tendrías que instalarlo como complemento, es decir, no vienen así en su instalación y es aquí donde duramos horas y horas tratando de hacer funcionar algo.

21 diciembre 2013

Conociendo Nagios, Software Monitoreo de Infraestructura

Nagios Core es un sistema de monitoreo de infraestructura de código libre que le permite a las organizaciones identificar y resolver alguna problema en la infraestructura antes de que afecte aplicaciones críticas en la organización. Nos permite mantener monitoreada toda nuestra infraestructura IT para asegurarnos que los sistemas, las aplicaciones, los servicios y los procesos críticos funcionen correctamente. En caso de una falla, el sistema pueda alertar al personal encargado sobre la falla, permitiéndoles resolverlo antes de que afecte funciones críticas de la organización o a los usuarios.


Algunos de los Features que podemos mencionar son:

·        Monitoreo Exhaustivo: monitorea todos los componentes críticos de una infraestructura IT incluyendo aplicaciones, servicios, sistemas operativos( Linux, Windows ), protocolos de Red( SSH, FTP, DNS, DHCP y mas), infraestructura de Red y mas.

·      Visiblidad: Nos provee una vista centralizada de todas las operaciones de la red y los procesos de la organización.

·      Alertas: el sistema alerta al personal encargado sobre cualquier falla via email o mensaje de texto. Las notificaciones multiusuario nos aseguran que las alertas lleguen al personal indicado.

·   Remediación de problemas: El manejador de eventos nos permite reiniciar automáticamente las aplicaciones, servicios, servidores o dispositivos si se detecta un problema.

·         Planificación de tendencia y capacidad: Permite a las organizaciones planificar actualizaciones antes de que un sistema obsoleto los coja por sorpresa.

·       Reportes: Asegura que los SLA se cumplan, provee un historial de las fallas, notificaciones y las alertas para analizarlas luego.

·  Arquitectura expandible: Fácil integración con las aplicaciones internas y de terceros. Múltiples desarrolladores trabajando para extender las funcionalidades de Nagios Core.

Este sistema tiene su versión gratuita para las organizaciones que no requieran de soporte y su versión de pago con planes de soporte profesional.

Más adelante estaré subiendo tutoriales sobre como instalarlo, configurarlo y para que veamos cómo funciona este sistema que es un excelente agregado a nuestra infraestructura y que nos permitirá tener un mayor control sobre ella.

Pueden visitar la página oficial de Nagios

24 octubre 2013

Reemplazando MySQL con MariaDB

En un post anterior les hablaba de MariaDB, Ahora vamos a ver como reemplazamos MySQL con MariaDB en nuestro sistema Linux. En Este caso vamos a trabajar con Centos y los comandos lo vamos a ejecutar como usuario Root.
Lo primero y mas importante es hacer un Backup de las bases de datos que tenemos.

# mysqldump --all-databases --user=root --password --master-data > BackupDBS.sql
Detenemos el servicio de MySQL
# service mysqld stop
Copiamos el Archivo de Configuración de MySQL
#cp /etc/my.cnf /tmp/
Removemos los paquetes de MySQL que tenemos
# yum remove mysql*
Para Evitar problemas de Dependencia, vamos a instalar el repositorio de REMI. Gracias a UnixMen.
# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
Instalamos el paquete compat-mysql55
# yum --enablerepo=remi-test --disablerepo=remi install compat-mysql55
Ahora si, Vamos con la instalación de MariaDB

Creamos un Archivo de repositorio de MariaDB en
# vi /etc/yum.repos.d/mariadb.repo
Para sistemas 32 Bits
[mariadb]
name=MariaDB
baseurl=http://yum.mariadb.org/5.5/centos6-x86gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Para Sistemas 64 Bits
[mariadb]
name=MariaDB
baseurl=http://yum.mariadb.org/5.5/centos6-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Guardamos el Archivo, y actualizamos
# yum update
Iniciamos la instalación de MariaDB
#yum install -y MariaDB-devel MariaDB-client MariaDB-server
Al Finalizar iniciamos el Servicio
# service mysql start# chkconfig mysql on
Corremos la instalación segura y configuramos el password de root
# mysql_secure_installation
Restauramos el Archivo my.cnf que copiamos anteriormente a la ruta correspondiente.
/etc/my.cnf

Ahora Restauramos el Backup que hicimos al inicio de nuestras bases de datos.
#mysql -u root -p < BackupDBS.sql
Finalmente reniciamos el servicio y nos logueamos para verificar y que tenemos todos los datos en MariaDB
#service mysql restart#mysql –u root –p
En este punto tenemos instalado MariaDB con todos nuestros Datos,

16 octubre 2013

Conociendo un poco MariaDB

MariaDB es un sistema de Gestión de base de datos derivado de MySQL con licencia GPL. Es Desarrollado por Michael Widenius, Fundador de MySQL, y la comunidad de Software Libre. Como sabemos MySQL sufrió cambios en los últimos anos, como cambio de propietario y realmente no ha evolucionado al ritmo que se esperaba.
MariaDB introduce dos motores de almacenamiento nuevos, uno llamado Aria que reemplaza a MyISAM y otro llamado XtraDB que sustituye a InnoDB. Cuenta con una alta compatibilidad con MySQL, esto porque posee los mismos comandos, las mismas interfaces, API’s y bibliotecas, esto nos permite migrar de un servidor a otro directamente.
Son muchas las Distribuciones de Linux que han decidido poner a un lado a MySQL e integrar a MariaDB como su gestor de Base de datos por defecto, Para mencionar algunas tenemos a Fedora, OpenSuse, ArchLinux, Red Hat entre otras. De la misma manera servicios Web que tenían su base de datos en MySQL ya han migrado a MariaDB y ejemplo de esto es Wikipedia.

Versiones
La versión de desarrollo de MariaDB es la 10.06 . Está construida sobre la versión 5.5, con algunas características de MySQL 5.6 y otras características nuevas no encontradas en ninguna otra versión anterior.
Diferencias en Caracteristicas.
Motores de almacenamiento:
Además de los mecanismos de almacenamiento estándar MyISAM, Blackhole, CSV, Memory y Archive, también se incluyen en la versión fuente y binaria de MariaDB los siguientes:
  • Aria XtraDB (Reemplazo de InnoDB)
  • PBXT (En MariaDB 5.1 , 5.2 y 5.3. Desactivado en 5.5 )
  •  FederatedX (Reemplazo directo de Federated)
  • OQGRAPH - nuevo en 5.2
  • SphinxSE - nuevo en 5.2
  • IBMDB2I . Oracle elimina esto en MySQL 5.1.55, pero se mantiene el código en MariaDB hasta la versión 5.5.
  • Cassandra en MariaDB-10.0 (Se incluirá motores de almacenamiento no-SQL en MariaDB).
Mejoras en la velocidad:
  • Una gran cantidad de mejoras en el optimizador MariaDB 5.3 . Subconsultas son ahora finalmente utilizable.
  • Reproducción más rápido y más seguro: Grupo de cometer el registro binario . Esto hace que muchas configuraciones que utiliza la replicación y la gran cantidad de cambios de más de 2x veces más rápido.
  • Mejoras para Innodb IO asíncrona subsistema en Windows.
  • Índice de motor MEMORY (HEAP) es más rápido. De acuerdo con una prueba simple, 24% más rápido en INSERTpara el índice de número entero y 60% más rápido de índice en una columna CHAR (20).
  • HECKSUM TABLE es más rápido.
  • Mejora el rendimiento de las conversiones de juegos de caracteres (y conversiones eliminado cuando no estaban realmente necesarios). Mejoras generales de velocidad es de 1-5% (según sql-bench) pero pueden ser mayores para grandes conjuntos de resultados con todos los caracteres entre 0×00-0x7f.
  • Grupo de subprocesos en MariaDB 5.1 y aún mejor en MariaDB 5.5 . Esto le permite ejecutar MariaDB con 200.000 conexiones + y con una notable mejora en la velocidad cuando se utilizan muchas conexiones.
  • Hay que mejorarla DBUG código para su ejecución más rápida cuando debug se compila pero no se utiliza.
  • El motor de almacenamiento Aria permite consultas complejas más rápido (consultas que normalmente utilizan tablas temporales basados ​​en disco). El Aria motor de almacenamiento se utiliza para las tablas temporales internas, que debe darle una aceleración cuando se hace una seleccion compleja. Aria es generalmente más rápido para las tablas temporales en comparación con MyISAM porque Aria almacena en caché, datos de la fila en la memoria y, normalmente, no tiene que escribir las filas temporales en el disco.
  • El conjunto de pruebas se extienda y ahora corre mucho más rápido que antes.
Menos advertencias y errores:
  • Los bugs son malos. Fijar tantos bugs como sea posible y tratar de no introducir otros nuevos.
  • Advertencias del compilador también son malos. Eliminar la mayor cantidad de advertencias del compilador como sea posible.
Verdaderamente Open Source:
  • Todo el código de MariaDB es liberado bajo GPL, LPGL o BSD. MariaDB no ha cerrado módulos de fuente como la que usted puede encontrar en MySQL Enterprise Edition. De hecho, todas las características de código cerrado en MySQL versión 5.5 de la empresa se encuentran en la versión MariaDB código abierto.
  • MariaDB incluye casos de prueba para todos los errores corregidos. Oracle  no proporciona casos de prueba para los nuevos errores corregidos en MySQL 5.5.
  • Todos los errores y los planes de desarrollo son públicos.
  • MariaDB es desarrollado por la comunidad de verdadero espíritu de código abierto.
Para todos los propósitos prácticos, MariaDB es una gota binario en sustitución de la misma versión de MySQL (por ejemplo MySQL 5.1 -> 5.1 MariaDB , MariaDB 5.2 y MariaDB 5.3 son compatibles, MySQL 5.5 será compatible con MariaDB 5.5 ).
Aqui les dejo un Link con un Documento de Linux Magazine con una comparativa Cara a Cara de MariaDB y MySQL. Mas Adelante subire el tutorial de instalacion y como podemos migrar una base de datos de MySQL a MariaDB.

11 septiembre 2013

Linux en Nuestras Vidas


Hoy quiero compartir una información muy importante de The Linux Foundation y que realmente me llamo la atención y una vez lo analizamos nos damos cuenta de esto.
Parece ser que Linux no recibe el suficiente cariño.
Los Sistemas Operativos de Apple y Microsoft siempre son los más destacados, pero Linux silenciosamente le da vida a dispositivos muy usados. Jim Zemlin, Director ejecutivo de The Linux Foundation dice, ” Usan Linux todos los días pero no lo saben. Es realmente una parte fundamental en nuestras vidas.
Linux hace correr los sistemas de control aéreo, los bancos, Submarinos. Tu vida y dinero están en las manos de Linux. Realmente no nos damos cuenta de la importancia de este sistema operativo actualmente.
The Linux Foundation mostró algunos ejemplos para probar que lo dicho por su director ejecutivo no es una exageración. Realmente dependemos de Linux mas de lo que Imaginamos.
Los Smartphones Y Tablets con Android tuvieron su inicio con Linux. El muy popular sistema operativo móvil usa Linux como su base, y con todos los dispositivos con Android que salen a diario esto sigue siendo relevante.
Muchos Dispositivos de entretenimiento del Hogar corren Bajo Linux.
La Mayoría de las Supercomputadoras a nivel Mundial corren bajo Linux. Se dice que  las 10 supercomputadoras mas rápidas, todas corren en Linux.
Linux corre todo el sistema de trenes de alta velocidad en Japón.
Linux hace funcionar Sistemas de control de Tráfico de alta tecnología, San Francisco comenzó a utilizar controladores de tráfico que corren bajo Linux.
Toyota usa Linux para hacer sus vehículos más inteligentes,  El sistema de entretenimiento y comunicación de los vehículos toyota corre bajo Linux.
DeLaval,  Una compañía de equipos lácteo, usa Linux en un sistema robotico para ordenar las vacas.
La Bolsa de Nueva York funciona con Linux, estos titanes financieros necesitaban un sistema que fuera confiable. Cuando hicieron el cambio a Linux en el 2007, la bolsa de Nueva York pudo reducir los costos y aumentar la flexibilidad.
Linux ayuda a impulsar  la investigación de la física de partículas de energía. CERN, el laboratorio mas grande de física de partículas, depende de Linux para controlar su acelerador de partículas.
Los grandes sistemas de control aéreo usan Linux.
Los Submarinos Nucleares usan Linux. En 2004, LockHeed Martin entrego un submarino nuclear al gobierno de Estados Unidos impulsado por Red Hat Linux.
Google, Amazon, Facebook todos usan Linux para varios servicios Web y en la nube.
Y estos son solo algunos ejemplos. En el Dia a Dia nos topamos con servicios y dispositivos que corren bajo Linux. Y no solo eso, Los sistemas más críticos en las grandes empresas corren bajo Linux por su confiabilidad y flexibilidad.

08 septiembre 2013

Mas Recomendaciones para Asegurar Nuestros Servidores Linux



Vamos con más recomendaciones para mejorar la seguridad de nuestros servidores, pero esta vez nos vamos a centrar un poco en reforzar la seguridad física de nuestros servidores que es otro punto importante para garantizar la integridad de los servicios y datos que alojan estos.. Vamos a ver unas medidas que podemos tomar para aumentar mucho más la seguridad de estos.


1- Coloque un Password al BIOS

Todos conocemos lo que es el BIOS, controla muchos parámetros importantes incluyendo desde donde bootea nuestro servidor y en qué orden. Esto puede ser una gran brecha de seguridad ya que si un malintencionado tiene acceso a nuestro servidor podría subir un sistema operativo alterno y tener acceso a informaciones  que tal vez consideremos delicadas. Así que es una medida que debemos tomar de colocarle un password al acceso al BIOS.

2- Coloque un Password a GRUB

Por defecto las distribuciones más populares de Linux usan GRUB como su Bootloader. GRUB puede ser utilizado para seleccionar diversas imágenes de Kernel disponibles en la partición del sistema operativo, así como pasarle parámetros de booteo al kernel. También nos permite bootear desde otra partición o dispositivo. GRUB puede ser utilizado para evadir cualquier medida de seguridad incluyendo la autenticación mediante el modo single User. Así que debemos proteger GRUB mediante un Password para mejorar la seguridad y que no puedan modificar los parámetros de booteo. Esto se logra con el comando grub-md5-crypt. Estaré publicando un tutorial sobre cómo lo logramos.

3- Activemos la Autenticación para el modo Single-user

El modo Single-user es usado para la recuperación del sistema. Por defecto, no se requiere autenticación cuando usamos este modo. Esto puede ser utilizado para evadir la seguridad del servidor y obtener acceso root. Así que es muy importante que activemos la autenticación para el modo Single User. Para lograr esto seguimos estos pasos como root:
# vi /etc/inittab
Al final del archivo agregamos.
su:S:wait:/sbin/sulogin
Ahora cuando queramos acceder al modo Single-user nos pedirá el password de root.

4- Deshabilite Ctrl-Alt-Delete

Cualquier mal intencionado que tenga acceso físico a nuestro servidor puede usar el teclado o conectar uno y simplemente usar la combinación de tecla Ctrl-Alt-Delete para reiniciar el servidor sin necesidad de loguearse. Imaginemos que nos reinicien un servidor crítico en un momento Crítico, así que lo mejor es que aseguremos esta parte por igual. Para deshabilitarlo y nos aseguramos que la siguiente línea estas comentada en /etc/inittab.
# vi /etc/inittab
ca::ctrlaltdel:/sbin/shutdown -t3 -r now ( Esta línea debe estar comentada)
Para que los cambios tengan efecto:
# init q

 5- Deshabilite el Booteo interactivo

Algunas distribuciones de Linux le permiten al usuario al momento del booteo entrar en modo interactivo presionando la tecla I. Usando este modo, un atacante puede deshabilitar el firewall y otros servicios del sistema. Para deshabilitar el modo interactivo seguimos los siguientes pasos como root.
Modificamos el Archivo /etc/sysconfig/init
# vi /etc/sysconfig/init
Modificamos lo siguiente:
PROMPT=no
Recuerden que una de nuestras responsabilidades cuando somos administradores de servidores es la seguridad y debemos de tratar de tener los mayores niveles para mantener la integridad de los datos.

03 septiembre 2013

Conociendo Nmap, Scanner Puertos de Comunicación (Seguridad)

Aqui les traigo otro post enfocado tambien en seguridad.

Nmap es una utilidad que nos sirve para explorar y auditar la seguridad de una red de comunicación o un dominio. Detecta Host, que puertos tiene abierto, servicios y aplicaciones que corren, sus sistema operativo,Firewalls, entre otros. Es una Excelente herramienta para realizar auditoria de redes y se usa para llevar a cabo escaneo rapidos en una gran cantidad de redes pero se pueden utilizar en host individuales.

Es capaz se utilizar diferentes técnicas de evasión de detección como escaneo stealth. Soporta escaneos sobre ciertos puertos específicos, entre rangos IP específicos, uso se paquetes Null, FIN, Xmas y ACK, además SYN que es el paquete por defecto. Esto significa que se mandan cierto tipo de paquetes a cada puerto y estos responderán con alguna señal que permitirá a scanner encontrar versiones y servicios.
Para instalar esta herramienta simplemente corremos estos comandos con root.
#yum install nmap
o
#apt-get install nmap
Ahora bien, nmap tienes varias opciones, aqui solo les mostraré algunas.
Si queremos hacer un escaneo basico podemos correr el comando nmap seguido de una ip o dominio pero solo nos devolvera los puertos que estan abiertos.

#nmap 192.168.1.2
o
#nmap ejemplo.com
Para escanear un rango de puertos especificos.
#nmap -p 22-60 192.168.1.1
Si queremos activar la detección de Sistema Operativo.
#nmap -O 192.168.1.1
o
#nmap -O ejemplo.com
Escanear con detección de puertos, sistema operativo y mas informaciones
#nmap -A -v 192.168.1.1
o
#nmap -A -v ejemplo.com
Cuando les hablaba en un post anterior sobre tips de seguridad, tocamos el tema de los puertos, con estos comandos podemos detectar que puertos abiertos tiene nuestro servidor y de ahi podemos proceder a cerrar lo que entendemos que no son necesarios. Como les hable esto es muy importante para reforzar la seguridad de nuestro servidor.
Aqui les dejo un Link para que vean mas a fondo todo sobre esta herramienta y las diferentes opciones. Les recomiendo que lo lean y lo pongan en práctica.

25 agosto 2013

Instalar Nginx de manera Sencilla en Centos 6


Anteriormente estuvimos hablando sobre Nginx y la popularidad que está tomando. Actualmente está impulsando muchas páginas web populares.
Ahora vamos a ver como lo instalamos en un Sistema con Linux Centos 6
 Vamos a entrar a una carpeta temporal para descargar el archivo repo de Nginx
# cd /tmp
# wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
# rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
Ahora procedemos a instalar NginX
# yum install nginx
Iniciamos el servicio Nginx
#service nginx start
Para que el servicio de Nginx suba al inicio.
#chkconfig –-levels 35 nginx on
Ahora vamos a ver la ubicación de los archivos de configuración
  • Directorio de Configuración: /etc/nginx/
  • Directorio de Logs: /var/log/nginx
  • Directorio Document Root nginx: /usr/share/nginx/html
  • Archivo de configuración: /etc/nginx/nginx.conf
  • Directorio configuración SSL y Vhost: /etc/nginx/conf.d/

Ya Aquí tenemos el servicio Web de Nginx instalados, el siguiente pasos es modificar algunas configuraciones básicas.

Procedemos ahora  a modificar el archivo de configuración de Nginx
# vi /etc/nginx/nginx.conf

Modificamos la directiva worker_processes que debe ser igual al número de CPU en el servidor.
worker_processes 2;

Guardamos y Salimos.
Ahora modificamos /etc/nginx/conf.d/default.conf
# vi /etc/nginx/conf.d/default.conf
Configuramos la Dirección IP y el puerto:
listen <su-direccion-ip>:80;
Configuramos el Nombre del servidor:
server_name www.midominio.com;
Guardamos el Archivo y reiniciamos el servicio de Nginx:
#service nginx restart

Aquí les mostré de manera simple como instalar y configurar Nginx , más adelante estaremos viendo configuraciones más avanzadas y como reforzar su seguridad.

20 agosto 2013

Nginx, un Servidor Web que merece nuestra atención.

Como todos sabemos cuando hablamos de servicios web lo primero que nos viene a la mente es Apache, y es que este actualmente es el servidor web mas popular y el mas utilizado. Pero hay un servidor web que esta tomando popularidad y es el que vamos a conocer ahora, que se llama Nginx.
Nginx, pronunciado en inglés engine x, es un servidor HTTP y proxy inverso de alto rendimiento, además funciona como servidor proxy para IMAP/POP3/SMTP. Fue desarrollado por Igor Sysoev para uno de los sitios mas visitado en Rusia. Nginx es más conocido por su estabilidad, sus características, configuración simple y su bajo consumo de recursos.
Nginx puede ser implementado para servir contenido HTTP dinámico en la red usando FastCGI, manejadores SCGI para scripts y puede servir tambien como balanceador de carga.
Una de las características que mas llama la atención de Nginx es su acercamiento de manejar los requerimientos basado en eventos, a diferencia de Apache que lo hace basado en procesos. Este modo de Nginx de manejar los requerimientos basados en eventos le permite consumir bajos recursos y asegurar un funcionamiento óptimo bajo mucha carga.
Caracteristicas de Nginx
  • Capacidad para manejar mas de 10,000 conexiones simultáneas con bajo uso de memoria.
  • Proxy inverso con caching
  • Balanceo de carga
  • Tolerancia a Fallos
  • Soporte TLS/SSL
  • Soporte FastCGI, SCGI, uWSGI con caching
  • Servidores Virtuales basados en nombre y dirección IP
  • Compatible con IPv6
  • Streaming FLV y MP4
  • Autenticación de acceso
  • Compresión y decompresión gzip
  • Reescritura de URL
  • Limitaciones de conexiones concurrente y respuestas
  • Manejo de ancho de banda
  • Geolocalización basada en direcciones IP
  • Tracking de usuarios
  • WebDAV
  • Procesamienro de datos XSLT
  • Perl scripting incrustrado
  • Proxy SMTP, POP3, IMAP
  • entre otros,
Actualmente Nginx impulsa el 12.18% de los portales web activos. Para mencionar algunos de los sitios impulsados por Nginx tenemos Netflix, WordPress.com, Zynga, SoundCloud, Github, Hulu, Pinterest y muchos otros mas.
Si queremos que nuestros servicios web sean rápidos sin la necesidad de gastar mucho de dinero en hardware, pues definitivamente Nginx merece nuestra atención.
Actualmente estoy preparando un ambiente para ponerlo a prueba y mas adelante estaré publicando sobre las pruebas y como funciona.