Linux es el sistema operativo más utilizado en servidores a través de Internet, especialmente para brindar «servicios» para usuarios y empresas. Dentro del ecosistema Linux existen un gran número de aplicaciones (libres en su mayoría) y, dentro de estas un gran número de configuraciones que dependiendo del administrador del sistema pueden variar para adaptarse mejor a las necesidades de los usuarios y a los conocimientos del administrador.
Una de las configuraciones más conocida es LEMP. Un servidor LEMP es un servidor basado en Linux y que cuenta con una serie de aplicaciones y configuraciones especialmente diseñadas para alojar páginas web (estáticas y dinámicas) con el mayor rendimiento posible.
El servidor LEMP está formado por la siguiente configuración:
- Linux (L)
- nGinx (E)
- MySQL (M)
- PHP (P)
En este ejemplo vamos a explicar rápidamente cómo instalar todo lo necesario para nuestro servidor, aunque no profundizaremos en temas de configuraciones avanzadas de cada uno de los elementos.
(L), el sistema operativo
La letra L viene de Linux, aunque dentro de este sistema pueden elegirse diferentes distribuciones. Las más utilizadas en entornos de servidor son Debian, debido a su naturaleza Rolling Release y a su excelente rendimiento y CentOS por contar con SELinux como capa de seguridad adicional frente a posibles ataques de red.
Ubuntu Server va ganando poco a poco gran cuota de mercado en los servidores, aunque aún no alcanza a los dos sistemas anteriores. Sea como sea, un servidor LEMP debe utilizar Linux como sistema operativo base.
(E), el servidor de páginas web
Generalmente el servidor de páginas web más utilizado es Apache HTTP Server. Este servidor es muy sencillo y funciona sin problemas, sin embargo, si queremos un aspecto más profesional y un mejor rendimiento deberemos utilizar otros servidores de páginas web, por ejemplo, Nginx.
Aunque Nginx no empieza por la letra E, es un juego de palabras para que este nombre sea posible. Nginx ha demostrado un mejor rendimiento frente a Apache, especialmente cuando se realizan varias solicitudes a la vez ahorrando carga de trabajo y ofreciendo un mejor rendimiento al no crear diferentes procesos en cada petición.
Este servidor se instala tecleando desde el terminal:
sudo apt update
sudo apt install nginx
(M), las bases de datos
Existen muchas aplicaciones de bases de datos. El servidor LEMP original utiliza MySQL para este fin, sin embargo, en los últimos meses se está viendo cómo MariaDB puede llegar incluso a sustituir a este al ser «más libre» y estar alejado de las manos de Oracle.
Para instalar estas bases de datos simplemente debemos teclear en el terminal:
sudo apt-get install mysql-server
Y configurar lo necesario para conectar Nginx con MySQL.
(P), para las webs dinámicas
Aunque ya tenemos el servidor y las bases de datos, necesitamos también «algo» que conecte ambos elementos entre sí y permita que se genere el contenido dinámico. Para ello vamos a utilizar PHP.
Lo primero que debemos hacer es instalar los módulos necesarios de PHP tecleando:
sudo apt-get install php5-fpm php5-mysql
Con esto, nuestro servidor LEMP estará listo para empezar a servir páginas web de contenido dinámico con un excelente rendimiento. Por defecto todo no funciona automáticamente, por lo que debemos configurar cada uno de los elementos por separado de manera que puedan conectar entre ellos. Esta configuración, que podemos considerar como avanzada, la veremos más adelante.
Os recomendamos leer el tutorial los mejores servidores DDNS gratis alternativos a No-IP.