Archivo de la categoría: Linux

Cambios de httpd.conf en CentOS 7

Cambios de httpd.conf en CentOS 7Hace unos meses os indicamos en esta guía, como actualizar la configuración de las conexiones simultaneas mediante MaxClients. Esta configuración se realizaba en el httpd.conf. El problema es que se han realizado cambios de httpd.conf en CentOS 7 y la ruta donde se incluye éste y otros valores ya no es la misma. Incluso el fichero tampoco es el mismo.

Por ello, hemos decido realizar esta breve guía, para así indicaros indicaros donde debéis acceder. Sigue leyendo

Facebooktwittergoogle_plus

Consultar el espacio ocupado en nuestro VPS mediante SSH

 consultar el espacio ocupado en nuestro VPS mediante SSHHoy en día, gracias a las utilidades que nos ofrece el panel Plesk, podemos realizar gran multitud de tareas desde el propio panel, de forma fácil y sencilla, sin necesidad de acceder mediante SSH a nuestro servidor. No obstante, hay ciertas tareas que es muy rápido realizarlas desde el terminal, como es el caso que os vamos a comentar hoy. En este articulo, os vamos a comentar como consultar el espacio ocupado en nuestro VPS mediante SSH. Sigue leyendo

Facebooktwittergoogle_plus

Las isos de Linux Mint han sido hackeadas

Linux Mint HackeadoDesde hace bastante tiempo, Linux Mint es considerada como una de las mejores distribuciones Linux, y cada vez va tomando mas relevancia, superando en ocasiones a distribuciones mucho mas conocidas como Ubuntu.

El caso es que los autores del proyecto, han anunciado en su página oficial, que el pasado día 20 de febrero, sufrieron un ataque en sus servidores, y lo que es peor, se sustituyeron las isos del proyecto por otras modificadas. Sigue leyendo

Facebooktwittergoogle_plus

Tareas programadas desde Plesk en tu VPS

folder-blue-scheduled-tasks-iconUna tarea programada consiste en configurar una funcionalidad concreta para que sea ejecutada de manera automática con una frecuencia de tiempo determinada. Dicha funcionalidad puede ser cualquier cosa, como un envío de correo a clientes, ejecución de copias de seguridad, actualización de estadísticas, etcétera.

Sigue leyendo

Facebooktwittergoogle_plus

Nuevos comandos para Centos 7

centosLa nueva versión de CentOS 7 introduce un cambio en uno de los comandos más utilizados, service, que es sustituido por systemctl.

Por el momento el comando service continua funcionando, aunque cada vez que lo ejecutemos nos aparecerá un mensaje recordando el nuevo comando, ya que en futuras versiones será finalmente eliminado. Sigue leyendo

Facebooktwittergoogle_plus

Acelera tus webs con el módulo PageSpeed de Google

pagespeedPageSpeed es un módulo de código abierto para Apache desarrollado por Google que automatiza muchas de las optimizaciones y buenas prácticas que recomienda Google PageSpeed para mejorar la velocidad de nuestras páginas. Funciona aplicando diversos filtros de salida, es decir, haciendo cambios en el contenido antes de que este salga del servidor hacia el cliente.

Hay más de 40 filtros de optimización disponibles, algunos de los cuales son:

  • Optimización de imágenes y compresión
  • Concatenación y minificación de recursos CSS y JavaScript
  • Extensión de caché
  • Carga aplazada de JavaScript y recursos gráficos
  • Y muchos otros más

Instalarlo en uno de nuestros VPS es muy sencillo. Vamos a ver cómo sería una instalación completa en un VPS con CentOS, el sistema operativo que recomendamos para los VPS.

Primero descargamos el paquete para CentOS

wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm

Una vez se descarga, ejecutamos la instalación

sudo yum install at  # si no tienes 'at' ya instalado
sudo rpm -U mod-pagespeed-*.rpm

Tan fácil como esto, ya tendríamos el módulo instalado. Reiniciamos Apache con el comando

service httpd restart

Para comprobar que se ha instalado y PageSpeed está activo, abrimos la consola de desarrollador del navegador y en las cabeceras de respuesta del servidor, PageSpeed añade la siguiente:

