---
title: Activant HTTPS.
tags: DAW, M8
---
<div style="width: 30%; margin-left: auto;">


</div>
<a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="Llicència de Creative Commons" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a><br />Aquesta obra està subjecta a una llicència de <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Reconeixement-CompartirIgual 4.0 Internacional de Creative Commons</a>

# Activant HTTPS.
En aquesta activitat activarem el protocol HTTPS per a les nostres comunicacions amb el servidor web Apache.
Per a poder realitzar connexions https, el servidor web necessita per una banda tenir instal·lat i activat el mòdul ssl. Molt segurament ja tindreu aquest mòdul disponible així que només necessiteu activar-lo amb la comanda adient.
També necessitarem un certificat X509 i la seva clau privada, aquí tenim dues opcions:
1. Sol·licitar un certificat per al nostre domini a una entitat certificadora. Disposem fins i tot d’una opció gratuïta: Let’s Encrypt (https://letsencrypt.org/), però malauradament és imprescindible tenir un domini propi i tenir un equip accessible públicament des d’Internet. Aquesta opció ens permetrà encriptar les comunicacions i autenticar el servidor web.
2. Crear un certificat X509 autosignat per nosaltres mateixos. Amb aquesta opció no necessitem els serveis de terceres parts, però els clients que es connectin a la nostra màquina no podran autenticar al servidor, corren el risc d’atac man-in-the-middle. És la opció que posarem en pràctica.
Per a aconseguir el nostre certificat autosignat utilitzarem la eina openssl:
```bash=
$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/ssl/private/apache-iticbcn-selfsigned.key -out /etc/ssl/certs/apache-iticbcn-selfsigned.crt
```
Per a més informació podeu consultar les següents pàgines del manual:
* man openssl
* man openssl-req
Un cop que hem generat el certificat i la seva corresponent clau privada, podem comprovar el seu
contingut:
```bash=
$ sudo openssl x509 -noout -text -in /etc/ssl/certs/apache-iticbcn-selfsigned.crt
$ sudo openssl rsa -noout -text -in /etc/ssl/private/apache-iticbcn-selfsigned.key
```
I fins i tot podem verificar que el camp mòdul del certificat i de la seva clau privada són exactament
iguals:
```bash=
$ sudo openssl x509 -noout -modulus -in /etc/ssl/certs/apache-iticbcn-selfsigned.crt | openssl md5
$ sudo openssl rsa -noout -modulus -in /etc/ssl/private/apache-iticbcn-selfsigned.key | openssl md5
```
Ara ja tenim la infraestructura necessària per a crear els corresponents servidors virtuals que
permetin comunicar de forma segura.
Haureu de permetre que el contingut del directori per defecte d’Apache (/var/www/html/) es pugui
servir utilitzant el protocol HTTPS pel port 443
Heu de lliurar un document amb el passos necessaris que heu seguit per aconseguir poder servir
pàgines mitjançant el protocol https pel port 443, així com el resultat de les verificacions i proves realitzades, incloent el contingut del certificat i la clau privada i la comparació dels seus mòduls.