Cómo instalar manualmente el certificado SSL para sitio web sin cPanel / VestaCP [NGINX]

Cómo instalar manualmente el certificado SSL para el sitio web es muy útil cuando tenemos un sitio web alojado sin cPanel / VestaCP. tutorial es para NGINX y se requiere acceso 'root' para configurar para HTTPS.

Estaba diciendo en una el artículo del mes pasado a medida que más y más sitios web cambian a conexiones seguras HTTPS y que Firefox Quantum es el primer navegador que inicia los sitios HTTP de flagelación roja por ser inseguros para los usuarios.
Dejando de lado la idea que ha comenzado a arraigar en la mente de muchos, como sitios sin HTTPS serían inseguros y estarían llenos de virus, y aquellos con HTTPS son puros como una lágrima (una idea totalmente falsa por cierto), muchos administratory los servidores y sitios se ven obligados a realizar la misma transición de HTTP a protocolo HTTPS.
Pasar de protocolo HTTP en HTTPS implica comprar un certificado SSL o el uso del certificado proporcionado gratuitamente por el proyecto Vamos a cifrar, Después de comprar el certificado SSLDebe ser instalado en el servidorentonces sitio web configurado para la transición de http: // a https: //.

Cómo instalar manualmente el certificado SSL (HTTPS Conexión) para un sitio web alojado en un servidor NGINX sin cPanel o VestaCP

Veamos paso a paso cómo instalar un certificado SSL en un servidor con NGINX.

usuarios cPanel o VestaCP tienen a su alcance en la interfaz de gestión campos dedicados donde pueden poner e instalar certificados SSL. Para un usuario que solo está disponible de línea de comandos desde su consola de servidor SSH, las cosas se complican un poco. Él tendrá que hacer cargar a los certificados si configurar NGINX para cambiar de HTTP a HTTPS.

Cómo instalar manualmente el certificado SSL en un servidor con NGINX
Cómo instalar manualmente el certificado SSL en un servidor con NGINX

1. Generar CSR (Solicitud de firma de certificado)

Inicias sesión en el servidor en el que está alojada la web que quieres activar HTTPS y ejecute la siguiente línea de comando. De preferencia en /etc/nginx/ssl.

openssl req -new -newkey rsa:2048 -nodes -keyout numedomeniu.key -out numedomeniu.csr

Preferiblemente es el nombre de los archivos .key y .crt para poner el nombre de dominio para el que los vas a utilizar. En caso de que vayas a usar más de uno a la vez, conoce cuál y de dónde es.
Finalmente, en la carpeta donde se ejecutó la línea de comando, obtendrás dos archivos. domainname.csr y domainname.key,

2. comprar un certificado SSL y obtenga los archivos .crt y .ca-bundle.

En nuestro caso compre PositivoSSL Certificado multidominio de la COMODO, a través de NAMECHEAP.COM. Tras el proceso de compra, recibirás un correo electrónico en el que deberás activar el certificado SSL. Ingrese en la solicitud de validación el nombre de dominio para el cual se utiliza el certificado y otros datos incluidos en el formulario. Te pedirá que ingreses también Código de CSR generado arriba. Obviamente, puede encontrarlo en el archivo "domainname.csr". Correr "gato numedomeniu.csr”Para poder copiar el contenido.
Al final se te pedirá que lo hagas Validación de nombre de dominio para lo cual se usa el certificado. Tienes más métodos de validación. El más simple y más rápido está en una dirección de correo electrónico hecha por nombre de dominio.
Una vez que haya superado este paso, en unos minutos debería recibir un correo electrónico en el que se adjunta un archivo que contiene dos archivos.  certificado SSL (113029727.crt por ejemplo) y un archivo como 113029727.ca-bundle.

3. Cargue archivos de certificado al servidor a través de FTP/SFTP.

Cargue los archivos del punto 2 al servidor en el mismo lugar donde tiene los del punto 1 y combine el contenido de los archivos: domainname.csr y 113029727.ca-bundle en un solo archivo. P.ej, ssl-dominio.crt.
Finalmente, en el archivo recién creado, ssl-dominio.crt usted debe tres códigos de certificado, el primero en estar en el archivo 113029727.crt.

4. Configurar NGINX para HTTPS – Adición de certificados SSL.

El siguiente paso es configurar NGINX para HTTPS.
Suponiendo que ya lo ha configurado para HTTP, solo tiene que agregar las siguientes líneas al archivo de configuración nginx del dominio:

server {
listen 80;
server_name numedomeniu.tld www.numedomeniu.tld;
rewrite ^ https://$server_name$request_uri permanent;
}
server {
 listen 443 ssl;
 server_name numedomeniu.tld www.numedomeniu.tld;
 ssl on;
 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
 ssl_certificate /etc/nginx/ssl/ssl-domeniu.crt;
 ssl_certificate_key /etc/nginx/ssl/numedomeniu.key;
 ssl_prefer_server_ciphers on;

En las líneas "ssl_certificate"Y"ssl_certificate_key"Tienes que pasar el camino exacto en el servidor a los dos archivos. La línea "rewrite"Es hacer redirección permanente de http a https, por lo que no hay riesgo de tener un sitio duplicado en HTTP y HTTPS.

5. Comprobación de la configuración de NGINX y reinicio después de instalar manualmente el certificado SSL

Antes de reiniciar el servicio nginx, es bueno verificar un nginx.conf.

nginx -t

Si todo está bien con el resultado de la prueba nginx, reinicie el servicio.

systemctl restart nginx

o

service nginx restart

Dependiendo del CMS que utilice en el sitio web: WordPress, Drupal, Magento, Joomla, Prestashop, etc. CMS, deberá configurar su base de datos y otros archivos para tener un sitio web válido HTTPS.
Si decimos que tienes en una página web una imagen cuya ruta comienza con "http: //", esa página no será válida HTTPS, y el bloqueo del indicador no estará presente en la barra de direcciones del navegador web.

Apasionado por la tecnología, escribo con gusto en StealthSettings.com desde el año 2006. Tengo una amplia experiencia en sistemas operativos: macOS, Windows y Linux, así como en lenguajes de programación y plataformas de blogs (WordPress) y para tiendas en línea (WooCommerce, Magento, PrestaShop).

Cómo » Web Hosting » Cómo instalar manualmente el certificado SSL para sitio web sin cPanel / VestaCP [NGINX]
Deja un comentario