Está en la página 1de 16

TALLER

FUNCIONALIDADES SERVIDOR WEB APACHE

DANIEL ESTEBAN BASTIDAS RODRÍGUEZ


ID: 162

UNIVERSIDAD MARIANA
FACULTAD DE INGENIERÍA
INGENIERÍA DE SISTEMAS
SAN JUAN DE PASTO
2019
Tabla de contenido
Objetivo ............................................................................................................................................... 3
Servidor Apache .................................................................................................................................. 3
Instalación Servidor Apache ................................................................................................................ 3
Punto 1: Modificar Puerto................................................................................................................... 3
Punto 2: Modificar ruta raíz Apache ................................................................................................... 6
Punto 3: Ocultar la versión de apache ................................................................................................ 7
Punto 4: autenticación básica de Apache ........................................................................................... 8
Punto 5: Redireccionamiento automático .......................................................................................... 9
Punto 6: PHP en Apache.................................................................................................................... 10
Punto 7: Dominio https (SSL/TLS) ..................................................................................................... 12
Punto 8: Host virtual ......................................................................................................................... 13
Conclusion: ........................................................................................................................................ 14
Bibliografía ........................................................................................................................................ 15
Objetivo
El objetivo del presente trabajo es conocer y aplicar diferentes comandos para la configuración del
servidor apache además explorar las diferentes herramientas y utilidades que este nos aporta y
aplicarlo a proyectos futuros

Servidor Apache
Apache es un servidor web multiplataforma de fuente abierta, considerado el servidor web mas
popular y de los más antiguos

Instalación Servidor Apache


Para instalar el servidor Apache en Ubuntu Server usamos el comando apt-get install apache2
activando previamente los privilegios del usuario root con el comando sudo su

Al ejecutar el anterior comando nos pedirá una confirmación y se instalará el servidor

Punto 1: Modificar Puerto


Para la configuración del puerto de apache utilizamos el comando nano para editar, seguido de la
ruta /etc/apache/ports.conf como aparece en la siguiente imagen:

Al ejecutar el comando nos saldrá la siguiente ventana, donde encontraremos el puerto por el cual
esta trabajando, por defecto en apache utiliza el puerto 80.

Para cambiarlo añadiremos un puerto de la siguiente forma

Listen 2id
Guardamos con ctrl o y cerramos con ctrl x, adicionalmente es necesario configurar un host virtual
Apache, esto lo hacemos editando el siguiente archivo con el comando nano

/etc/apache2/sites-enabled/000-default.conf

En ella encontraremos la siguiente información, en donde modificaremos el puerto que estará por
defecto en 80 al puerto 2id
Para terminar la configuración restauramos el servicio mediante el siguiente comando

Service apache2 restart

Después de ejecutar el anterior comando, crearemos un fichero html con el comando touch en la
ruta por defecto de Apache para publicar las páginas web /var/www/html/primerapagina.html

Después con el comando nano editamos el nuevo fichero primerapagina.html

En el crearemos una página sencilla con lenguaje de estructurado html

Después, para comprobar y visualizar la pagina web abrimos un navegador sea Chrome, mozilla o
explorer y digitamos en la barra de dirección la ip seguido del puerto que configuramos
anteriormente y la pagina html de la siguiente forma
Punto 2: Modificar ruta raíz Apache
Para configurar la ruta por defecto de Apache debemos definir la ruta a la que se va a asignar, en
este caso designaremos la ruta /web/www162/, posteriormente editamos con el comando nano la
siguiente ruta /etc/apache2/sites-available/000-default.conf

Al ejecutar el anterior comando abrirá la siguiente ventana donde encontraremos el parámetro


DocumentRoot que por defecto estará con la ruta /var/www/html/ y la cambiaremos por
/home/usuario162/web/www162/

ademas añadiremos las siguientes líneas

<Directory /home/usuario162/web/www162/ >

Require all granted

</Directory>
Después de modificar el anterior archivo guardamos y restauramos el servicio con el comando
service apache2 restart para demostrar que la ruta funcione correctamente copiamos con el
comando cp la página html que creamos anteriormente

Una ves copiado podremos visualizar la página en el navegador

