En este artículo, le mostraremos cómo instalar Nginx y configurar un certificado SSL en su Ubuntu 14.04 VPS .
¿Qué es Nginx?
Es un servidor proxy inverso de código abierto para los protocolos HTTP, HTTPS, SMTP, POP3 e IMAP, así como un equilibrador de carga, caché HTTP y un servidor web. Nginx tiene un fuerte enfoque en alta simultaneidad, alto rendimiento y bajo uso de memoria.
¿Qué es SSL?
Es la tecnología de seguridad estándar para establecer un enlace encriptado entre un servidor web y un navegador. Este enlace garantiza que todos los datos transmitidos entre el servidor web y los navegadores permanezcan privados e integrales.
ACTUALIZAR EL SISTEMA UBUNTU
Asegúrate de tener una screen
sesión y su Ubuntu Virtual Server está completamente actualizado ejecutando los siguientes comandos en su terminal
## screen -U -S nginx-ssl-screen ## apt-get update ## apt-get upgrade
INSTALAR NGINX
Instalar Nginx en su servidor virtual Ubuntu Linux con apt
usando el siguiente comando
## apt-get install nginx
CONFIGURAR SSL EN NGINX
Configuración de un SSL sitio web basado en Nginx es bastante simple En este tutorial usaremos un certificado SSL autofirmado. Esto significa que en lugar de comprar certificados SSL firmados, tendríamos que generar y firmar nuestro propio certificado SSL y usarlo en nuestro Nginx.
Bien, generemos un certificado SSL para ssl.domain.tld
en /root/ssl/ssl.domain.tld
directorio usando los siguientes comandos:
## mkdir /root/ssl/ssl.domain.tld -p ## cd /root/ssl/ssl.domain.tld ## openssl genrsa -des3 -out ssl.domain.tld.key 2048 ## openssl req -new -x509 -nodes -sha1 -days 365 -key ssl.domain.tld.key -out ssl.domain.tld.crt ## cp ssl.domain.tld.key{,.orig} ## openssl rsa -in ssl.domain.tld.key.orig -out ssl.domain.tld.key ## chmod 400 ssl.domain.tld.key
ahora debería tener los siguientes archivos en /root/ssl/ssl.domain.tld
directorio:
## ls -1 /root/ssl/ssl.domain.tld ssl.domain.tld.crt ssl.domain.tld.key ssl.domain.tld.key.orig
Bien, lo siguiente que debe hacer es configurar la directiva de host virtual de Nginx (bloque de servidor) para ssl.domain.tld
que está sirviendo, por ejemplo /var/www/html/secure
directorio.
primero, cree el directorio raíz del documento usando mkdir
y con fines de prueba, cree un ejemplo html
archivo usando
## mkdir /var/www/html/secure -p ## echo ssl.domain.tld > /var/www/html/secure/ssl-test.html
a continuación, configure el archivo de configuración en /etc/nginx/sites-available
para ssl.domain.tld
y obviamente, asegúrese de reemplazar ssl.domain.tld
con su propio nombre de dominio y también tenga en cuenta establecer las rutas correctas a su certificado y clave SSL.
## vim /etc/nginx/sites-available/ssl.domain.tld.conf server { listen 443; server_name ssl.domain.tld; ssl on; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on; ssl_certificate /root/ssl/ssl.domain.tld/ssl.domain.tld.crt; ssl_certificate_key /root/ssl/ssl.domain.tld/ssl.domain.tld.key; access_log /var/log/nginx/ssl.domain.tld.log; error_log /var/log/nginx/ssl.domain.tld-error.log error; root /var/www/html/secure; index index.html; location / { try_files $uri $uri/ =404; } }
habilite el bloque del servidor Nginx recién creado, simplemente creando un enlace simbólico desde /etc/nginx/sites-available/ssl.domain.tld.conf
a /etc/nginx/sites-enabled/ssl.domain.tld.conf
## cd /etc/nginx/sites-enabled ## ln -s /etc/nginx/sites-available/ssl.domain.tld.conf
REINICIAR NGINX
Finalmente, debe reiniciar su servidor Nginx para que el cambio surta efecto. Primero puede probar su configuración de Nginx usando:
## nginx -t
y si todo está bien, puede reiniciar el servidor usando:
## service nginx restart
Para probar la configuración, intente abrir https://ssl.domain.tld/ssl-test.html
en su navegador favorito o use el siguiente comando:
## curl -s -k https://ssl.domain.tld/ssl-test.html ssl.domain.tld
Por supuesto, no tiene que hacer nada de esto si utiliza uno de nuestros servicios de alojamiento VPS de Linux, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que lo configuren por usted. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.
PD. Si te gustó esta publicación, compártela con tus amigos en las redes sociales usando los botones de la izquierda o simplemente deja una respuesta a continuación. Gracias.