Com instal·lar el certificat SSL a Nginx
Abans de començar el tutorial, no tens un servidor Cloud Linux on puguis instal·lar el teu servidor web nginx? No et preocupis! Amb només un clic, pots desplegar-lo fàcilment amb SW Hosting.
Per instal·lar un certificat SSL a Nginx, necessitarem els següents fitxers:
- Certificat (.crt)
- Clau privada (.key)
- Autoritat de certificació (.ca)
Ja els tens? Començem:
-
Copia els tres fitxers al servidor. En aquest manual, assumim que has pujat els tres fitxers mitjançant FTP, però pots fer-ho de qualsevol altra manera.
-
Connecta't al servidor mitjançant SSH i accedeix al directori on es troben els certificats. Si els has pujat al directori 'web':
cd /var/www/minuevaweb.es/datos/web -
Connecta el fitxer .crt amb el fitxer .ca, i guarda'l al directori de certificats de Nginx:
cat /var/www/minuevaweb.es/datos/web/certificado.crt /var/www/minuevaweb.es/datos/web/certificado.ca >> /etc/nginx/swpanel/ssl/certificados.crt -
Mou el fitxer .key al directori de certificats de Nginx:
mv /var/www/minuevaweb.es/datos/web/certificado.key /etc/nginx/ssl/ -
Elimina els fitxers de certificat de la carpeta web, per assegurar-te que no siguin públics.
rm /var/www/minuevaweb.es/datos/web/certificado.crtrm /var/www/minuevaweb.es/datos/web/certificado.ca -
Accedeix al directori de certificats i canvia el propietari i el grup dels mateixos a root:
cd /etc/nginx/sslchown root:root certificados.crt certificado.key
Ja hem copiat els certificats al directori corresponent.
A continuació procedim a modificar el fitxer de configuració corresponent a la nostra web:
-
Accedeix al directori de fitxers de configuració vhosts:
cd /etc/nginx/sites-enabled/ -
Edita el fitxer de configuració corresponent a la web on estàs instal·lant el certificat SSL. En aquest exemple utilitzem l'editor de textos nano, però pots fer servir qualsevol altre:
nano minuevaweb.es.conf -
Fes una còpia del primer bloc existent per sota del mateix, quedarà duplicat:
# nginx virtual host for domain 'minuevaweb.es'
server {
listen 80;
root '/var/www/minuevaweb.es/datos/web';
index index.html index.php;
server_name minuevaweb.es www.minuevaweb.es;
access_log /var/www/minuevaweb.es/logs/20190307.log;
error_log /var/www/minuevaweb.es/logs/error_20190307.log;
include /etc/nginx/php7.2.conf;
}
(el fitxer original)
server {
listen 80;
root '/var/www/minuevaweb.es/datos/web';
index index.html index.php;
server_name minuevaweb.es www.minuevaweb.es;
access_log /var/www/minuevaweb.es/logs/20190307.log;
error_log /var/www/minuevaweb.es/logs/error_20190307.log;
include /etc/nginx/php7.2.conf;
}
server {
listen 80;
root '/var/www/minuevaweb.es/datos/web';
index index.html index.php;
server_name minuevaweb.es www.minuevaweb.es;
access_log /var/www/minuevaweb.es/logs/20190307.log;
error_log /var/www/minuevaweb.es/logs/error_20190307.log;
include /etc/nginx/php7.2.conf;
}
(el fitxer amb la còpia original)
- En el segon bloc, modifiquem el port de 80 a 443:
server {
listen 443;
...
- En el segon bloc, després del port (paràmetre listen), afegim les següents línies amb les rutes corresponents als nostres certificats:
...
ssl on;
ssl_certificate /etc/nginx/ssl/certificados.crt;
ssl_certificate_key /etc/nginx/ssl/certificado.key;
...
- Quedarà de la següent forma:
# nginx virtual host for domain 'minuevaweb.es'
server {
listen 80;
root '/var/www/minuevaweb.es/datos/web';
index index.html index.php;
server_name minuevaweb.es www.minuevaweb.es;
access_log /var/www/minuevaweb.es/logs/20190307.log;
error_log /var/www/minuevaweb.es/logs/error_20190307.log;
include /etc/nginx/php7.2.conf;
}
server {
listen 443;
ssl on;
ssl_certificate /etc/nginx/ssl/certificados.crt;
ssl_certificate_key /etc/nginx/ssl/certificado.key;
root '/var/www/minuevaweb.es/datos/web';
index index.html index.php;
server_name minuevaweb.es www.minuevaweb.es;
access_log /var/www/minuevaweb.es/logs/20190307.log;
error_log /var/www/minuevaweb.es/logs/error_20190307.log;
include /etc/nginx/php7.2.conf;
}
-
Guarda els canvis realitzats. En l'editor de textos nano, has de prémer la combinació de tecles següent:
Ctrl + Xper guardar i sortirTecla Yper confirmar que vols sobrescribirTecla Enter -
Comprova que la configuració sigui correcta:
nginx -tSi apareix algun error, repassa els passos anteriors. -
Recarrega la configuració de Nginx perquè s'apliquin els canvis:
/etc/init.d/nginx reload
Ja està! Accedeix a la teva web amb el prefix https:// per verificar que funciona correctament.
Recorda que si encara no disposes d'un servidor Cloud amb sistema operatiu Linux, pots desplegar-lo fàcilment amb SW Hosting.