Punto 3: Ocultar la versión de apache

Para ocultar la versión de apache, editamos con el comando nano el archivo apache.conf ubicada
en la ruta /etc/apache2/apache.conf y añadimos las siguientes líneas

ServerSignature Off

ServerTokens Prod

Guardamos y reiniciamos el servicio y al comprobar en el navegador se notará que ya no muestra


la versión del apache
Punto 4: autenticación básica de Apache
La autenticación nos permite proteger una ruta con un usuario y contraseña que designemos para
ella. Para este caso crearemos una carpeta dentro de web/www162/ que se llamara admin.

El servidor Apache trae por defecto varios modulos, uno de ellos es mod_auth_basic con el
podemos proteger una ruta con usuario y contraseña. Para comprobar que este moulo funciones
correctamente usamos el comando a2enmod auth_basic

Una vez comprobado el módulo crearemos un archivo .htpasswd el cual permite administrar una
base de datos de usuarios y contraseñas. Para utilizar esta herramienta lo instalamos de la
siguiente forma:

Después de instalar, ya podemos crear el archivo .htpasswd con el usuario162 de la siguiente


forma:

htpasswd -c (para crear el archivo) <nombre del archivo a crear> <usuario a agregar>

Al ejecutar el comando nos pedirá un password y confirmación y se añadirá una contraseña para
dicho usuario

Ahora para proteger la ruta anterior debemos modificar el virtualhost que lo encontraremos en la
siguiente ruta:

/etc/apache2/available-sites/

Y le añadimos las siguientes líneas


La primera línea define la ruta la cual queremos proteger:

Las siguientes dos líneas define el tipo de autenticación y el mensaje que mostrara al usuario al
momento de ingresar a la ruta:

Las dos últimas líneas definen la ruta del archivo htpasswd y la ultima se refiere a múltiples
usuarios con sus propias contraseñas:

Una vez configurado cerramos y reiniciamos el servicio de apache con service apache2 restart,
ahora comprobamos su funcionamiento ingresando a la ruta admin y veremos que nos pedirá el
usuario y contraseña que configuramos, al ingresar correctamente los datos nos dejara ingresar a
la carpeta de lo contrario pedirá nuevamente la autenticación.

Punto 5: Redireccionamiento automático


Para el redireccionamiento a una pagina web debemos configurar con el comando nano la ruta
/etc/apache2/sites-available/000-default.conf y añadir la siguiente línea
Existen 4 tipos de redireccionamiento:

301 indica que el recurso se ha movido de forma permanente.

302 indica que el recurso se ha movido de forma temporal.

303 indica que el recurso ha sido reemplazado por otro.

402 indica que el recurso se ha eliminado de forma permanente. Cuando se utiliza este estado el
argumento URL debe omitirse.

Para comprobar el redireccionamiento escribimos la ruta definida anteriormente en el navegador

Automáticamente redirigirá a al buscador de Google

Punto 6: PHP en Apache


Para que Apache pueda trabajar con php para la construcción de webs dinámicas se requiere la
instalación de sus modulos además de otro paquete necesario como mysql, esto hace parte de
LAMP (Linux, Apache,Mysql,php).

para trabajar con php instalamos mysql con la siguiente instrucción

Una ves instalado, procedemos con la instalación de php:

Para ver la información de php instalado crearemos un archivo info.php :


En el agregamos el siguiente script:

Para ver la información ingresamos a un navegador e ingresamos la siguiente ruta ip/info.php

Una ves instalados los paquetes, comprobamos creando un archivo php dentro de la ruta raíz que
configuramos para apache con el comando nano

En el escribiremos unas instrucciones html y php básicas de la siente forma:


Al visualizar en un navegador nos mostrara lo siguiente:

Punto 7: Dominio https (SSL/TLS)


Para la configuración de apache para que soporte el cifrado ssl se deben hacer las siguientes
configuraciones:

Primero se debe crear un certificado para nuestro sitio instalando openssl de la siguiente manera:

Al ejecuta esta serie de comandos nos pedirá una información como seve en la siguiente imagen

Después lo que haremos es agregar el certificado creado anteriormente en el archivo default ssl lo
encontraremos en la siguiente ruta:

