viernes, 19 de enero de 2018

Instalación de Apache Web Server

Podemos instalar el servidor web Apache desde webmin. Para ello, desplegaremos la opción Unused modules>Apache Webserver


y hacemos click en el enlace para iniciar la instalación


o desde la linea de comandos

>sudo apt-get update
>sudo apt-get install apache2

Al instalar se crean:
- Los archivos de configuración.
- El usuario www-data dentro del grupo tambien llamado www-data.
- La carpeta /var/www

Comprobar que se ha creado el usuario www-data y el grupo del mismo nombre.

>cat /etc/passwd | grep www-data

y el grupo

>cat /etc/group| grep www-data

Mediante el usuario y el grupo www-data se ejecutan los procesos hijos de apache que se encargan de atender peticiones.

Comprobar que
Se ha creado el directorio /var/www
Su propietario es root y grupo root

Este es el directorio raiz del "servidor virtual por defecto".

>ls -l /var/www


Iniciar el servidor apache

Para iniciar el servicio, como cualquier otro servicio de ubuntu utlizamos el siguiente comando:

>/etc/init.d/apache2 start  (o service apache2 start)

y para comprobar el estado

>>/etc/init.d/apache2 status

El servidor se iniciará correctamente, podemos comprobarlo leyendo el fichero de registro de eventos des sistema, aunque nos dará un pequeño error, el cual consiste en que no puede determinar el nombre del equipo.

>cat /var/log/syslog | grep apache2




La opción Others>System and Server Status de Webmin también nos permite saber el estado en que se encuentran nuestros servicios, entre ellos Apache.


Para iniciar y detener el servidor apache tambien podemos usar el script apachectl de la siguiente manera

>sudo apachectl start
>sudo apachectl stop

Haciendolo de esta manera obtenemos información que apache envia al syslog, pues también no saca esta misma infomacion directamente por el terminal.




Podemos apreciar el error antes comentado y la forma de solucionarlo (más tarde)

Comprobamos que se han creado los directorios y archivos de configuración en la carpeta /etc/apache2



Consultamos su contenido

/etc/apache2/apache2.conf





/etc/apache2/ports.conf



/etc/apache2/envars

Comprobar los subdirectorios

Directorios de configuración de módulos disponibles y habilitados

/etc/apache2/mod-available
/etc/apache2/mods-enabled

Directorios de configuración de sitios (o servidores) virtuales

/etc/apache2/sites-available
/etc/apache2/sites-enabled

Directorios de configuraciones
/etc/apache2/conf-available
/etc/apache2/conf-enabled




Comprobar que el proceso está en ejecución, es decir, que el servidor esta iniciado.

>ps -ef \ grep apache

Las opciones utilizadas corresponden a:
-e para ver todos los procesos
-f (full) para ver la informacion completa de cada proceso






Desde Webmin también podemos visualizar procesos en ejecución desde la opción System>Running Processes

Para buscar  procesos tenemos varias opciones dependiendo de la caja de texto que seleccionemos marcado el boton de radio a su lado.



Por ejemplo, matching y escribiendo "apache" o Using Port y escribiendo 80.




Observar que existen varios procesos iniciados por apache2
Uno de ellos es el proceso padre cuyo propietario es root, y el resto son los procesos hijos o trabajadores, creados para atender peticiones y su propietario es www-data.

Podemos saber que son procesos hijos fijandonos en la tercera columna, que nos dice su PPID, el ID de proceso del proceso padre y vemos que coincide con el PID del primero proceso de la lista.

Tambien mediante Wemin podemos hacer click en el PID de un proceso hijo para ver una pagina de detalle del proceso y fijarnos donde dice parent process. A continuación, hacer click en este enlace y ver que nos lleva a lainfo del proceso padre.



Comprobar que el servidor está escuchando en el puerto TCP 80.

>netstat -ltn

En este caso las opciones utilizadas son las siguientes:
-l para mostrar los sockets que estan a la escucha (listening)
-t para quedanos con aquellos que usan el protocolo TCP
-n para que no resuelva nombres y nos muestre numeros (IPs, puertos, etc)

Podemos ver la diferencia entre el uso de la opcion -n o no.




En este caso, como webmin no tiene una opción específica para ver esta información debemos hacer uso de la opción general que permite ejecutar un comando en el servidor. La opcion está ubicada en Others>Command Shell. Una vez ahí, introducir los comandos.



Hasta aqui todas las comprobaciones necesarias.

---







No hay comentarios:

Publicar un comentario