Un certificado SSL (Secure Sockets Layer o capa de conexión segura), es un sistema de cifrado que se usa a nivel mundial para la transferencia de datos entre navegador y servidor.
Este cifrado permite encriptar los datos en su transferencia, otorgando una capa extra de seguridad entre emisor y receptor contra ataques de Hackers o robos de datos.
Let’s Encrypt se trata de una autoridad de certificación, conocidas con las siglas CA, libre y gratuita impulsada por la Fundación Linux, que permite generar certificados SSL gratuitos y automáticos para nuestros sitios web. El objetivo de la comunidad que está detrás es el de promover que el tráfico de Internet sea seguro.
Detrás de este proyecto se encuentra el apoyo de empresas como Mozilla, Akamai, Google o Facebook. Let’s Encrypt emitió más de 24 millones certificados en su primer año, y la cifra aumenta a diario.
Importante:
Estos certificados son validados para el dominio, no requieren una dirección IP dedicada y son compatibles con todas las soluciones de hosting de ACCROACHCODE.
Ofrecen la misma seguridad y compatibilidad a nivel técnico que los certificados de pago Standard.La diferencia con algunos certificados de pago es que por ejemplo con un SSL Wildcard puedes utilizar el certificado para tu dominio y todos los subdominios. Con Let's Encrypt debes instalar un certificado independiente para cada subdominio.También existen otros certificados de pago, como los certificados EV, que muestran el nombre de la empresa en la barra de navegación. Los certificados Standard y los de Let's Encrypt no muestran esa información en la barra de navegación.
Al contrario. Google y otros buscadores están mejorando el posicionamiento de sitios que utilizan conexiones seguras, siendo Let's Encrypt una autoridad de certificación de confianza para Google y los principales navegadores como Chrome, Firefox y Safari.
Los certificados gratuitos de Let's Encrypt se renuevan de forma automática cada 3 meses. No tendrás que estar pendiente de la renovación. Las renovaciones se realizarán siempre que el dominio para el que tienes el certificado esté apuntando a nuestros servidores y el hosting de la web con nosotros.
Observación:
Si Let's Encrypt modifica su política de gratuidad no podremos seguir ofreciéndote o renovando el certificado en las mismas condiciones.
Hay unos cuantos requerimientos que un dominio debería cumplir para que puedas instalar satisfactoriamente un certificado Let's Encrypt en él.
El dominio y su subdominio www deberían estar ambos apuntados a la dirección IP de tu cuenta. De otro modo, el certificado no podrá ser verificado e instalado en tu dominio.
No debería haber una redirección general en el momento de la instalación del certificado, ya que esto impediría que se complete la validación de HTTP. Deberías eliminar temporalmente estas redirecciones hasta que la instalación del certificado se haya completado. Puedes volver a añadirlas de forma segura una vez esté instalado el certificado correctamente.
SolidCP es una herramienta que permite activar automáticamente el certificado ssl a través de tus certificados Let’s encrypt. Para instalar Let's Encrypt SSL entra en https://hosting.accroachcode/ con tu usuario y contraseña asignado.
Se debe agregar dentro del archivo Web.Config la siguiente regla.
<rule name=".well-known" enabled="true" stopProcessing="true">
<match url=".well-known" ignoreCase="true" />
<action type="None" />
<conditions>
<add input="{URL}" pattern=".well-known" />
</conditions>
</rule>De tal manera que tu Web.Config quedaría así.
Consideraciones:
Las reglas se configuran después del <system.webServer> y debes agregar <rewrite> <rules> al inicio y al final </rules></rewrite>
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=".well-known" enabled="true" stopProcessing="true">
<match url=".well-known" ignoreCase="true" />
<action type="None" />
<conditions>
<add input="{URL}" pattern=".well-known" />
</conditions>
</rule>
</rules>
</rewrite>
<directoryBrowse enabled="false" />
<defaultDocument>
<files>
<clear />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="Default.aspx" />
</files>
</defaultDocument>
<httpErrors errorMode="DetailedLocalOnly" existingResponse="Auto" />
</system.webServer>
</configuration>Luego de ingresar, solo debes acceder a la sección de Web Sites para su instalación.
Seleccionar el dominio al cual deseas agregar el certificado SSL.
Seleccionar la última pestaña que dice SSL.
y dar clic en el botón a la izquierda que dice Install Certificate
Luego de esta acción el servidor comenzará la instalación del certificado y le mostrará al final la opción de Save Changes an Exit o Saves Changes.
Puede escoger Save Changes and Exit en el caso que no realice otra configuración adicional en su Sitio Web.
Luego de instalar el certificado puedes forzar a que tu sitio web solo sea accedido mediante HTTPS para ello solo debes agregar estas líneas de código en las reglas de tu web.config
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>Quedaría de la siguiente manera.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=".well-known" enabled="true" stopProcessing="true">
<match url=".well-known" ignoreCase="true" />
<action type="None" />
<conditions>
<add input="{URL}" pattern=".well-known" />
</conditions>
</rule>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
<directoryBrowse enabled="false" />
<defaultDocument>
<files>
<clear />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="Default.aspx" />
</files>
</defaultDocument>
<httpErrors errorMode="DetailedLocalOnly" existingResponse="Auto" />
</system.webServer>
</configuration>La instalación de Let's Encrypt tiene varias limitaciones aplicadas y si has alcanzado una de ellas, puede que la instalación de un certificado nuevo no sea satisfactoria. Los límites más frecuentes son:
5 certificados duplicados emitidos e instalados satisfactoriamente para el mismo nombre de dominio en una semana. Por ejemplo, si solicitaste un certificado para los dominios ejemplo.com y www.ejemplo.com, puedes solicitar cuatro certificados más para esos dominios durante la semana. Si cambiaste el conjunto de nombres mediante un subdominio como blog.ejemplo.com, podrías solicitar certificados adicionales.
5 validaciones fallidas por nombre de dominio por hora. Si intentas instalar un certificado Let's encrypt para tu nombre de dominio y la instalación falla 5 veces, no podrás solicitar una nueva instalación en la próxima hora y deberás esperar a que se levante el límite.
Puedes comprobar todas las limitaciones del servicio en el sitio web oficial de Let’s Encrypt en el siguiente https://letsencrypt.org/docs/rate-limits/