En esta oportunidad vamos a analizar un poco más detalladamente el proceso de instalación y configuración de un servidor web o web server en nuestro Fedora 23.
¿Qué es un servidor web?
No es más que un servicio que se instala en Fedora 23 el cual permite a un cliente tener acceso a contenido en la web. Un servidor web también puede ser conocido como servidor HTTP ya que su principal protocolo es HTTP (Hyper Text Transport Protocol – Protocolo de Transporte de Hipertexto).
En Fedora el servidor web que tenemos disponible es Apache HTTP, httpd, el cual es un servidor web de código abierto para que los desarrolladores puedan agregar mejoras o corregir falencias.
Podemos instalar Web Server usando dos (2) métodos:
- Durante el proceso de instalación del sistema operativo.
- A través de la línea de comandos.
Antes de iniciar es importante recordar que el proceso de instalación del servidor web se conoce como LAMP (Linux-Apache-MySQL/MariaDB-PHP), estos son los componentes esenciales del servidor web.
1. Cómo instalar Web Server en la instalación de Fedora
Esta opción es gráfica, ya que se produce durante la instalación del sistema operativo. Para ello debemos descargar la imagen desde la siguiente página web.
Comenzaremos la instalación de Fedora.
- Install Fedora 23: Inicia la instalación del sistema operativo Fedora 23 de manera inmediata
- Test this media & install Fedora 23: Nos permite realizar una prueba de la configuración del sistema antes de comenzar la instalación, si la prueba es satisfactoria se iniciará la instalación
- Troubleshooting: Soluciona problemas asociados al proceso de instalación
En nuestro ejemplo seleccionamos la primera opción Install Fedora 23:
Veremos que comienza el proceso de instalación, descargándose los paquetes necesarios para la instalación. A continuación se desplegará la ventana de bienvenida donde en primera medida debemos seleccionar el idioma y el país a instalar en nuestro sistema operativo Fedora 23:
Una vez hayamos seleccionado la opción necesaria procedemos a dar clic en Siguiente.
Se desplegará la siguiente ventana:
La opción clave para nuestro servidor web radica en Selección de software.
Al dar clic en dicha opción se despliega la siguiente ventana:
Como nuestro deseo es crear un servidor web, es lógico que la opción que debemos seleccionar es Web Server. Veremos en el panel derecho que se despliegan los roles que podremos añadir, depende de nosotros las opciones que deseemos instalar, simplemente las seleccionamos y damos clic en Hecho.
Una vez seleccionado esto procedemos a dar clic en Empezar Instalación:
Esperamos que se complete el proceso de instalación.
Una vez se complete debemos reiniciar el sistema para completar el proceso:
Iniciamos sesión son el usuario creado durante la instalación:
2. Cómo instalar Web Server desde la Terminal
Para ello ingresaremos en el sistema con nuestro usuario root:
Como primera medida es aconsejable actualizar los paquetes del sistema usando el siguiente comando:
sudo dnf update
Iniciará el proceso de actualización, esperamos a que concluya dicho proceso y veremos un resumen de la tarea ejecutada:
A continuación comenzaremos la instalación de Apache Web Server, este servidor es usado por millones en el mundo y nos brinda seguridad y un asombroso despliegue. Para realizar la instalación correremos el siguiente comando:
sudo dnf install httpdComenzará el proceso de descarga e instalación de Apache httpd:
3. Configurar e instalar paquetes necesarios
LLegamos a la parte de configuración e instalación de los paquetes necesarios para nuestro Web Server.
Vamos a configurar Apache http para que inicie de manera automática cuando se inicia el sistema, para ello ejecutaremos los siguientes comandos:
Sudo systemctl enable httpd.service Sudo systemctl start httpd Sudo systemctl status httpdCon estos comandos, ya debería inciarse cada vez que encendamos Fedora.
El siguiente paso es habilitar el acceso sobre HTTP o HTTPS, para ello debemos habilitar dicha tarea en el firewall usando los comandos:
Sudo firewall-cmd –permanent –add-service=http Sudo firewall-cmd –permanent –add-service=https Sudo systemctl reload firewalld
A continuación vamos a realizar la verificación de Apache a través del navegador web; Para ello primero validaremos que dirección IP tiene nuestro Fedora 23, usaremos el comando:
ip a 1 grep inet
Como vemos en nuestro caso, la dirección IP es 192.168.0.8, esta dirección la ingresaremos en la barra de dirección de nuestro navegador:
[color=rgb(169,169,169)]Pincha en la imagen para agrandar[/color]
Veremos que Apache httpd está correctamente instalado. El directorio por defecto de Apache http es el siguiente: /var/www/html/, allí debemos ingresar los archivos que necesitemos tener en la web:
Una vez tengamos correctamente instalado nuestro Apache httpd vamos a realizar la instalación de MariaDB, esta es una base de datos relacional soportada por MySQL. MaríaDB cuenta con licencia libre para el público en general. Para realizar la instalación ejecutaremos el siguiente comando:
dnf install mariadb-server
Aceptamos la instalación y comenzará la descarga y posterior instalación de los paquetes de MariaDB, veremos que se ha descargado e instalado de manera satisfactoria mariadb:
Nuestro siguiente paso será configurar que nuestra base de datos mariadb inicie de manera automática cuando arranca el sistema, para ello ejecutaremos los siguientes comandos:
Systemctl enable mariadb Systemctl start mariadb.service Systemctl status mariadb
Existen algunos parámetros que debemos modificar para que la instalación de MariaDB sea efectiva. Ejecutemos el siguiente comando:
mysql_secure_installation
Veremos que una vez ejecutemos el comando se desplegarán una serie de preguntas, inicialmente nos solicita el password de root, damos enter y se desplegará la siguiente ventana:
En la pregunta si deseamos establecer password del usuario root ingresamos y (yes) e ingresamos la contraseña y la confirmamos, se despliega lo siguiente:
Es una serie de preguntas donde debemos indicar y (yes) o n (no) para confirmarlas. Estas preguntas están relacionadas con parámetros de seguridad. Una vez hayamos seleccionado nuestras respuestas se desplegará la siguiente ventana informativa:
A continuación realizaremos la instalación de PHP, sabemos que PHP es un lenguaje de programación muy utilizado en páginas web. Debemos ejecutar el siguiente comando para instalar PHP en nuestro servidor web Fedora 23:
dnf install php php-commonComenzará el proceso de instalación de PHP:
Descargamos los paquetes y esperamos que se realice el proceso de instalación
El próximo paso es instalar los módulos necesarios para poder correr de manera correcta PHP/MySQL; para ello usaremos el siguiente comando:
dnf install php-mysql php-pdo php-gd php-mbstringUna vez ejecutemos este comando veremos que comienza la instalación de los módulos:
Hasta este momento hemos instalado de manera correcta Apache, MariaDB y PHP con sus respectivos módulos. Ahora debemos reiniciar Apache httpd para poder usar satisfactoriamente PHP, para ello ejecutemos el comando
systemctl restart httpd
Ha llegado la hora de probar nuestra configuración; Vamos a crear un archivo llamado php.info en la ruta /var/www/html. Ingresaremos a la ruta indicada usando:
cd /var/www/htmlUna vez estemos en esa ruta ejecutaremos el comando:
nano info.phpNos sirve para poder crear y editar dicho archivo, ingresaremos lo siguiente:
<?php phpinfo(); ¿>
Guardamos los cambios con:
Ctrl + O
Finalmente nos dirigimos a nuestro navegador e ingresamos la dirección IP seguido del nombre de nuestro archivo. Veremos que se despliega la siguiente ventana con toda la información relacionada al sistema y demás configuraciones.
[color=rgb(169,169,169)]Pincha en la imagen para agrandar[/color]
Podremos observar que tenemos la información de Apache:
Así mismo vemos la información relacionada con MySQL:
[color=#a9a9a9]Pincha en la imagen para agrandar[/color]
Con esto podemos comprobar que nuestro PHP, Apache y MariaDB están correctamente instalados y configurados.
Tareas alternativas en Apache httpd
- Iniciar el servicio httpd: systemctl start httpd.service
- Detener el servicio httpd: systemctl stop httpd.service
- Reiniciar el servicio httpd: systemctl restart httpd.service
- Recargar la configuración (como root): systemctl reload httpd.service
- Recargar la configuración sin afectar los requerimientos activos (como root): apachectl graceful
- Verificar el estado del sistema: systemctl is-active httpd.service
- Ver posibles errores: apachectl configtest
Para ingresar al archivo httpd.conf y ver su contenido usaremos el comando nano httpd.conf. Veremos que se despliega la siguiente ventana, donde podemos movernos usando las flechas de desplazamiento para ver que existen diferentes parámetros:
Los servicios de Apache httpd son distribuidos gracias a un número de DSOs (Dynamic Shared Objects), estos módulos se encuentran ubicados en /usr/lib64/httpd/modules/. Podremos cargar y escribir módulos.
Para cargar un módulo usaremos el comando Loadmodule, por ejemplo, LoadModule ssl_module modules/mod_ssl.so. Para escribir un módulo debemos tener instalado el paquete httpd-devel, para instalarlo ejecutemos dnf install httpd-devel. Este paquete incluye la utilidad apxs (APache eXtenSion) la cual permite editar el módulo.
Podemos habilitar SSL, como bien sabemos el protocolo SSL (Secure Sockets Layer) es un método que nos brinda seguridad al momento de la comunicación entre el servidor y el cliente. Apache httpd es una combinación que incluye el protocolo SSL. Para habilitar el módulo SSL en Apache usaremos el siguiente comando:
dnf install mod_ssl openssl
Esta tarea creará un archivo que estará ubicado en la ruta etc/httpd/conf.d/ssl. Si deseamos modificar algún parámetro para SSL debemos ingresar, en modo root, al archivo antes indicado.
Como hemos podido observar la variedad de opciones que nos brinda Fedora 23 como servidor web son amplias y por ende serán de gran ayuda en nuestra gestión como administradores.
Os dejamos más tutoriales que seguramente os van a interesar para vuestro servidor Linux: