phpsysinfo. Monitoreando tu Linux via web

Existen muchas formas de saber el estado de nuestros equipos, incluida la que te mostrare en el articulo de hoy, como monitorear tu Linux con phpsysinfo.

Que es phpSysInfo

phpSysInfo es un grupo de scripts desarrollados en php para mostrar por medio de una pagina web el estado de un equipo. Estos scripts son multiplataforma y nos darán una visión rápida del hardware y su uso en un equipo

phpSysInfo se ejecuta en:

  • Linux con kernel 2.6+
  • FreeBSD 7+
  • OpenBSD 2.8+
  • NetBSD
  • DragonFly
  • HP-UX
  • Darwin / Mac OS / OS X
  • Windows 2000 / XP / 2003 / Vista / 2008 / 7 / 2011 / 2012 / 8 / 8.1 / 10 / 2016
  • Android

Ya con esta breve introduccion sobre que es y para que se usa phpSysInfo, hoy te mostrare en este articulo como instalarlo y usarlo en Linux Centos y Ubuntu Server

Para otras distribuciones Linux la instalación es muy similar no siendo compleja. Comencemos entonces con este tutorial en español paso a paso

Estas corto de tiempo y prefieres verlo en vídeo? Ok, aquí debajo te lo muestro. Ah, no olvides suscribirte a mi canal

Instalando phpSysInfo en Linux centos

-Instalamos dependencias requeridas en Centos 7

yum install httpd php php-xml wget firewalld

Configuración de apache para phpSysInfo

-Ya instalado apache, lo activamos para que se ejecute cada vez que haga boot nuestro servidor

systemctl enable httpd

-Ejecutamos el servicio y seguidamente verificamos por medio de status que este ejecutándose correctamente

systemctl start httpd
systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since sáb 2018-10-06 12:44:08 -05; 8s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 3260 (httpd)
Status: "Processing requests..."
Tasks: 6
CGroup: /system.slice/httpd.service
├─3260 /usr/sbin/httpd -DFOREGROUND
├─3262 /usr/sbin/httpd -DFOREGROUND
├─3263 /usr/sbin/httpd -DFOREGROUND
├─3264 /usr/sbin/httpd -DFOREGROUND
├─3265 /usr/sbin/httpd -DFOREGROUND
└─3266 /usr/sbin/httpd -DFOREGROUND

Descargamos e instalamos phpSysInfo

-Cambiamos al directorio default de las paginas servidas por Apache y descargamos el archivo comprimido (es buena idea siempre verificar cual es la ultima versión y descargar esta)

cd /var/www/html
wget -c https://netcologne.dl.sourceforge.net/project/phpsysinfo/phpsysinfo/3.2.10/phpsysinfo-3.2.10.tar.gz

-Descomprimimos el archivo y cambiamos su nombre quitandole los números de versión para comodidad después cuando los vayamos a acceder via web

tar xzvf phpsysinfo-3.2.10.tar.gz
mv phpsysinfo-3.2.10 phpsysinfo

-Reutilizamos como fichero ini (configuracion) el de ejemplo que viene ya disponible. Hacemos una copia que nos servirá como ini

cp /var/www/html/phpsysinfo/phpsysinfo.ini.new /var/www/html/phpsysinfo/phpsysinfo.ini

-Cambiamos el dueño y grupo de todo el directorio de forma recursiva

chown -R apache.apache phpsysinfo

Configuramos puertos en el firewall

-Activamos el servicio firewalld para que inicie automáticamente cada vez que haga boot el servidor opensource

systemctl enable firewalld

-Iniciamos el servicio y verificamos su correcta ejecución con la orden status

systemctl start firewalld
systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since sáb 2018-10-06 12:28:03 -05; 29min ago
Docs: man:firewalld(1)
Main PID: 740 (firewalld)
CGroup: /system.slice/firewalld.service
└─740 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

-Abrimos los puertos http (80) y https (443) en nuestras reglas de firewall

firewall-cmd --permanent --add-service=http
success
firewall-cmd --permanent --add-service=https
success

-Reiniciamos el servicio para que tome los cambios de puertos abiertos

systemctl restart firewalld

Interfaz web php en Centos

-Abrimos un browser en otro equipo en la misma subred y navegamos a al url http://ip-linux-centos/phpsysinfo/ (haz el cambio a la ip de tu linux Centos)

Veremos toda la información en una única pagina web separada por secciones  con una barra superior que mostrara el nombre (hostname) e ip del equipo