Captura de pantalla 2015-07-06 a las 16.49.37El archivo de configuración global se encuentra en /etc/httpd/conf.d/pagespeed.conf y se puede configurar individualmente por dominios o carpetas mediante .htaccess.

La configuración que trae por defecto el módulo PageSpeed es bastante efectiva, pero si tenemos casos especiales o se quiere optimizar algunas cuestiones al máximo, deberemos echar mano de la documentación oficial.

Facebooktwittergoogle_plus

Cómo instalar Fail2Ban para proteger tu VPS (2ª parte)

lockEn el anterior post vimos cómo instalar Fail2Ban en un VPS con CentOS, y en esta segunda y última entrega vamos a ver cómo configurar los parámetros mas básicos y algunos filtros útiles.

Recien instalado, Fail2Ban viene con una configuración por defecto que está en /etc/fail2ban/jail.conf, pero es muy recomendable hacer una copia local y hacer nuestra configuración en ella:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Una vez hecha la copia local, debemos configurar los parámetros básicos.

vi /etc/fail2ban/jail.local

El fichero puede editarse también por sFTP si no estás familiarizado con vi.

La primera sección es la de [DEFAULT], que tiene los siguentes parámetros básicos:

  • ignoreip: Aquí podemos listar separadas por un espacio las IPs que fail2ban debe ignorar, es decir, una lista blanca. Si dispones de IP fija sería una buena idea ponerla.
  • bantime: Tiempo en segundos que banea la IP que se salte alguna de las normas.
  • maxretry: Intentos máximos antes de banear una IP.
  • findtime: Por defecto está en 10 minutos, si un usuario intenta conectarse más veces de el valor maxretry en menos de 10 minutos, se le baneará.

Cuando ya estén configurados los parámetros básicos, se puede continuar viendo los diferentes servicios que pueden ser protegidos por Fail2Ban y se puede activar o personalizar cualquiera de ellos. Por ejemplo el servicio de protección para SSH viene activo por defecto:

[ssh-iptables]

enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
           sendmail-whois[name=SSH, dest=you@example.com, sender=fail2ban@example.com, sendername="Fail2Ban"]
logpath  = /var/log/secure
maxretry = 5

En este caso deberíamos configurar los parámetros “dest” y “sender” para que cuando salte esta norma, nos envíe un correo de aviso a la dirección que le indiquemos.

Cuando el archivo de configuración esté a nuestro gusto, guardamos y siempre debemos reiniciar Fail2Ban para que los cambios tengan efecto.

sudo service fail2ban restart

Fail2Ban viene por defecto con muchos servicios preconfigurados que sólo debemos activar en el fichero de configuración para empezar a protegerlos. Por ejemplo algunos que consideramos útiles pueden ser:

  • apache-badbots: banea bots conocidos que se dedican a escanear la web en busca de emails a los que enviar spam.
  • php-url-fopen: banea usuarios que intenten explotar esta función a traves de peticiones GET/POST
  • horde: si usas este webmail, puedes protegerlo
  • apache-modsecurity: banea IPs que se salten normas de ModSecurity (si está habilitado)

Puedes obtener más información y ver la documentación en la web oficial de Fail2Ban.

Primera parte: cómo instalar Fail2Ban

Facebooktwittergoogle_plus

Cómo instalar Fail2Ban para proteger tu VPS (1ª parte)

fail2banConectar a tu VPS  por SSH con una buena contraseña es un método muy seguro de acceder a tu servidor, pero el servicio SSH por su naturaleza debe estar expuesto a internet, lo cual no deja de ser un vector de ataque para potenciales hackers y debemos hacer todo lo posible para reducir este riesgo al mínimo.

De hecho si revisas los logs  de este servicio, posiblemente encuentres repetidos intentos de login, tanto por parte de individuos como de bots, tratando de acceder por fuerza bruta, probando una contraseña tras otra hasta encontrar la que entre y tener acceso root en el servidor.

Fail2Ban es una herramienta cuya función es mitigar este tipo de ataques. Lo hace leyendo constantemente los logs de acceso, y cuando detecta que se está saltando alguna de las reglas que tenga configuradas, hace cambios en el firewall para bloquear el acceso al atacante.

Vamos a ver cómo instalar Fail2Ban en un VPS con CentOS, que es el sistema operativo que recomendamos a nuestros clientes. Primero debemos habilitar el repositorio EPEL.

wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm

Una vez habilitado, instalamos el paquete con yum:

yum install fail2ban

Ya tendríamos instalado Fail2Ban. En el próximo post explicaremos cómo configurar los parámetros más básicos y algunos de los filtros más útiles, aunque si no puedes esperar y quieres saber más sobre Fail2Ban, puedes ver la documentación oficial y empezar a configurar este programa.

Segunda parte: cómo configurar Fail2Ban

Facebooktwittergoogle_plus

Cómo instalar MyTop en tu VPS para monitorizar MySQL

mytopMyTop es una herramienta de consola que es muy recomendable instalar en los VPS para monitorizar tu base de datos MySQL. Es especialmente interesante a la hora de identificar consultas especialmente lentas a la base de datos, y así eliminar los cuellos de botella que crean y mejorar el rendimiento tanto de las páginas web como del servidor en general. Su interfaz es muy parecida al comando top, programa en el que está claramente inspirado.

Vamos a ver cómo instalar MyTop en un VPS con CentOS 6, que es el sistema operativo más utilizado y recomendado en los VPS de Evidalia, aunque en principio se puede instalar prácticamente cualquier sistema UNIX que cuente con Perl, DBI y el módulo Term::ReadKey, incluyendo Mac OS X.

Para poder instalar MyTop, primero debemos habilitar el repositorio EPEL.

wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm

Una vez habilitado, ya podemos instalar MyTop:

yum install mytop

Así quedaría instalado MyTop en el VPS.

Ahora ya podemos utilizarlo, para ejecutar el comando vamos a suponer que nuestro nombre usuario de la base de datos es “administrador”, la contraseña es “g403jd2kds” y el nombre de la base de datos es “blog”. El comando tomaría esta forma:

mytop -uadministrador -pg403jd2kds -bblog

Es importante no quitar los argumentos -u, -p y -b seguidos del nombre de usuario, contraseña y nombre de la base de datos sin dejar espacio como en el ejemplo. Y ya tendríamos mytop en marcha para monitorizar la base de datos.

Para más información, se puede ver la documentación oficial y la web oficial.

Facebooktwittergoogle_plus

¿Qué es Node.js?

nodejs-logoNode.js es una tecnología open source relativamente nueva que está tomando mucha fuerza, y que básicamente permite ejecutar código Javascript en el servidor, en lugar del navegador donde es normalmente ejecutado. Puede ser instalado en las tres plataformas principales (Windows, Mac OS X y Linux).

Node.js interpreta código Javascript utilizando el motor V8 de Google y proporciona un modelo dirigida por eventos y operaciones de entrada/salida asíncronas, lo cual hace que sea ideal para aplicaciones en tiempo real con muchas conexiones simultáneas donde la comunicación entre clientes y servidor es constante (un ejemplo sencillo sería un chat, o una API REST).

Actualmente el lenguaje de programación de lado de servidor más usado es sin duda PHP, pero al contrario que este, Node.js no necesita de un servidor como Apache o nginx, ya que es el propio Node quien se encarga de recibir conexiones y entregar las respuestas HTTP. Afortunadamente encargarse de esto es relativamente sencillo y se traduce en un rendimiento enorme y gran escalabilidad, haciendo capaz a Node de responder a un número de conexiones que colapsarían a PHP.

Sin embargo, no todos los aspectos son positivos. Una de las principales desventajas de Node.js actualmente es la disponibilidad en servidores compartidos. Ahora mismo, no se puede simplemente subir una aplicación en Node a un servidor y esperar que funcione. Por este motivo es el uso de VPS cada vez más popular, ya que se tiene libertad total para instalar cualquier software, incluyendo Node, y así adoptar rápidamente este tipo de nuevas tecnologías.

Para obtener más información, puede visitar las siguientes webs:
nodejs.org
Wikipedia

Facebooktwittergoogle_plus