Servidor Apache

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 16

SERVIDOR APACHE

1. Instalación del servidor web


Instalación de Apache:

● Utilizar una distribución Linux (como Ubuntu Server) para la instalación.


● Instalar el servidor web Apache mediante el gestor de paquetes.

Abre la terminal.

Actualiza la lista de paquetes:

- sudo apt update

- “sudo apt install apache2”

Inicia el servicio Apache:

- sudo systemctl start apache2

Habilita Apache para que se inicie automáticamente al arrancar el sistema:

- sudo systemctl enable apache2

Verifica el estado de Apache para asegurarte de que esté en ejecución:


- sudo systemctl status apache2

2. Creación de sitios virtuales


Configuración de sitios virtuales:

● Crear al menos dos sitios virtuales en Apache.


● Modificar los archivos de configuración para reflejar los distintos dominios o
subdominios.

Paso 1: Crear directorios para los sitios virtuales

Abre la terminal.

Crea directorios para tus sitios virtuales

- sudo mkdir /var/www/html/sitio1


Paso 2: Configurar permisos

Asegúrate de que el usuario www-data tenga permisos de lectura sobre los


directorios que acabas de crear:

-sudo chown -R www-data:www-data /var/www/josesitio1

Paso 3: Crear páginas de prueba

Crea páginas HTML de prueba para cada sitio:

Configuramos el body del documento html para poder hacer una página

Paso 4: Crear archivos de configuración para los sitios virtuales

Copia el archivo de configuración predeterminado de Apache para duplicarlo y crear


configuraciones separadas para cada sitio virtual:

- sudo cp /etc/apache2/sites-available/000-default.conf
/etc/apache2/sites-available/sitio1.conf
Abre los archivos de configuración en un editor de texto. Puedes usar nano o vim:

- sudo nano /etc/apache2/sites-available/josesitio1.conf

Dentro del archivo, actualiza la configuración para que se parezca a lo siguiente


(ajusta los detalles según tus necesidades):

- <VirtualHost *:80>
- ServerAdmin webmaster@sitio1
- ServerName sitio1
- DocumentRoot /var/www/html/sitio1
- ErrorLog ${APACHE_LOG_DIR}/error.log
- CustomLog ${APACHE_LOG_DIR}/access.log combined
- </VirtualHost>

Paso 5: Habilitar los sitios virtuales y reiniciar Apache

Habilita los sitios virtuales:

- sudo a2ensite josesitio1.conf


- sudo systemctl restart apache2
- solucionamos el error del reinicio del servidor apache
Paso 6: Actualizar el archivo hosts

Añade las siguientes líneas al archivo /etc/hosts para asociar los nombres de los
sitios virtuales a la dirección IP local:

- sudo nano /etc/hosts

Añade la línea:

- 192.168. x. x josesitio1.com www.josesitio.com

Guarda y cierra el archivo.

Paso 7: Verifica los sitios virtuales

Abre tu navegador web y visita http://sitio1 y. Deberías ver las páginas HTML de
prueba que creaste para cada sitio virtual.
Estos son los pasos básicos para configurar dos sitios virtuales en Apache en
Ubuntu. Puedes ajustar la configuración según tus necesidades específicas.

3. Discriminación del tráfico entrante


Configuración de hosts virtuales:

● Utilizar el archivo de configuración de Apache para dirigir el tráfico a los sitios


virtuales correspondientes.

4. Seguridad del servidor


Implementación de medidas de seguridad:

● Configurar el firewall y otras medidas de seguridad.


● Instalar y configurar un certificado
● para HTTPS.

PASO 1. Configuración del Firewall (ufw):

1.1 Instala ufw (si no está instalado):


- sudo apt-get update
- sudo apt-get install ufw

1.2 Habilita el servicio de OpenSSH (si es necesario):

- sudo ufw allow OpenSSH

1.3 Habilita el tráfico HTTP y HTTPS:

- sudo ufw allow 80/tcp


- sudo ufw allow 443/tcp

1.4 Habilita el servicio para Apache (si no está habilitado):

- sudo ufw allow 'Apache Full'

1.5 Activa el firewall:

- sudo ufw enable

1.6 Verifica el estado del firewall:

- sudo ufw status


-

PASO 2. Configuración de Apache:

2.1 Limita la información en los encabezados HTTP:

Edita el archivo de configuración de Apache:

- sudo nano /etc/apache2/conf-available/security.conf

Asegúrate de tener las siguientes líneas:

- apache
- ServerTokens Prod
- ServerSignature Off

Guarda y cierra el archivo. Luego, reinicia Apache:

- sudo systemctl restart apache2

PASO 3. Actualizaciones del Sistema:

3.1 Actualiza el sistema:


- sudo apt-get update
- sudo apt-get upgrade

PASO 4. Configuración del Usuario:

4.1 Deshabilita el acceso directo a root:

Asegúrate de tener un usuario no root con privilegios sudo. Desactiva el acceso


directo a root por SSH:

