Namecheap dominio SSL + DigitalOcean Hosting: Parte 3

Jose Jan Pierre Sanchez Manosalva
8 min readDec 10, 2020

Vamos a comprar un dominio en Namecheap

Como recordatorio, en Namecheap solo tendremos el dominio ssl y en DigitalOcean nuestro hosting.

Paso 1: Ingresamos a namecheap

Consideraciones:

  • Create una cuenta, en caso ya lo tengas, solo logeate
  • Y realiza la búsqueda de tu dominio para alquilarlo (en este ejemplo yo estoy comprando mi dominio: janpierredev.com

Paso 2: Selecciono mi dominio y lo añado a mi carrito

Paso 3: En el carrito de compra

  • Por cada año pagaría $ 8.88
  • ICANN fee, es una corporación de Internet para los dominios y nos cobra una tarifa que cobra anualmente $ 0.18.
  • WhoisGuard es un servicio de ocultar tu información publica, que ayuda a evitar spam y que los datos que manejes sean seguros (es un servicio gratis)
  • PositiveSSL: Me brinda el certificado SSL para que dominio sea seguro (https), respecto al costo el primero año pagaría $ 3.88 y los próximos años pagaria $ 8.88

En total al adquirir este dominio me saldría $ 12.94.

Paso 4: Realizar el pago

Hay 3 formas de realizar el pago, escoja uno y proceda a pagarlo.

Una vez completado el proceso del pago, iremos a Dashboard

Paso 5: Ir a Domain List

Al ingresar a la lista de dominios, observaras que se creó el tuyo y también puedes configurarlo si deseas que se renueve cada año automáticamente.

Y si ingresas al chrome: mi dominio janpierredev.com se veria que no puedes acceder al sitio, ya que falta enlazarlo al hosting de DigitalOcean

Ahora procederemos a enlazar nuestro dominio de Namecheap a DigitalOcean

Paso 6: Ir a DigitalOcean para asociar nuestro dominio

Seleccionamos: Domains/DNS

Paso 7: Agregamos nuestro dominio

  • Ingresamos nuestro dominio
  • Seleccionamos a que proyecto vamos a asociarlo
  • Y agregamos el dominio

Se agregará y te mostrara unos DNS

Paso 8: Ingresar los DNS de DigitalOcean al dominio de Namecheap

  • En la seccion de NameServers, seleccionar Custom DNS

Paso 9: Ingresar los DNS de digitalOcean

Debes ingresar los 3 DNS

ns1.digitalocean.com.
ns2.digitalocean.com.
ns3.digitalocean.com.

Y aplicas los cambios en el check verde

Paso 10: Activar nuestro certificado SSL

Nos dirigimos a Product List y nos ubicamos en nuestro certificado que falta activar

Primero procederemos a activarlo, para ello le damos clic a Activate

Paso 11: Ingresar CSR (Solicitud de firma de certificado)

CSR: es un código específico y una parte esencial para la activación de SSL

Paso 12: Generar CSR

  • Abrir un terminal con el usuario root (en este caso uso git bash)
  • Ingrese en su consola el siguiente código (reemplace janpierredev con su nombre de dominio, tenga en cuenta que solo estoy ingresado el nombre del dominio sin el .com)
openssl req -new -newkey rsa:2048 -nodes -keyout janpierredev.key -out janpierredev.csr

Después de ingresar el código, la consola le pedirá información específica. Solo ingrese eso con su información de registro de dominio . (reemplace janpierredev.com con su nombre de dominio):

Ahora en la console si escribe el comando:

ls

veras dos archivos generados

Paso 13: Copiar el archivo janpierredev.csr (tudominio.csr) a Namecheap

  • Vamos a abrir el archivo janpierredev.csr (tudominio.csr)
  • En la consola ingresamos:
nano tudominio.csr

Nos mostrará un código y procedemos a copiarlo

Una vez copiado vamos al Paso 11, para ingresar el código CSR,
Damos clic en Next

  • Seleccionamos Any other server (cPanel, Apache, NGINX, etc)
  • Seleccionamos DNS-based y damos clic en Next, con el objetivo que podamos validar que es nuestro dominio.
  • Ingresamos un correo personal y damos clic en Next
  • Damos clic en Submit
  • Te va mostrar lo siguiente, y le damos clic en get CNAME record here
  • Hacer clic en EDIT METHODS (Get Record)
  • Te va mostrar un CNAME, el cual vamos a copiar el Host y Target a DigitalOcean

Paso 14: Registrar el CNAME en DigitalOcean

  • Seleccionar Manage domain
  • Seleccionamos CNAME:
  • Registramos el HOSTNAME (aca solo debes copiar solo el código y no el dominio)

Ejemplo: Mi host de NameCheap: _DA38DA454545454xD.janpierredev.com
solo debo copiar _DA38DA4545454545SDSDSDSD

  • IS AN ALIAS OF (debes copiar tal cual el target de Namecheap)
  • Una vez registrado te va a figurar en la lista
  • Ahora ingresamos lo siguiente:

Paso 15: Ir a NameCheap para indicarle que ya creamos el CNAME a DigitalOcean

  • Hacer clic en EDIT METHODS
  • Te va a mostrar una ventana, el cual le darás clic en Save Changes / Retry Alt DCV
  • Una vez que Namecheap verifica que todo está ok, te va a mostrar lo siguiente (dale f5 por si acaso)

Paso 16: Obtener certificado

  • Descargamos el certificado
  • Se descargara un .zip
  • Lo descomprimimos, y te va a mostrar 3 archivos que vamos a usar en nuestro servidor en DigitalOcean

Paso 17: Activar SSL en el server DigitalOcean

  • Abrir una terminal y ingresamos con el usuario root
  • Vamos a crear dos archivos en la raíz de root
  • Abrimos el archivo janpierredev_com.crt con un editor de texto (por ejemplo bloc de notas)
  • Creamos el archivo en el server con el siguiente código:
nano nombre_de_tu_archivo.crt
  • Y lo pegamos, presionamos para guardar presionamos CTRL + X, le damos Yes y por ultimo enter.
  • Ahora creamos el archivo janpierredev_com.ca-bundle
nano nombre_de_tu_archivo.ca-bundle
  • Hacemos el mismo procedimiento abrimos el archivo janpierredev_com.ca-bundle con bloc de notas, para pegarlo en el archivo que creamos en el server.
  • Una vez creados los dos archivos en el server, poner ls
ls
  • Ahora vamos a unir los dos archivos a uno solo (cert_chain.crt), con el siguiente código:
cat janpierredev_com.crt janpierredev_com.ca-bundle >> cert_chain.crt

Paso 18: Configurar la ruta en nginx

  • Ingresar el siguiente código:
sudo nano /etc/nginx/sites-available/default

Ingresamos lo siguiente:

server_name janpierredev.com www.janpierredev.com;
return 301 https://$host$request_uri;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ /index.html;
}

y creamos el server para usar los certificados SSL, se registra los certificados que creamos anteriormente:

  • /root/cert_chain.crt
  • /root/janpierredev.key
server {
listen 443 ssl;
server_name janpierredev.com www.janpierredev.com;
keepalive_timeout 30;
ssl_certificate /root/cert_chain.crt;
ssl_certificate_key /root/infographic_dev.key;
ssl_session_timeout 5m;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
}

Guardamos los cambios CTRL +X

  • Procedemos a reiniciar el server nginx
sudo systemctl reload nginx
nginx -s reload
  • Ingresamos a chrome y nos va a mostrar nuestro dominio ssl: https://janpierredev.com

Esto es todo =)

--

--