CentOS

  • Algo que me había quedado pendiente luego de instalar CentOS 7 con KDE, era instalar el diccionario y reglas de autocorrección en español para poder revisar la ortografía, por ejemplo desde KWrite.

  • Este artículo puede resultar muy interesante para quienes deseen instalar la versión "Desktop" de CentOS 7, con en el entorno de escritorio KDE.

  • El servicio SFTP (SSH File Transfer Protocol o Secure File Transfer Protocol) es un protocolo de red que proporciona la funcionalidad necesaria para la transferencia y manipulación de archivos a través de una conexión segura. Básicamente se trata de un protocolo FTP (File Transfer Protocol) a través de una conexión SSH para proporcionar seguridad a los datos. Por lo tanto, la seguridad no la provee directamente el protocolo SFTP, sino SSH.

    Este artículo explica cómo instalar FileZilla en CentOS y luego abrir una conexión SFTP con un servidor remoto para transferir y manipular archivos y directorios.

  • Continuando la saga de artículos sobre virtualización con KVM en CentOS 6.2 (Virtualización en CentOS 6.2 utilizando KVM explica paso a paso cómo instalar KVM y crear una máquina virtual con Windows XP y Utilizar SPICE en máquinas virtuales KVM explica como convertir una máquina virtual KVM existente para que utilice SPICE en lugar de VNC) este  artículo está dedicado al acceso remoto de máquinas virtuales utilizando el cliente SPICE, utilizando como ejemplo la instalación y configuración del cliente SPICE en Windows 7.

    Además de explicar la instalación de los componentes SPICE tanto en el host (Spice Client y Spice Server) como en el guest (Spice Device y Spice Driver/Agent), el artículo Utilizar SPICE en máquinas virtuales KVM explica cómo conectarse a una máquina virtual utilizando el cliente SPICE para GNU/Linux. En este artículo se explica la instalación y configuración del cliente SPICE en Windows 7 y la configuración del firewall en el host CentOS 6.2.

  • El repositorio RPMforge es provisto por la comunidad. Provee más de 5000 paquetes para CentOS, incluyendo wine, vlc, mplayer, xmms-mp3, flash y otras herramientas multimedia populares. No es parte de Red Hat o CentOS pero está diseñado para funcionar en estas distribuciones.

    Los paquetes se proveen en formato RPM y en muchos casos están listos para utilizar. El repositorio RPM por defecto no reemplaza ningún paquete oficial base de CentOS.

  • En este artículo voy a demostrar de qué forma es posible recibir alertas de seguridad de CentOS, para mantener a nuestros servidores actualizados y libres de vulnerabilidades. Para ello sólo es necesario suscribirse a la lista de correo electrónico "CentOS-announce".

  • Hoy actualicé mi CentOS 6 y me encontré con un upgrade de versión. Ha sido liberada la versión 6.4 y están disponibles los DVD's para descargar.

  • Generalmente la partición /boot suele tener un tamaño reducido en disco, ya que se utiliza para guardar el kernel Linux, la imagen initrd y el bootloader. El problema es que, al pasar el tiempo y las actualizaciones, se van acumulando versiones antiguas del kernel Linux hasta llenar la partición boot. Este artículo explica cómo eliminar las versiones del kernel viejas/desactualizadas en un sistema CentOS para ganar espacio en la partición /boot.

  • Hoy liberé un nuevo script Bash, llamado "checkmyfarm", para dar soporte a mi sistema de actualización de servidores en paralelo. Este script tiene el propósito de enviar un único mail incluyendo el resumen de actualizaciones disponibles en todos los servidores de la granja, y reemplaza al viejo verificar_actualizaciones.sh (el cual corría individualmente en cada servidor). De esta forma, en lugar de recibir un mail por cada servidor, recibo un único mail con el resumen de actualizaciones disponibles en todos los servidores de mi granja.

  • EPEL (Extra Packages for Enterprise Linux) es un grupo de desarrollo de Fedora que crea, mantiene, y administra un conjunto de alta calidad de paquetes adicionales para Enterprise Linux, incluyendo, pero no limitado a, Red Hat Enterprise Linux (RHEL), CentOS y Scientific Linux (SL).

    Los paquetes EPEL usualmente están basados en sus contrapartes Fedora y no entran en conflicto o reemplazan paquetes base de las distribuciones Enterprise Linux.

  • Todos los administradores de sistemas (sysadmins) GNU/Linux sabemos que para configurar la tabla de ruteo del sistema se utiliza el comando ip route. Aunque, la herramienta ip manipula la tabla de ruteo, configuración de dispositivos, políticas y túneles de forma dinámica. Es decir, al reiniciar el sistema los cambios se pierden. Por este motivo, cada distribución GNU/Linux utiliza su propio formato de archivo de configuración de red, para que los cambios persistan. De esta forma es posible que las interfaces, tablas de ruteo, etc. se configuren automáticamente cada vez que se inicia Linux.

  • Samba permite a las computadoras GNU/Linux compartir archivos e impresoras sobre una red local. Mediante el protocolo SMB, una computadora con GNU/Linux puede ser visible en redes Windows o "Mis sitios de red" de la misma forma que cualquier otra computadora con Windows. De esta forma es posible compartir archivos e impresoras, por ejemplo, las máquinas con Windows pueden acceder a una impresora conectada en un sistema GNU/Linux, y el sistema GNU/Linux puede acceder a una impresora conectada a una máquina con Windows. Además, en una red mixta con sistemas Windows y GNU/Linux, samba permite que todos vean los archivos compartidos entre sí. Por lo tanto samba es muy útil en redes donde coexisten computadoras con Windows y GNU/Linux.

  • Un bridge ethernet es el análogo a un switch ethernet físico. Puede pensarse como una especie de switch por software que se utiliza para conectar múltiples interfases ethernet (físicas o virtuales).

    Al trabajar con máquinas virtuales, si se desea que éstas se conecten a la misma LAN que el host físico, es necesario utilizar una interfaz bridged.

  • Hace unos meses expliqué cómo deshabilitar el reporte de errores en Ubuntu: Qué es "whoopsie" y cómo eliminarlo. Esta vez es el turno de CentOS.

  • Una de las premisas máximas de Seguridad de la Información es deshabilitar todo lo que no sea estrictamente necesario. Con todo, se refiere a servicios, aplicaciones, módulos, y cualquier componente de software y hardware. ¿Por qué deshabilitar algo que no se usa? Primero, para liberar recursos y mantener el sistema simple y estable. Segundo, para minimizar la base de ataque al sistema. Todo componente no utilizado, puede ser aprovechado por un atacante para encontrar una brecha de seguridad, y pasar desapercibido.

    Durante el proceso de hardening de un servidor GNU/Linux, se busca deshabilitar todo servicio, módulo y paquete que no sea utilizado. Si no se utiliza el protocolo IPv6 (como sucede generalmente, ya que la adopción de IPv6 aún es baja), es recomendable desactivarlo. Por ello, en este artículo voy a explicar cómo deshabilitar IPv6 en las distribuciones GNU/Linux Debian y CentOS.

  • Hoy estaba revisando un log de Apache en busca de una serie de eventos anormales que detecté con Grafana, y me topé con una tonelada de entradas producidas por collectd:

    [root@centos ~]# less /var/log/httpd/access_log
    localhost - - [11/Nov/2018:03:48:47 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:48:56 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:06 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:16 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:26 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:36 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:46 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:49:56 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:06 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:16 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:26 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:36 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:46 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:50:56 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:06 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:16 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:26 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:36 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:46 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:51:56 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:06 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:16 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:26 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:36 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:46 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:52:56 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:53:06 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    localhost - - [11/Nov/2018:03:53:16 -0300] "GET /apache_status?auto HTTP/1.1" 200 299 "-" "collectd/5.8.0"
    

    Veamos cómo configurar Apache para que no registre en el log los accesos desde localhost.

  • En este artículo voy a explicar cómo implementar un acceso como root (superusuario) a través de SSH cuando el servidor sshd no lo permite (está deshabilitada la opción PermitRootLogin):

    PermitRootLogin no
    

    Por seguridad, es lógico que todo servidor SSH impida el acceso como root. Sin embargo, es posible lograr implementar un acceso como root, lo cual puede simplificar el acceso para tareas administrativas o la copia de archivos a través de SFTP hacia directorios donde un usuario común no tiene acceso (por ejemplo, directorios de aplicaciones y servicios).

    Claro está que el mecanismo propuesto en este artículo es una configuración insegura, pero sirve a fines didácticos, para comprender que no basta con un simple PermitRootLogin no para impedir un acceso como root, sino que es posible evitar esta restrición con una simple configuración de sudo. Un ejemplo de cómo utilizar sudo con fines maliciosos.

  • En estos últimos artículos expliqué cómo montar una caché local de paquetes implementada a través de un proxy con Nginx, tanto para Debian como para CentOS. Para mejorar el esquema se me ocurrió balancear la carga de red entre varios mirrors. De esta forma, nuestro proxy repartirá los accesos entre varios mirrors, en lugar de utilizar un único mirror.

    El balanceo de carga es un problema común en la actualidad, especialmente cuando se manejan cientos o miles de solicitudes/accesos desde varios clientes al mismo tiempo. Este artículo apunta a demostrar cómo es posible implementar un balanceador de carga de manera extremadamente simple utilizando los módulos de Nginx ngx_http_upstream_module y ngx_http_proxy_module.

  • En este artículo voy explicar paso a paso cómo instalar CentOS 7, con en el entorno de escritorio KDE. Incluyendo 28 capturas de pantalla.

  • La herramienta dig (domain information groper) se utiliza para interrogar servidores DNS. Realiza lookups DNS y muestra la respuesta retornada por el servidor consultado. Los administradores de redes y DNS utilizamos dig para diagnosticar y resolver problemas debido a su flexibilidad, facilidad de uso y claridad de la salida. Otras herramientas como por ejemplo nslookup tienden a proveer menor funcionalidad que dig.