0% encontró este documento útil (0 votos)
17 vistas23 páginas

UT3. Apache

El documento describe los pasos para instalar y configurar un servidor web Apache en Ubuntu/Debian, incluyendo la instalación de Apache, configuración de virtual hosts, autenticación básica, módulos habilitados y directivas comunes.

Cargado por

palmiro pacheco
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas23 páginas

UT3. Apache

El documento describe los pasos para instalar y configurar un servidor web Apache en Ubuntu/Debian, incluyendo la instalación de Apache, configuración de virtual hosts, autenticación básica, módulos habilitados y directivas comunes.

Cargado por

palmiro pacheco
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 23

SERVICIOS EN RED

TEMA 3. INSTALACIÓN Y ADMINISTRACIÓN DE


SERVIDORES WEB
MIGUEL VIDAL NAVAS.
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

IMPORTANTE

Datos iniciales

• Dominio: miguelvidal.com
• Servidor: pcserver.miguelvidal.com
• IP servidor: 192.168.55.1
• DNS: 192.168.55.1

Instalación del servidor Apache

Primero hacemos un

apt-get update

apt-get upgrade

Para tener todos los paquetes actualizados. Después, instalamos Apache con

apt-get install apache2

2
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Vemos que funciona poniendo en la URL “localhost”.

O desde otro equipo dentro de la misma red (PC2):

3
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Inicio, parada, reinicio y estado del servidor

Los comandos son STOP, START Y RESTART. Se puede ver en la captura:

También se puede utilizar el comando

systemctl <comando> apache2

Localización de los sitios WEB por defecto

La ruta por defecto para los sitios WEB (salvo que se modifique en el fichero de configuración)
será:

/var/www/html

4
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Configuración de los puertos de escucha

El fichero se localiza en la siguiente ruta:

/etc/apache2/ports.conf

Vemos su contenido:

Nos está indicando que el servidor escucha:

En el puerto 80 para conexiones no seguras (http)


En el puerto 443 para conexiones seguras (https)
ssl_module: Módulo que aplicará criptografía en las conexiones seguras
mod_gnutls.c: similar a ssl_module pero con algunas otras características.

5
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Módulos de apaches habilitados y disponibles (sin habilitar)

Las carpetas en donde podemos llevar a cabo dicha visualización son:

• Módulos habilitados: /etc/apache2/mods-enabled


• Módulos disponibles: /etc/apache2/mods-available

6
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Directivas típicas de configuración en apache

El fichero de configuración en Apache lo encontraremos en:

/etc/apache2/apache2.conf

Algunas directivas típicas son las siguientes:

