Servidor web ligero y rápido en Linux

 En este artículo os comento cómo y por qué he instalado un servidor web en el aula en un equipo con Linux Mint.

La situación es la siguiente: necesito un servidor de archivos público (en la red privada) con permiso de lectura para todos los alumnos del aula.

Normalmente habría instalado un servidor FTP pero debido a unos problemas con la red del aula he tenido que replantearme el asunto y he llegado a la conclusión de que instalar un servidor web es más que suficiente.

¿Por qué?

Un servidor web es un servidor de archivos que resuelve los requisitos en el servidor y en los clientes con cualquier navegador web pueden acceder a los archivos.

Un servidor FTP necesita configuración de usuarios y carpetas pero yo sólo quiero una carpeta pública donde colgar los archivos y que ellos se los puedan descargar.

Un servidor web ligero y rápido sería una buena solución.

¿Cómo?

Existen multitud de servidores web disponibles en Linux: Apache, Nginx, ...

Pero he elegido lighttpd por ser muy sencillo de instalar, por consumir pocos recursos del sistema (ligero) y por ser rápido.


Instalación

Para instalarlo basta con que ejecutéis el comando:

sudo apt install lighttpd

Ya está instalado ahora toca ejecutarlo

sudo systemctl start lighttpd

Ahora si ponéis en la URL del navegador web: localhost 

veréis que el servidor está funcionando con la página de inicio


Con esto ya lo tenemos en funcionamiento, ahora sólo quedan un poco de configuración para que quede a mi gusto y cumpla con lo que necesito

Configuración

Necesito que se inicie al arrancar el equipo, para ello ejecutamos:

sudo systemctl enable lighttpd

Por defecto este servidor web no trae activado la opción de listar los contenidos de un directorio por lo que hay que ponerla en su configuración (este es el documento oficial con todas las opciones de configuración de lighttpd)

Dicha configuración se encuentra en el archivo /etc/lighttpd/lighttpd.conf .

Editamos dicho archivos con un usuario que tenga los permisos pertinentes y añadimos la opción

dir-listing.activate = "enable" ( antiguamente era server.dir-listing = "enable" )

al final del mismo y ya estaría cumpliendo todas mis necesidades.

Aún así le voy a cambiar el puerto por defecto para que no entre en conflicto con otros posibles servidores web que pudiesen instalarse y que por defecto también irán al puerto 80. Para cambiar el puerto hay que cambiar la línea:

server.port  = 80

por

server.port  = 88

Este es el momento de crear un directorio dentro de /var/www/html , por ejemplo isos (/var/www/html/isos) y meter en él los archivos a compartir. Por ejemplo, yo he metido una ISO de un sistema operativo para prácticas de Administración de Sistemas Operativos.

Y ahora accedemos desde el navegador a localhost:88/isos y tenemos el listado de archivos compartidos:


Para que accedan mis alumnos les doy la dirección URL: IP_miequipo:88/isos

Act. 4 de marzo 2021. Si tienes python instalado es muy fácil levantar un servidor web con listado de carpetas. Ve a la carpeta que quieres que se vea y ejecuta en el terminal los siguientes comandos:
En Python 2.X:  sudo python -m SimpleHTTPServer [puerto]

En Python 3sudo python3 -m http.server [puerto]

Accedes con el navegador web a la dirección IP:puerto o localhost:puerto y listo



Si tienes otras ideas puedes contactar conmigo @mosqueteroweb en Telegram y Twitter.

Entradas populares de este blog

Actualizar Grub en Ubuntu

Test de GPU en Linux

NAS casero. Docker