- sudo nano /etc/ssh/sshd_config


- Asegúrate de tener PermitRootLogin no y reinicia el servicio SSH:
- sudo systemctl restart ssh

5. Verificación del acceso de usuarios


Pruebas de acceso:

● Verificar el acceso al servidor desde diferentes clientes.

Paso 1. Acceso SSH:

Si has configurado SSH en tu servidor, puedes probar el acceso desde diferentes


clientes utilizando el siguiente comando desde una terminal o línea de comandos:

- ssh usuario@dirección_ip_del_servidor

Reemplaza "usuario" con tu nombre de usuario y "dirección_ip_del_servidor" con la


dirección IP de tu servidor.
Paso 2. Acceso HTTP/HTTPS:

Abre un navegador web en diferentes dispositivos y prueba acceder a tus sitios web.
Ingresa la dirección del servidor o el nombre de dominio asociado a tus sitios
virtuales.

6. Ejecución de código en servidor y cliente


Diferenciación de ejecución de código:

● Crear una página simple que muestre la diferencia entre código ejecutado en el
servidor (PHP, por ejemplo) y en el cliente (JavaScript).

Para ello crearemos un archivo HTML para integrar PHP y JavaScript:

PASO 1. Crea un archivo HTML:

.PASO 2. Guarda el archivo y accede a través del navegador:


Guarda el archivo diferenciacion.html en el directorio de tu servidor web (por
ejemplo, en /var/www/josesitio1/ si sigues el ejemplo anterior). Luego, accede a la
página a través de tu navegador utilizando la URL correspondiente.

arduino

http://tudominio.com/diferenciacion.html

7. Instalación de módulos
Instalación de módulos adicionales:

● Instalar un módulo como PHP o un gestor de bases de datos.

Procedemos a la instalación de PHP y MySQL, que es uno de los sistemas de


gestión de bases de datos más utilizados, en tu servidor Ubuntu con Apache. Estos
pasos son ya teniendo Apache instalado.

Paso 1 Instalar PHP:

- sudo apt-get update


- sudo apt-get install php libapache2-mod-php

Paso 2. Reiniciar Apache:

- sudo systemctl restart apache2

Paso 3 .Verificar la instalación de PHP:

Puedes crear un archivo info.php en el directorio de tu sitio web con el siguiente


contenido:
php

- <?php
- phpinfo();
- ?>

Guarda el archivo y accede a él desde tu navegador:

arduino

- http://tudominio.com/info.php

Deberías ver una página con información detallada sobre la configuración de PHP.

Paso 4.Instalar MySQL Server:

- sudo apt-get install mysql-server

Durante la instalación, se te pedirá que configures la contraseña del usuario "root"


de MySQL.

Paso 5 . Instalar el paquete de PHP para MySQL:

- sudo apt-get install php-mysql

openssl req -newkey rsa:2048 -nodes -keyout josesitio1.key -out


josesitio1.csr
Paso 6. Seguridad inicial de MySQL:

Ejecuta el siguiente comando para realizar una configuración de seguridad inicial


para MySQL. Te guiará para configurar la contraseña de root, eliminar usuarios
anónimos, desactivar el inicio de sesión remoto de root y eliminar las bases de datos
de prueba.

- sudo mysql_secure_installation
-

-
Paso 7. Verificar la instalación de MySQL:

Puedes verificar la instalación accediendo a MySQL con el siguiente comando:

- mysql -u root -p

Inicia sesión con la contraseña que configuraste durante la instalación.

8. Asegurar las comunicaciones


Configuración de SSL/TLS:

● Asegurar que todas las comunicaciones entre el cliente y el servidor estén cifradas
con SSL/TLS.

Paso 1 .Instalación de Certbot (Cliente de Let's Encrypt):

- sudo apt-get update


- sudo apt-get install certbot

Paso2. Obtener y configurar un certificado SSL:

Utiliza Certbot para obtener y configurar un certificado SSL para tu dominio:

- sudo certbot --apache -d tudominio.com -d www.tudominio.com

-
Reemplaza "tudominio.com" con tu dominio real. Certbot te guiará a través de un
proceso interactivo para obtener y configurar el certificado.

Paso3. Configurar redirección a HTTPS:

Una vez que tengas el certificado, es una buena práctica configurar Apache para
redirigir automáticamente todas las solicitudes HTTP a HTTPS. Puedes hacerlo
editando la configuración de tu sitio:

- sudo nano /etc/apache2/sites-available/tudominio.conf

Asegúrate de que haya una sección para los puertos 80 y 443 y que la redirección
esté configurada. Puede verse algo así:

- apache

<VirtualHost *:80>
ServerName tudominio.com
Redirect permanent / https://tudominio.com/
</VirtualHost>

<VirtualHost *:443>
ServerName tudominio.com
DocumentRoot /var/www/tudominio
# ... configuración SSL ...
</VirtualHost>

Paso 4. Guarda y cierra el archivo, luego reinicia Apache:

También podría gustarte