SSL (Secure Sockets Layer) y TLS (Transport Layer Security) juegan un papel importante cuando se trata de proteger su servidor web Apache que se ejecuta en una máquina Ubuntu 18.04.

La tecnología es muy útil en todos los sitios web y aplicaciones en línea donde se intercambia información sensible. Por ejemplo, se debe instalar un certificado SSL en cada tienda en línea que requiera que los usuarios proporcionen información de la tarjeta de crédito.

Puede comprar un certificado SSL de autoridades de certificación verificadas como Comodo o Namecheap. Sin embargo, aún puede usar un certificado autofirmado en su servidor Ubuntu 18.04, especialmente si solo accede a su servidor usando una dirección IP.

Esto forma la base de esta guía y le mostraremos cómo instalar un SSL autofirmado en su VPS Ubuntu 18.04.

Nota especial: las revisiones de hosting de Hosting mas Baratole permiten consultar con miles de usuarios antes de comprar un plan de hosting. Si está buscando comprar un plan VPS de Ubuntu, consulte las revisiones de hosting de VPS o las revisiones de hosting de Linux.

requisitos

    • Un servidor Ubuntu con la versión 18.04
    • Servidor web Apache
Un usuario no root que puede realizar tareas sudo

Paso 1: asegúrese de que su servidor web Apache esté en funcionamiento

El primer paso es asegurarse de que Apache esté instalado y de que su sitio web esté en funcionamiento. Para hacer esto, ingrese la dirección IP pública de su servidor Ubuntu 18.04 en un navegador web. Debería ver la siguiente página web predeterminada de Apache.

Sin embargo, esto puede ser diferente si ya ha subido el archivo de su sitio web.

Paso 2: crear un certificado SSL

SSL / TLS se basa en una combinación de claves públicas y privadas. Mientras que la parte de la clave privada del certificado SSL / TLS permanece en el servidor, la clave pública se comparte con todos los clientes que solicitan información de su servidor Ubuntu 18.04.

La clave privada cifra los datos antes de enviarlos al cliente, lo que garantiza la seguridad, mientras que la clave pública descifra la información del servidor.

Por lo tanto, debemos crear una clave privada autofirmada y un par de claves de certificado. De forma predeterminada, Ubuntu 18.04 se envía con OpenSSL, una implementación de código abierto del protocolo SSL y TLS.

Puede verificar el número de versión de OpenSSL ingresando el siguiente comando:

openssl version

producción

Crear certificado y par de claves privadas

Podemos crear el certificado y el par de claves privadas usando OpenSSL con un solo comando que se enumera a continuación:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/my.key -out /etc/ssl/certs/my.crt

Se le pedirá información que se incluirá en su solicitud de certificado como se muestra a continuación:

  • Estado o provincia: p. Ej., CENTRAL
  • Nombre del lugar: nombre de la ciudad, p. Ej., NAIROBI
  • Nombre de la organización: p. Ej., MI EMPRESA DE MUESTRA
  • Nombre de la unidad organizativa (p. Ej., Sección) []: p. ej., DEPARTAMENTO DE TI
  • Nombre común (por ejemplo, FQDN del servidor o SU nombre) []: El nombre de dominio exacto o la dirección IP pública, por ejemplo, www.example.com
  • Dirección de correo electrónico: p. Ej., Info@example.com

Después de responder a las preguntas anteriores, los archivos privados y crt se colocarán en la ruta que especificó en el comando OpenSSL. Por ejemplo, en nuestro caso, la clave privada está en /etc/ssl/private/my.key while the CRT will be placed in /etc/ssl/certs/my.crt

Paso 3: habilite el puerto 443

Debe habilitar Apache para que se ejecute en el puerto 443 si tiene un firewall instalado, p. Ej. Por ejemplo, en UFW, ejecute el siguiente comando:

sudo ufw allow 443

O

sudo ufw allow https

Paso 4: habilite el archivo de configuración predeterminado para SSL

De forma predeterminada, el host virtual SSL predeterminado que viene con Apache está deshabilitado de forma predeterminada. Debe habilitarlo con el siguiente comando:

sudo a2ensite default-ssl.conf

Paso 5: reinicia Apache

Ahora podemos reiniciar Apache para que los cambios surtan efecto ingresando el siguiente comando en una ventana de terminal:

sudo systemctl restart apache2

Paso 6: prueba el cifrado

Ingrese la dirección IP pública o el nombre de dominio de su servidor en un navegador precedido por https para probar si el cifrado funciona. Si ve una advertencia de certificado, no se preocupe porque estamos usando un certificado autofirmado que no está en la lista de autoridades de confianza de su navegador.

Conclusión

Este es el procedimiento básico para instalar un certificado autofirmado en su servidor Ubuntu 18.04. Toda la comunicación en su servidor ahora está encriptada. Recuerde que es más apropiado utilizar certificados autofirmados cuando los clientes acceden a su aplicación web a través de una dirección IP.

Por ejemplo, utilice el certificado si está implementando una aplicación no orientada al usuario. Si tiene un nombre de dominio, podría tener más sentido utilizar un certificado de confianza de Let’s Encrypt Open Source Foundation.

Consulte los 3 mejores servicios de hosting de servidores dedicados: