Había estado buscando como monitorizar mi servidor VPS de un modo fácil. Las premisas eran que fuese sencillo y que pudiera acceder desde móvil o tablet, sin necesidad de ordenador. Lo encontré.

En Github puedes descargarte linux-dash que es un sistema de monitorización sencillo y que tiene un consumo de recursos muy bajo. La interfaz es web y además responsive.

![linux-dash](/blog/content/images/2014/May/linux-dash1-.png)

Para ponerlo en marcha necesitas un servidor web con soporte PHP y la librería php5-json. Yo lo he probado con Apache pero funciona también perfectamente con nginx.

![linux-dash](/blog/content/images/2014/May/linux-dash2-.png)

Las métricas que te ofrece son las habituales:

  • Información del sistema
  • Consumo de CPU
  • Consumo de RAM
  • Uso de disco
  • Usuarios del sistema
  • Registro de login
  • Datos de red
  • Procesos en ejecución

En esta captura de pantalla puedes ver la interfaz web desde móvil.

![linux-dash es responsive](/blog/content/images/2014/May/linux-dash3.png)

Cómo instalar linux-dash

La instalación es muy sencilla. Puedes configurar linux-dash en una carpeta de su sitio web actual o crear un VHOST específico.

wget https://github.com/afaqurk/linux-dash/archive/master.zip

Descárgatelo y descomprímelo en la carpeta donde tengas configurado el VHOST.

unzip master.zip -d /var/www/vhost/dash/

Ya esta listo para funcionar. Entra a la url y compruébalo. El problema es que linux-dash no soporta ningun tipo de autenticación así que tus datos están accesibles para cualquiera. Podría valer para entornos de prueba o que no estén accesibles desde Internet.

Asegurando el acceso

Una manera sencilla de restringir el acceso a nuestro dashboard es delegar la autenticación al servidor web. El primer paso es crear el archivo .htpasswd para guardar el usuario y contraseña.

htpasswd -c /var/www/vhost/dash/.htpasswd admin-dash

Si usas nginx puedes generar el archivo .htpasswd de este modo:

$ printf "${username}:`openssl passwd -apr1`\n" >> .htpasswd

Ahora hay que crear el archivo .htaccess para que le indique a Apache que tiene que solicitar el usuario y contraseña. Crea uno en la carpeta donde hayas descargado linux-dash y pega lo siguiente:

AuthType Basic
AuthName "Dashboard"
AuthUserFile /var/www/vhost/dash/.htpasswd
Require valid-user

El archivo .htaccess no es necesario si usas nginx. En este caso en la configuración de tu host especifica la ruta donde se guarda el fichero con los datos de autenticación:

auth_basic "Dashboard";
auth_basic_user_file /var/www/vhost/dash/.htpasswd;

Borra caché, reinicia el servidor web y listo. En el caso de que tu Apache siga dando acceso anónimo al dashboard asegúrate que tu VHOST permite configurar la autenticación a nivel de directorio. Tendrás que añadir esto en el archivo .conf de tu VHOST:

<Directory /var/www/vhost/dash/>
	AllowOverride AuthConfig
</Directory>

Ahora ya puedes intentar entrar en el dashboard que te solicitará el usuario y contraseña que se configuraron antes.

Si necesitas un sistema que te alerte o que te proporcione gráficos o estadísticas linux-dash no te sirve, necesitarás algo más potente como Monitorix.