Como cambiar idioma de phpSysInfo?

-Sencillo, en la esquina superior derecha de la pagina veremos una caja desplegable Language.

Le damos click y elegimos el idioma deseado, por ejemplo, “es” para español

Automáticamente todos los mensajes en la pagina cambiaran a este idioma

Como usa la memoria nuestro equipo Linux

-En la sección Uso de la memoria podemos desglosar el uso de memoria física y swap (memoria virtual)

Filesystems en uso

-También tenemos una sección donde veremos todos los filesystems montados en este momento en nuestro equipo con su uso, espacio libre y tamaño total (muchos de ellos de uso del sistema operativo)

Uso de interfaces de red

-No menos importante, tenemos una sección donde veremos las interfaces de red en uso en nuestro equipo.

En ella veremos el trafico recibido y enviado (tamaño) ademas de paquetes con error o perdidos (importante para detectar problemas de tarjeta o red)

phpSysInfo en Ubuntu Server

La instalación y configuracion de phpSysInfo en un servidor Ubuntu es muy parecida a lo que ya vimos arriba de Linux Centos.

Solo tenemos algunas diferencias al instalar dependencias y después en su manejo de puertos con el firewall

-Instalamos dependencias requeridas para su funcionamiento en Linux Ubuntu

sudo apt install apache2 php7.2 libapache2-mod-php7.2 php7.2-xml

Instalación de phpSysInfo en Ubuntu

-Nos cambiamos al directorio default de paginas web con apache y descargamos el paquete de instalación (debes tener permisos de sudo)

cd /var/www/html/
sudo wget -c https://netcologne.dl.sourceforge.net/project/phpsysinfo/phpsysinfo/3.2.10/phpsysinfo-3.2.10.tar.gz

-Descomprimimos el archivo y cambiamos su nombre para nuestra comodidad después al accederlo

sudo tar xzvf phpsysinfo-3.2.10.tar.gz
sudo mv phpsysinfo-3.2.10 phpsysinfo

Configuración de phpSysInfo en Ubuntu Server

-Hacemos una copia del fichero ini para la configuracion de phpsysinfo en Ubuntu Server

sudo cp /var/www/html/phpsysinfo/phpsysinfo.ini.new /var/www/html/phpsysinfo/phpsysinfo.ini

-Cambiamos el dueño y grupo del directorio y todos sus ficheros de forma recursiva para que pueda manejarlos Apache

sudo chown -R www-data.www-data /var/www/html/phpsysinfo/

Configuración de Apache en servidor Ubuntu

-Verificamos la ejecución correcta de apache en Ubuntu con la orden status

sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Sat 2018-10-06 18:49:26 UTC; 5min ago
Main PID: 11088 (apache2)
Tasks: 6 (limit: 1106)
CGroup: /system.slice/apache2.service
├─11088 /usr/sbin/apache2 -k start
├─11093 /usr/sbin/apache2 -k start
├─11094 /usr/sbin/apache2 -k start
├─11095 /usr/sbin/apache2 -k start
├─11096 /usr/sbin/apache2 -k start
└─11097 /usr/sbin/apache2 -k start

Abrimos puertos necesarios en Ubuntu Server

-Abrimos los puertos ssh (22 aunque seguramente ya lo tendrás habilitado), http (80) y https (443). El firewall en Ubuntu (a no ser que lo hayas deshabilitado) hace el cambio a la vez para tcp/ipv4 y tcp/ipv6 (versión 4 y 6 de tcpip)

sudo ufw allow ssh
Rules updated
Rules updated (v6)
sudo ufw allow http
Rules updated
Rules updated (v6)
sudo ufw allow https
Rules updated
Rules updated (v6)

Interfaz web php en Ubuntu Bionic Beaver

-Abrimos un browser y navegamos al URL http://ip-servidor-ubuntu/phpsysinfo/ (haz el cambio a la ip de tu servidor ubuntu)

phpSysInfo, una rápida y elegante interfaz web que nos permitirá monitorear nuestros equipos desde la comodidad de un navegador web.

Ya conocías este grupo de scripts, lo haz usado, en que plataforma? cuéntamelo aquí debajo en los comentarios.

Satisfech@ con el articulo, hazme una donación, no importa la cantidad, la intención es lo que vale, dale click a este botón

Comparte este articulo opensource en tus redes sociales (compartir es sexy) por medio de los botones de redes sociales para que otros lo conozcan y apoyes mi blog.

Ademas, no olvides escribirme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.