En el añadiremos las dos líneas que pertenecen al certificado que creamos de la siguiente forma:
Guardamos y cerramos, después usamos el comando a2ensite para habilitar el archivo ssl como se
muestra a continuacion:

Y por ultimo reiniciamos el servicio de apache :

Para comprobar abrimos en un navegador y digitamos la dirección https://ip al ingresar nos alertara
de una conexión insegura ya que la la firma fue propiamente creada y no por una empresa
certificadora.

Punto 8: Host virtual


El host virtual permite ejecutar múltiples sitios web en el mismo servidor. Existen dos tipos de host
virtual:

Hosts virtuales basados en IP

Hosts virtuales basados en nombre

El host virtual basada en IP se usa para alojar varios sitios web en diferentes direcciones IP en el
mismo servidor físico.
host virtual basada en el nombre es la configuración utilizada para servir a varios sitios web desde
el mismo servidor físico.
Con el host virtual no hay límite en la cantidad de sitios web que puede alojar en su servidor
Para la configuración de host virtuales seguiremos estos pasos:

1. Crear directorios para los sitios web con el comando mkdir y el parámetro -p

Creamos páginas en ambas carpetas

2. Crear archivos de host virtuales

Para esto nos dirigimos a la siguiente ruta

cd /etc/apache2/sites-available/

y copiamos el contenido del archivo 000-default.conf a prueba.conf de la siguiente forma

Conclusion:
El servidor Apache es una herramienta necesaria para el correcto funcionamiento en la web,
proporciona las herramientas necesarias para aportar seguridad a las paginas web en la
comunicación de datos y brinda un soporte con lenguajes como php y mysql que aumentan las
opciones para la construcción de sitios web más eficientes y dinámicos.
Bibliografía
Barron, A. (08 de Mayo de 2018). Como instalar LAMP (Linux, Apache, MySQL, PHP) en AWS.
Obtenido de medium.com: https://medium.com/modulr/como-instalar-lamp-stack-linux-
apache-mysql-php-en-una-instancia-ec2-de-aws-con-ubuntu-16-04-bcf72b5d9937

Bazan Morales, O. (2018 de Agosto de 2018). ¿Cómo ocultar la información de la versión y SO del
Servidor Apache en Ubuntu/Linux? Obtenido de omarbazanmorales.com:
https://omarbazanmorales.com/blog/2018/08/07/como-ocultar-la-informacion-de-la-
version-y-so-del-servidor-apache-en-ubuntu-linux/

DAVIDOCHOBITS. (14 de Octubre de 2015). Habilitar HTTPS en nuestro servidor web. Obtenido de
ochobitshacenunbyte.com:
https://www.ochobitshacenunbyte.com/2015/10/14/habilitar-https-servidor-web/

Erazo, H. G. (04 de Mayo de 2014). Cómo crear un redireccionamiento simple desde Apache.
Obtenido de https://www.nanotutoriales.com/como-crear-un-redireccionamiento-simple-
desde-apache: https://www.nanotutoriales.com/como-crear-un-redireccionamiento-
simple-desde-apache

Erazo, H. G. (16 de Enero de 2016). Cómo proteger una ruta con autenticación básica en Apache.
Obtenido de nanotutoriales.com: https://www.nanotutoriales.com/como-proteger-una-
ruta-con-autenticacion-basica-en-apache

Jorge. (s.f.). Cambiar directorio por defecto de Apache en Debian y derivadas. Obtenido de
nksistemas.com: https://nksistemas.com/cambiar-directorio-por-defecto-de-apache-en-
debian-y-derivadas/

Kinsta Inc. (24 de Julio de 2018). ¿Qué Es Apache Web Server? Una mirada básica a lo que es y
cómo funciona. Obtenido de kinsta.com: https://kinsta.com/es/base-de-
conocimiento/que-es-apache/

Solvetic Sistemas. (5 de Marzo de 2018). Cómo cambiar puerto HTTP Apache en Linux. Obtenido de
solvetic.com: https://www.solvetic.com/tutoriales/article/5012-como-cambiar-puerto-
http-apache-en-linux/

También podría gustarte