¿Qué es una Entidad Certificadora?

Una Entidad Certificadora es aquella que gestiona diferentes tipos de certificados, principalmente su emisión (creación y distribución) y su revocación.

  • Emisión es la parte donde se generan los certificados. Está basado en permisos y directivas que le otorgan una finalidad, (firma, identificación, cifrado), el período de validez y para quién se genera y que puede hacer con ello.
  • Revocación, se encarga de mantener y publicar una lista de certificados que han perdido su derecho o su finalidad, aunque su fecha de validez aún esté vigente. (Se invalida el certificado)

Una Entidad Certificadora aporta una mejora en la seguridad de los procesos cotidianos de nuestra empresa, se despliegan certificados que son utilizados para multitud de propósitos, por ejemplo encriptar ficheros o crear conexiones seguras SSL a una página web.

La seguridad de esta Entidad Certificadora, garantiza que la integridad de los certificados no se vea comprometida.

Una Entidad Enterprise tiene varias ventajas respecto a una Stand Alone:

  • Está integrada con el dominio y por lo tanto con el Directorio Activo, permite la publicación de certificados y CRLs en el dominio.
  • Permite la asignación de certificados de forma automática (autoenrollment) y la gestión a través de políticas de dominio
  • Dispone de plantillas de certificados

Entonces ¿Por qué podemos optar por elegir Stand Alone?

  • Aprobación de certificados se realiza de forma manual, cuando se solicita un certificado desde cualquier equipo cliente, éste debe ser aprobado por el administrador. Esto nos ofrece una gran capacidad de control respecto a la emisión y gestión de certificados.
  • Puede no estar integrada a un Directorio Activo, por lo tanto puede permanecer apagada sin la necesidad de que repercuta en el sistema. Con esto conseguimos que la Entidad Certificadora no esté disponible frente a un ataque, minimizamos la posibilidad de que se vea comprometida.
  • Puede tener configurada una Entidad Enterprise como subordinada, es la forma más habitual, emitidos certificados importantes o incluso agentes de recuperación con la Stand Alone, la apagamos para que no puedan comprometerla, y trabajamos de forma diaria con la Enterprise que nos ofrece la posibilidad de trabajar de forma más cómoda con plantillas y autoenrollment.

Resultado de imagen de pki stand alone offline

 

En el video hemos podido ver como se lleva a cabo una implementación de una Entidad Certificadora Stand Alone, en este caso desde Powershell, pero esto es lo de menos. ¿Por qué necesitamos una Entidad Certificadora Stand Alone en vez de una Enterprise?

 

Scripts utilizados en el video

URL OID para verificar la plantilla http://msdn.microsoft.com/library/windows/desktop/ms677621.aspx

Plantilla CA Personalizada

[Version]

Signature=”$Windows NT$”

[PolicyStatementExtension]

Policies=InternalPolicy

[InternalPolicy]

OID=1.2.3.4.1455.67.89.5

Notice=”Legal Policy Statement”

URL=http://pki.corp.contoso.com/pki/cps.txt

[Certsrv_Server]

RenewalKeyLength=2048

RenewalValidityPeriod=Years

RenewalValidityPeriodUnits=5

CRLPeriod=weeks

CRLPeriodUnits=1

LoadDefaultTemplates=0

AlternateSignatureAlgorithm=1

[CRLDistributionPoint]

[AuthorityInformationAccess]

 

Conectamos al equipo donde vamos a desplegar la CA

 

Add-WindowsFeature Adcs-Cert-Authority -IncludeManagementTools

Install-AdcsCertificationAuthority -CAType StandaloneRootCA -CACommonName “Adatum Root Certificate Authority” -KeyLength 4096 -HashAlgorithm SHA256 -CryptoProviderName “RSA#Microsoft Software Key Storage Provider” -ValidityPeriod Years -ValidityPeriodUnits 20 -Force

certutil -cainfo

$crllist = Get-CACrlDistributionPoint; foreach ($crl in $crllist) {Remove-CACrlDistributionPoint $crl.uri -Force};

Add-CACRLDistributionPoint -Uri C:\Windows\System32\CertSrv\CertEnroll\Adatum-Root%8%9.crl -PublishToServer -PublishDeltaToServer -Force

Add-CACRLDistributionPoint -Uri http://adatum.com/pki/Adatum-Root%8%9.crl -AddToCertificateCDP -AddToFreshestCrl -Force

Get-CAAuthorityInformationAccess | where {$_.Uri -like ‘*ldap*’ -or $_.Uri -like ‘*http*’ -or $_.Uri -like ‘*file*’} | Remove-CAAuthorityInformationAccess -Force

Add-CAAuthorityInformationAccess -AddToCertificateAia http://adatum.com/pki/Adatum-Root%3%4.crt -Force

certutil.exe –setreg CA\CRLPeriodUnits 20 periodo de validez

certutil.exe –setreg CA\CRLPeriod “Years”

certutil.exe –setreg CA\CRLOverlapPeriodUnits 3

periodo de validez del crl overlap

certutil.exe –setreg CA\CRLOverlapPeriod “Weeks”

certutil.exe –setreg CA\ValidityPeriodUnits 10 periodo de validez de nuestros certificados

certutil.exe –setreg CA\ValidityPeriod “Years”

certutil.exe -setreg CA\AuditFilter 127

Restart-Service certsvc

 

En el equipo AD

certutil.exe -dspublish -f “nombredefichero.crt”

certutil.exe -dspublish -f “nombredefichero.crl”

Autor: Victor Rodilla

Curso: Microsoft MCSA Windows Server + Microsoft MCSE Cloud Platform & Infrastructure

Centro: Tajamar

Año académico: 2017-2018

Linkedin: linkedin.com/in/victorrodilla