DIRECTIVA EJEMPLOS
NOMBRE DEL (con nombre>
ServerName
SERVIDOR Servername <nombre> info.miguelvidal.com
(con IP)
ServerName 192.168.55.1
IP Y PUERTO Listen <nombre> Listen 192.168.55.1:80
DOCUMENTO DocumentRoot <ruta>
DocumentRoot
RAÍZ /var/web/miguelvidal
FICHEROS INDEX DirectoryIndex <lista DirectoryIndex principal.html
ficheros> miguelvidal.php
SERVIDORES <VirtualHost <ip:puerto> <VirtualHost 192.168.1.55:80>
VIRTUALES </VirtualHost> </VirtualHost>

7
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Primeros pasos con WEBMIN

Vamos a usar webmin para crear en Apache un servidor virtual de nombre


web.tudominio.com, que escucha en la dirección IP 192.68.N.1 y en el puerto 80. La carpeta
raíz del sitio es /var/web/tudominio y los archivos índices son index.html y home.html.
Accederemos con el navegador web a la página principal del sitio que habremos modificado
para que muestre tu nombre y tus apellidos.

Lo primero que vamos a hacer es crear la carpeta /var/web/miguelvidal para usarla en el


proceso de configuración de Apache a través de Webmin (aunque no muestro las capturas) y
un documento HTML dentro de dicha carpeta:

Posteriormente, accederíamos a WEBMIN y en el menú lateral seleccionaríamos APACHE.


Pulsaríamos sobre la opción de añadir un nuevo Host Virtual y rellenaríamos con los datos del
enunciado:

8
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Añadimos los archivos índices. Para ello entramos en el Virtual Host creado anteriormente y en
sus opciones de DIRECTORY INDEXING:

Hay que configurar el servidor DNS BIND9 añadiendo un alias a PCServer para que traduzca del
siguiente modo:

web.miguelvidal.com → pcserver.miguelvidal.com → 192.168.55.1

Y de esta manera, al poner la url: http://www.miguelvidal.com nos aparece un documento


HTML creado:

9
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Para ver que todo se ha creado correctamente, podemos ver que se ha añadido un fichero con
la configuración del sitio virtual en:

/etc/apache2/sites-available

Y que dicho fichero es: web.miguelvidal.com.conf

NOTA: Si nos fijamos en el fichero de configuración de Apache, tenemos incluido ese directorio
para la definición de los sitios WEB virtuales:

Habilitar y deshabilitar sitios WEB

Consiste básicamente en mover/quitar el fichero de configuración de la ruta:

/etc/apache2/sites-enabled

Existen dos comandos para ello:

HABILITAR

a2ensite /etc/apache2/sites-available/<nombreficheroconf>

DESHABILITAR

a2dissite /etc/apache2/sites-available/<nombreficheroconf>

10
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Autenticación sobre carpetas

Lo primero que tenemos que hacer es crear una carpeta y dentro el fichero HTML
correspondiente. En este caso, se llamará ‘descargas’. No muestro el proceso de creación, pero
sí que está creado:

En la carpeta de DESCARGAS voy a crear dos ficheros:

• Un fichero .htpasswd con un usuario “pepe” y contraseña “pepe”. Este fichero se


encargará de almacenar quien puede y quien no puede acceder al contenido de la
carpeta. Usaremos el comando HTPASSWD. Vemos su contenido después para
comprobar que se ha creado el usuario.

• Ahora vamos a crear un fichero .htaccess que indique que sólo los usuarios
almacenados en el fichero del apartado anterior puedan acceder. Vemos el contenido
de dicho fichero:

Necesitaríamos un fichero como este por cada directorio que deseemos securizar.
Normalmente se puede gestionar de modo general en el fichero de configuración
general pero de este modo controlamos directorio a directorio.

11
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Una vez realizado lo anterior, usamos WEBMIN para proteger el directorio. Lo primero es crear
el Directorio para poder trabajar con él. Entramos dentro de nuestro directorio virtual desde la
pantalla principal de APACHE WEBSERVER:

Posteriormente, nos aseguramos de que tengamos el módulo de autenticación (auth_basic)


habilitado. Vamos a CONFIGURACION GLOBAL – CONFIGURACION DE MÓDULOS DE APACHE

12
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Después creamos el directorio protegido. Nos vamos en el menú izquierdo a OTHERS/TOOLS -


PROTECTED WEB DIRECTORIES:

Añadimos protección para un nuevo directorio:

Aquí aparece creado:

13
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Añadimos un nuevo usuario para indicar que sólo ese usuario tendrá acceso (SI NO HA SIDO
AÑADIDO EN EL PROCESO ANTERIOR DE FORMA AUTOMÁTICA):

Aquí lo vemos ya creado:

Volvemos ahora a la opción del menú lateral derecho de APACHE WEBSERVER y nos vamos a la
carpeta creada (abajo a la derecha, ver la siguiente captura)

14
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Una vez dentro pulsamos en Control de acceso (ACCESS CONTROL):

Y allí establecemos que queremos una autentificación básica e indicamos donde está el fichero
"htaccess"

15
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Nos falta configurar una directiva en el fichero de configuración para indicar que se permita
modificar el tipo de autenticación. Para ello, vamos a APACHE - HOST VIRTUAL – PULSAMOS
SOBRE EL QUE HEMOS CREADO – EDITAR DIRECTIVAS:

Como se puede observar, hemos añadido la directiva:

AllowOverride AuthConfig

Para indicar que se permite personalizar nuestro modo de autenticación con usuario y
contraseña.

Y aquí vemos una vez accedido a la página de descargas creada:

16
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Añadiendo seguridad por dominio

Imaginemos que ahora queremos proteger los accesos para los usuarios del dominio y que
nadie más pudiera acceder. Lo primero que hacemos es visualizar el contenido de nuestro
fichero de configuración para este apartado, que será:

/etc/apache2/sites-available/web.miguelvidal.com.conf

Y nos fijamos en el recuadro señalado:

Lo tendríamos que cambiar por:

<Directory “/var/web/miguelvidal”>
order deny, allow
deny from all
allow from .*miguelvidal\.com.*
</Directory>

17
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Configuración de un sitio web para acceso HTTPS

Vamos a usar Webmin para crear en Apache un servidor virtual HTTPS de


nombre web.miguelvidal.com, que escucha en la dirección IP 192.68.55.1 y en el puerto 443.

Previamente tenemos que realizar un proceso para crear un certificado autofirmado. La


carpeta raíz del sitio va a ser /var/web/seguro y el archivo índice será index.html.

GENERACIÓN DEL CERTIFICADO AUTOFIRMADO

Tenemos que crear un certificado autofirmado. Lo primero que hacemos es crear el directorio
SSL donde se guardarán el Certificado y las Claves:

mkdir /etc/apache2/ssl

Una vez hecho eso, nos situamos en él y ejecutamos la sentencia que nos generará la llave
para la firma (server.key) y el fichero para firmar (key.crt):

Y aquí podemos ver ambas generadas en la carpeta elegida:

18
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

CREACIÓN DEL SITIO WEB VIRTUAL

El sitio Web virtual seguro se va a almacenar en la carpeta /var/web/seguro. Tendríamos


que empezar creándola (no lo detallo) Y UN DOCUMENTO dentro de ella.

Una vez hecho eso, creamos el Sitio Web Virtual Seguro. Nos vamos a WEBMIN - SERVERS -
APACHEWEBSERVER y pulsamos en CREATE VIRTUAL HOST y rellenamos los datos:

Tras aceptar, tenemos creado el nuevo sitio Web virtual (junto con los que ya teníamos):

19
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Ahora tenemos que activar el módulo de SSL. Para ello, desde la página principal de APACHE
WEBSERVER, nos vamos a GLOBAL CONFIGURATION - CONFIGURE APACHE MODULES:

Y habilitamos el módulo SSL (junto con socache_shmcb):

El último paso, es añadir el certificado autofirmado creado. Para ello, entramos dentro del
nuevo Sitio Virtual que hemos creado (pulsamos en el símbolo del mundo):

Y nos vamos a SSL OPTIONS:

20
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Y rellenamos la información del fichero para la firma y la llave para firmar:

Tras guardar todo y reiniciar el servidor, podemos ver que se ha añadido el nuevo HOST
VIRTUAL en el fichero

/etc/apache2/sites-available/web.miguelvidal.com.conf

21
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

PRUEBA DE FUNCIONAMIENTO

PREVIO: Tras reiniciar el servidor, verificamos que todo esté correcto. De no ser así, comprobar
el fichero ports.conf

Creamos un fichero index.html que guardamos en la carpeta

/var/web/seguro

Y accederíamos al sitio seguro con la URL:

https://web.miguelvidal.com/index.html

Como vemos, nos indica que la conexión no es segura ya que el Certificado no está validado. Si
desplegamos con el botón AVANZADO, veremos la siguiente pantalla:

22
SERVICIOS EN RED - MIGUEL VIDAL NAVAS

Que el certificado no es seguro ya que está autofirmado. No está registrado por ninguna
autoridad de certificación oficial. Pero ello no es problema de cara a la tarea.

Tendríamos que añadir la excepción pulsando en el botón AÑADIR EXCEPCIÓN

Y tras CONFIRMAR EXCEPCIÓN DE SEGURIDAD nos aparecería la web segura cargada:

Si no nos deja acceder por culpa de un error relacionado con SSL, podríamos tener que
cambiar en el fichero de configuración:

/etc/apache2/sites-available/web.miguelvidal.com.conf

La entrada:
<VirtualHost 192.168.55.1:443>

Por
<VirtualHost _default_:443>

23

También podría gustarte