Sitecore

Sitecore – Usando SSL parte 1

Formally known as Secure Sockets Layer (SSL), nowadays it has become increasingly important as a result to keep data protected by establishing an encrypted link between a server and a client.

This is the first in a series of posts about Using SSL on a Sitecore environment, I hope you enjoy it.

In today’s post, I’ll show an overview of SSL, how to create a self-signed certificate and import on IIS.

A handshake says it all

The processes running behind the scenes when you attempt to access a secure website is known as SSL Handshake. And as you can see illustrated below, there are 5 steps to establish a secure connection between client and server.

SSL Handshake operation Blog Vinicius Deschamps
SSL Handshake [https://www.digicert.com/ssl.htm]

Muchos sabores, pero un solo propósito: ¡proteger tus datos!

Encontrarás SSL en una variedad de sabores (Wildcard, SAN, etc.), cada uno con sus propias particularidades, así que elígelos de acuerdo con las necesidades de tu organización.

  • Single Domain

Solo se protege un dominio, por ejemplo yourdomain.com

  • Subject Alternative Names

Múltiples dominios en el mismo certificado, por ejemplo yourdomain.com y differentdomain.com

  • Wildcard

Todos los dominios asegurados, por ejemplo *.mydomain.com asegura www.mydomain.com y services.mydomain.com

Confía en ti mismo

Siempre puedes apoyarte en certificados autofirmados para replicar en tu entorno el efecto que SSL puede causar en tu sitio web. Sin embargo, ten en cuenta que otros no confiarán en ti como tú confías – lo que significa que DEBES evitar usar autofirmados en soluciones de producción.

Probablemente has visto muchos creadores de certificados autofirmados, y desde Windows 8 hay una cmdlet en PowerShell llamada New-SelfSignedCertificate que facilita la creación de certificados autofirmados frente a cualquier otra herramienta.

Para usar los siguientes comandos, debes tener al menos Windows 8

Paso 1 – Crear un certificado autofirmado

1. Ejecuta Windows PowerShell como Administrador

2. Escribe el siguiente comando, luego presiona Enter

New-SelfSignedCertificate -DnsName mydomain.com -CertStoreLocation cert:\LocalMachine\My

3. Deberías obtener una salida similar, como puedes ver en la imagen a continuación

New SelfSignedCertificate Powershell Blog Vinicius Deschamps

Paso 2 – Usar certificado autofirmado en IIS

1. Abre IIS, expande sitios

IIS Internet Information Services Expand Site Blog Vinicius Deschamps

2. Selecciona el Sitio en el que quieres usar el certificado autofirmado, haz clic derecho y Editar Enlaces

IIS Internet Information Services Edit Bindings Blog Vinicius Deschamps

3. En Site Bindings, haz clic en Add

IIS Sitecore Site Bindings Add Blog Vinicius Deschamps

4. En Add Site Binding, elige Type HTTPS y en SSL certificate elige el certificado creado en el Paso 1, y haz clic en Ok y luego Close (Ventana de Site Bindings)

IIS Internet Information Services Add Site Binding SSL Certificate Blog Vinicius Deschamps

Tenga en cuenta que ya tengo mydomain.com en mi archivo hosts (C:\Windows\System32\drivers\etc\hosts) apuntando a 127.0.0.1

C:\Windows\System32\drivers\etc\hosts Blog Vinicius Deschamps

5. Abre tu navegador y accede a tu sitio web usando el dominio utilizado en –DnsName^ el parámetro en el Paso 1, en mi caso fue mydomain.com, así que https://mydomain.com

Sitecore Your connection is not private Blog Vinicius Deschamps

Paso 3 (PLUS!!!) – Exportar certificado autofirmado como archivo PFX con una contraseña

En caso de que quieras instalar en otra máquina o enviar a un colega

1. En la misma PowerShell de Windows, copia la Huella digital Autofirmada y guárdala (en mi caso AB34CF46EF6DAAE6FCB69C65F4A9C07710644F3F)

Sitecore Thumbprint output Powershell Blog Vinicius Deschamps

2. Crea una contraseña usando el siguiente comando

$sslPassword = ConvertTo-SecureString "P@ssw0rd" -Force -AsPlainText

3. Exporta el certificado como archivo PFX usando el comando a continuación

Export-PfxCertificate -Cert cert:\LocalMachine\My\AB34CF46EF6DAAE6FCB69C65F4A9C07710644F3F  -FilePath C:\temp\mydomain.pfx -Password $sslPassword

4. Deberías obtener una salida similar, como se ve en la imagen a continuación

Export PFXCertificate Powershell Blog Vinicius Deschamps

5. Navega a la carpeta donde guardaste el archivo PFX en el Paso 3 y verifica si fue creado. En mi caso, estaba en C:\temp

PFX Certificate Exported Blog Vinicius Deschamps

Paso 4 (PLUS!!!) – Detén los errores de SSL con certificados autofirmados

  1. Ejecuta el Paso 3 y consigue un archivo PFX

  2. Presiona Windows+R para abrir Ejecutar, escribe mmc en la caja vacía y haz clic en Ok

Run MMC Blog Vinicius Deschamps

3. Haz clic en Yes en la ventana de User Account Control

4. En el menú Archivo, haz clic en Agregar o quitar Snap-ins

MMC Add Remove Snap-in Blog Vinicius Deschamps

5. Bajo Available snap-ins, haz doble clic en Certificates

Add Remove Snap-ins Certificate Blog Vinicius Deschamps

6. Selecciona Computer Account, y luego haz clic en Next

Certificates Snap-in Computer Account Blog Vinicius Deschamps

7. Mantén Local Computer en la ventana Seleccionar Equipo, y luego haz clic en Finish

Select Computer Local Computer Blog Vinicius Deschamps

8. Haz clic en Ok en Add or Remove Snap-ins

Add Remove Snap-ins Selected OK Blog Vinicius Deschamps

9. Expande Certificates, encuentra y haz clic derecho en Trusted Root Certification luego elige Import

MMC Certificates Trusted Root Certification Import Blog Vinicius Deschamps

10. En la pantalla de Welcome to the Certificate Import Wizard, haz clic en Next

Certification Import Wizard Welcome Blog Vinicius Deschamps

11. En la ventana de archivo a importar haz clic en Browse…

File to import Blog Vinicius Deschamps

12. En la esquina inferior derecha cambia Certificate file to Personal Information Exchange (*.pfx, *.p12)

Open Personal Information Exchange P12 PFX Blog Vinicius Deschamps

13. Dirígete a la carpeta donde exportaste el archivo PFX en el Paso 3 y selecciónalo, y luego haz clic en Open

Choose PFX Certificate Blog Vinicius Deschamps

14. En la ventana de Private key protection, escribe la misma contraseña que usaste para exportar el archivo PFX en el Paso 3 y haz clic en Next

Private Key Protection Blog Vinicius Deschamps

15. Verifica que el certificado se vaya a colocar en Trusted Root Certification Authorities, y haz clic en Next, luego Finish

Certification Store Trusted Root Certification Authorities Blog Vinicius Deschamps

16. Reinicia cualquier navegador que tengas abierto y prueba de nuevo

Sitecore Experience Platform Fresh Installation SSL Blog Vinicius Deschamps

Voilá! ¡Ya no ves el error!

Gracias por leer, y ¡espero que te haya gustado!

Nos vemos en la siguiente publicación!

Sitecore
Sitecore – Usando SSL parte 1 — Vinicius Deschamps