Diferència entre revisions de la pàgina «HTTPS amb Let's Encrypt»
(Hi ha 7 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 8: | Línia 8: | ||
<br> | <br> | ||
− | == | + | == Requeriments == |
− | + | Per a fer aquesta pràctica has de tenir un domini en un servidor públic. Es recomana utilitzar els registrador de dominis gratuïts [http://www.freenom.com www.freenom.com] i com a servidors [[AWS: Amazon Web Services]] | |
− | + | A més, cal assegurar-se que tens ben configurats els registres DNS: | |
− | + | * ''naked domain'' (per exemple: enric.tk) | |
− | + | * el del World Wide Web (per exemple: www.enric.tk) | |
− | |||
− | |||
− | + | <br> | |
− | |||
− | |||
− | + | == Activem el protocol SSL a Apache == | |
− | + | Per activar el protocol HTTPS cal: | |
+ | # Assegurar-te que tens ben configurats el "naked domain" (elmeudomini.com) i el subdomini web (www.elmeudomini.com) apuntant el teu servidor AWS | ||
+ | # Obrir el port 443 si estem darrera d'un firewall (és el cas del AWS) | ||
+ | # Instal·lar el mòdul SSL<pre>sudo a2enmod ssl</pre> | ||
+ | # Activar la site ''default-ssl'':<pre>sudo a2ensite default-ssl.conf</pre> | ||
+ | Amb la configuració per defecte ja porta uns certificats autofirmats amb els què el nostre servidor funcionarà, tot i que el navegador avisarà que no és una 'site'' de confiança. | ||
− | + | Els certificats autofirmats solen estar amb el nom ''snakeoil''. Els pots comprovar a l'arxiu <code>/etc/apache2/sites-available/default-ssl.conf</code>: | |
− | + | SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem | |
− | + | SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key | |
− | |||
− | + | I ja podem anar a mirar el servidor amb: | |
+ | https://elmeudomini | ||
+ | <br> | ||
+ | == Sistema manual == | ||
+ | Feu-ho aquí: | ||
+ | https://gethttpsforfree.com/ | ||
+ | |||
+ | Pistes: | ||
+ | * Cal fer-ho tot seguit perquè si no surt bé has de començar de nou des del punt 3. | ||
+ | * El procés per obtenir el certificat segueix: | ||
+ | *# Crear un parell de claus publica/privada | ||
+ | *# Generar una petició de certificat (CSR) | ||
+ | *# El Big Brother (Let's Encrypt) ens proposa un repte (''challenge'') per demostrar que nosaltres som els autèntics propietaris del domini en qüestió. Pots fer-ho de 2 maneres (tria una i prou): | ||
+ | *#* Publicant un arxiu en una URL concreta que et diu a la web. | ||
+ | *#* Posant en marxa un servidor web molt lleuger amb una comanda amb Python que et dona la web. | ||
+ | * Un cop hagis superat el repte i el Big Brother et reconegui com a propietari, obtindràs els certificats. | ||
+ | * Descarrega i instal·la els certificats tal i com t'indica la pròpia pàgina de https://gethttpsforfree.com | ||
<br> | <br> |
Revisió de 18:05, 22 gen 2020
Contingut
Intro[modifica]
Let's Encrypt és un proveïdor de seguretat web entre d'altres, que ens permet certificats gratuïts.
Pots començar a llegir sobre Let's Encrypt aquí:
https://letsencrypt.org/getting-started/
Requeriments[modifica]
Per a fer aquesta pràctica has de tenir un domini en un servidor públic. Es recomana utilitzar els registrador de dominis gratuïts www.freenom.com i com a servidors AWS: Amazon Web Services
A més, cal assegurar-se que tens ben configurats els registres DNS:
- naked domain (per exemple: enric.tk)
- el del World Wide Web (per exemple: www.enric.tk)
Activem el protocol SSL a Apache[modifica]
Per activar el protocol HTTPS cal:
- Assegurar-te que tens ben configurats el "naked domain" (elmeudomini.com) i el subdomini web (www.elmeudomini.com) apuntant el teu servidor AWS
- Obrir el port 443 si estem darrera d'un firewall (és el cas del AWS)
- Instal·lar el mòdul SSL
sudo a2enmod ssl
- Activar la site default-ssl:
sudo a2ensite default-ssl.conf
Amb la configuració per defecte ja porta uns certificats autofirmats amb els què el nostre servidor funcionarà, tot i que el navegador avisarà que no és una 'site de confiança.
Els certificats autofirmats solen estar amb el nom snakeoil. Els pots comprovar a l'arxiu /etc/apache2/sites-available/default-ssl.conf
:
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
I ja podem anar a mirar el servidor amb:
https://elmeudomini
Sistema manual[modifica]
Feu-ho aquí:
https://gethttpsforfree.com/
Pistes:
- Cal fer-ho tot seguit perquè si no surt bé has de començar de nou des del punt 3.
- El procés per obtenir el certificat segueix:
- Crear un parell de claus publica/privada
- Generar una petició de certificat (CSR)
- El Big Brother (Let's Encrypt) ens proposa un repte (challenge) per demostrar que nosaltres som els autèntics propietaris del domini en qüestió. Pots fer-ho de 2 maneres (tria una i prou):
- Publicant un arxiu en una URL concreta que et diu a la web.
- Posant en marxa un servidor web molt lleuger amb una comanda amb Python que et dona la web.
- Un cop hagis superat el repte i el Big Brother et reconegui com a propietari, obtindràs els certificats.
- Descarrega i instal·la els certificats tal i com t'indica la pròpia pàgina de https://gethttpsforfree.com
Sistema automàtic[modifica]
El sistema automàtic utilitza CERTBOT
https://certbot.eff.org/