Category Archives: Windows 2008

Directorio Activo Tools Windows 2008 Windows 2008 R2 Windows 2012 Windows 2012 R2

Active Directory Replication Status Tool – Herramienta del Estatus de la Replicación de nuestro Directorio Activo.

Published by:

Buenos dias,

Hace un par de años publiqué un post sobre esta herramienta «Active Directory Replication Status«, pues ahora han sacado la versión 1.1 que podemos descargar desde este enlace.

Adreplstatus00003

¿Que nos aporta?

  • Nos muestra los errores de replicación de Directorio Activo (AD) ocurridos en nuestros dominios o bosques.
  • Prioriza los errores que tienen que ser resueltos con el fin de evitar la creación de objetos persistentes en dominios o bosques de AD.
  • Nos proporciona ayuda para resolver los problemas de replicación mediante vinculos a la base de datos de conocimiento de Microsoft Technet.
  • Permite que la información de replicación pueda ser exportada a otros administradores o profesionales para ser analizada offline.

Todo ello desde un entorno gráfico muy sencillo y muy ágil.

Requerimientos:

Sistemas operativos soportados donde poder instalar esta herramienta:

  • Windows 7,
  • Windows 8,
  • Windows Server 2003,
  • Windows Server 2008,
  • Windows Server 2008 R2,
  • Windows Server 2012,
  • Windows Vista,
  • Windows Server 2012 R2

Controladores de Dominio a monitorizar:

  • Windows Server 2003,
  • Windows Server 2008,
  • Windows Server 2008 R2,
  • Windows Server 2012,
  • Windows Server 2012 R2

Otros requerimientos:

  • .NET Framework 4.0 (es posible que nos pida .NET Framework 3.5 si se instala sobre Windows Server 2008).
  • Tener una cuenta de dominio con privilegios.

Instalación.

Muy sencilla. Hacemos doble click en el instalador y …. ya está:

Adreplstatus00002

Funcionamiento.

Hacemos un chequeo inicial como ejemplo. Lanzamos la herramienta y esta es su apariencia:

Adreplstatus00004

Procedemos a realizar un descubrimiento inicial, pudiendo ser tanto de nuestro Forest como de los dominios dependientes. Lanzamos dicha acción desde los botones superiores de la consola:

Adreplstatus00005

Y, en nuestro caso, no existen ningún problema de replicación entre mis Controladores de Dominios (DC). Si os fijais, he sustituido el nombre de cada DC por un color y la replicación entre ellos es muy diferente, no todos replican contra todos:

Adreplstatus00006

En la parte de abajo nos indica de que color nos apareceran los posibles eventos de error. Si entramos DC por DC, podemos ver la situación de la replicación partición por partición, como podeis ver en mi caso desde un DC de Madrid hacia un DC de Bilbao:

Adreplstatus000017

Así como podemos ver los diferentes test que realiza (nos pocos ¿verdad?). Podemos dejar de visualizar aquellos que no nos interesen o consideremos que no son necesarios:

Muy util esta herramienta.Y, para terminar, podemos exportar toda esta información en formato XPS, CSV o para echarle un vistazo «offline».

Adreplstatus00008

Espero que os guste.

Buen fin de semana y mejor puente para aquellos que lo van a disfrutar.

Administración Backup Powershell Windows 2008 Windows 2008 R2 Windows 2012 Windows 2012 R2

Restauración de una GPO de un backup con Powershell.

Published by:

Hola,

Una vez visto la semana pasada «Cómo hacer un backup de nuestras GPO de Directorio Activo a través de PowerShell (PS), vamos a ver cómo realizar una restauración de las mismas.

Recordar que podemos realizar una restauración total o granular de cualquier GPO así que vamos a ver ambas:

Restauración Total:

Es un caso bastante particular e improbable, ya que implica que, probablemente, hayamos perdido o se hayan corrompido todas nuestras GPOs. Ejecutaremos el siguiente cmdlet:

Restore-GPO -All -Path C:\Backup-GPO

Con el siguiente resultado:

RestoreGPOs0001

Se restauran no solo las GPOs, también información de la creación de cada GPO, fecha de modificación, Versión de usuario y versión de Equipo, dominio, propietario, etc.

Restauración de una GPO:

Este es el caso mas habitual, queremos restaurar una GPO que, por error humano, se ha borrado, eliminado o corrompido. Ejecutaremos el siguiente cmdlet:

Restore-GPO -BackupId -Path C:\Backup-GPO

Con el siguiente resultado:

RestoreGPOs0002

Y ¿de dónde sale el parámetro BackupId?, pues como vimos al realizar el backup, las políticas se guardan con su número identificativo o GUID, que es que utilizaremos para identificar cada GPO:

RestoreGPOs0003

El viernes un poquito mas.

Administración Backup Powershell Windows 2008 Windows 2008 R2 Windows 2012 Windows 2012 R2

Copia de seguridad de tus GPOs de Directorio Activo con Powershell.

Published by:

Buenos dias,

Después de casi una semana de vacaciones, retomamos nuestros quehaceres cotidianos. Hoy empezamos con algo sencillo y directo. ¿Cómo hacer copia de seguridad de nuestros Objetos de Política de Grupos (GPO) de Directorio Activo utilizando Powershell.

Comentar que a partir de Windows Server 2008 R2, o sea, Powershell v2,  se dispone de cmdlets específicos para la gestión de GPO’s de Directorio Activo. Primero tendremos que cargar el módulo «GroupPolicy», si no lo tenemos cargado por defecto. Podemos ver todos los cmdlets relacioandos con las GPOs:

BackupGPOPS000001

Vamos a realizar nuestro primer Backup:

Backup-GPO -All -Path I:\GPOS_AD

BackupGPOPS000002

I:\GPOS_AD es la ruta donde vamos a ubicar nuestro backup. y, para este ejemplo, hemos hecho un backup completo de todas las GPOs de nuestro dominio.

Por cierto, si os habeis fijado, en la primera captura he realizado un Get-Host para ver que versión de PowerShell tenía, la mas baja para nuestras intenciones, v2. Pues podemos ver qué módulos podemos importar, por defecto, a través del siguiente cmdlet:

BackupGPOPS000001a

Son muy pocas, Active Directory, ADRMS, AppLocker, BestPracties, ……… y GroupPolicy, por supuesto.

Para terminar este «Post Express«, como Buena Práctica que espero sigais, tendremos que programar un Backup ya sea por el entorno gráfico (GUI) como por Powershell pero esto, lo dejamos para otro Post. Yo ya lo tengo preparado:

BackupGPOPS000004

Para rizar el rizo os dejo estas lecturas recomendadas con opciones mejoradas:

Que tengais buena semana, yo empiezo hoy  😉

Directorio Activo Seguridad Servicios Windows Windows 2008 Windows 2008 R2 Windows 2012 Windows 2012 R2 Windows 7 Windows 8 Windows 8.1

Restringir el tráfico RPC de los Controladores de Dominio a un puerto o puertos determinados.

Published by:

Como sabreis, gran parte de la comunicación entre Controladores de Dominio (DC), se realiza a través de RPC (técnica para la comunicación entre procesos en una o más computadoras conectadas a una red). Este tráfico RPC puede ser motivado por distintos servicios que se ejecuten en nuestros DC, como pueden ser:

  • DHCP.
  • Replicación de Directorio Activo.
  • Replicación FRS.
  • WINS.
  • Promoción de un Controlador de Dominio,
  • etc.

¿Cómo funciona RPC?

Para empezar una comunicación RPC,  el cliente se conecta al puerto TCP 135 del servidor y solicita un puerto al End Point Mapper (EPM). El EPM del servidor reserva un puerto, denominado puerto dinámico, para este cliente y se lo envía. A partir de este punto, el cliente abre una nueva conexión TCP a dicho puerto del servidor y comienza la comunicación. Aqui os dejo un gráfico sobre un proceso Cliente/Servidor de RPC:

Estos puertos dinámicos RPC, también conocidos como puertos efímeros se distribuyen de la siguiente manera, dependiendo del sistema operativo:

  • Hasta Windows 2003/XP (del 1025 al 5000) = 3976 puertos en total.
  • Desde Windows 2008/Vista (del 49152 al 65535) = 16.384 puertos en total.

Hasta aqui todo correcto, pero ¿qué ocurre en zonas desmilitarizadas o DMZ dónde tenemos restringidos determinado tráfico y puertos?

Los puertos que generalmente utilizan los Controladores de Dominio en los servicios básicos son los siguientes:

Service Port/protocol
RPC endpoint mapper 135/tcp, 135/udp
Network basic input/output system (NetBIOS) name service 137/tcp, 137/udp
NetBIOS datagram service 138/udp
NetBIOS session service 139/tcp
RPC dynamic assignment Win 2k/2003:1024-65535/tcp
Win 2008+:49152-65535/tcp
Server message block (SMB) over IP (Microsoft-DS) 445/tcp, 445/udp
Lightweight Directory Access Protocol (LDAP) 389/tcp
LDAP ping 389/udp
LDAP over SSL 636/tcp
Global catalog LDAP 3268/tcp
Global catalog LDAP over SSL 3269/tcp
Kerberos 88/tcp, 88/udp
Domain Name Service (DNS) 53/tcp1, 53/udp

Asi que nuestros Firewalls tendrán que tener abierto estos puertos para la comunicación entre DCs y clientes pero ¿qué ocurre con el tráfico RPC si hemos dicho que es dinámico? El hecho de tener que abrir un rango tan grande de puertos en el Firewall implica aumentar el riesgo de ataque ya que son 16384 puertos los que se exponen. Posible solución: restringir dicho tráfico a un número fijo de puerto o puertos.

Nosotros, por ejemplo, lo que queremos es forzar el tráfico RPC entre los puertos 5000-5100. Recordar, que es necesario y como mínimo, dejar un rango de 100 puertos consecutivos para un mejor funcionamiento y evitar cuellos de botella.

RPCPORTS00001

Tenemos tres métodos de realizarlo, dependerá de los servicios que queramos restringir:

Método 1 – Entradas en el registro sobre la configuración de los servicios de replicación de Directorio Activo.

  • HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNTDSParameters y añadimos la clave DWORD TCP/IP Port con el valor del puerto que queremos utilizar (incluyendo los espacios en blanco).
  • HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNetlogonParameters y añadimos la clave DWORD DCTcpipPort con el valor del puerto que queremos utilizar (incluyendo los espacios en blanco).

Método 2 – Para configurar en el Servicio Firewall de Windows el rango de puertos (para Windows 2008/Vista en adelante):

  • netsh int ipv4 set dynamicport tcp start=5000 num=1000
  • netsh int ipv4 set dynamicport udp start=5000 num=1000
  • netsh int ipv6 set dynamicport tcp start=5000 num=1000
  • netsh int ipv6 set dynamicport udp start=5000 num=1000

RPCPORTS00002

Y para verificar que está configurado:

  • netsh int ipv4 show dynamicport tcp
  • netsh int ipv4 show dynamicport udp
  • netsh int ipv6 show dynamicport tcp
  • netsh int ipv6 show dynamicport udp

RPCPORTS00003

Método 3 – Para los servicios de comunicaciones de Windows. También afecta a las comunicaciones de Directorio Activo. Volvemos a trabajar en el Registro:

 HKEY_LOCAL_MACHINESoftwareMicrosoftRpc

  1. REG_MULTI_SZ: 5000-5100
    PortsInternetAvailable: REG_SZ: Y
    UseInternetPorts: REG_SZ: Y

Espero que os sea util. En un próximo post utilizaremos la herramienta «PortQuery» para verificar el tráfico RPC entre controladores de dominio.

Bibliografia:

Directorio Activo Windows 2008

GPO de Preferencias de Directorio Activo de Windows Server 2008 R2.

Published by:

Aprovechando que estoy con ello, vamos a darle un repasito a las Preferencias de Directorio Activo.

¿Que son las preferencias? son un conjunto de configuraciones iniciales que necesita un usuario para su trabajo cotidiano, como pueden ser carpetas de usuario, entradas de registro, accesos directos, configuraciones de energia, ubicaciones de red, impresoras, etc. Se trata de ofrecer un método simple y amigable para las configuraciones que tradicionalmente se realizaban mediante un logon script.

A diferencia de la configuración de directiva de grupo, las preferencias no se exigen. Los usuarios pueden cambiar las preferencias después de su implementación inicial.

En principio pensaba que solo era posible utilizarlas si tenias Windows 7 como cliente y Windows Server 2008 como Controladores de Dominio. Error, si no tenemos Windows 7 como cliente, antes que un equipo pueda recibir las configuraciones de preferencias tenemos que descargarnos e instalar Group Policy Preference Client Side Extension (GPPCSE) para Windows XP SP2 o Windows Vista. Esto viene detallado en este KB943729.

Buen fin de semana.
Directorio Activo Windows 2008

Inter-Site Change Notifications» en los servicios de Active Directory.

Published by:

Os cuento cómo provocar la replicación de los cambios en Directorio Activo cada cinco segundos entre Sites distintos. 

Situación inicial: Bosque y dominio único con tres Sites distintos, Madrid, Santander y Torrevieja. Por defecto la configuración de Directorio Activo Site & Services es la siguiente:



Hay que añadir que por desconocimiento habiamos configurado la topologia de AD en anillo y no era realmente asi, tenía que ser centralizada.

La replicación de cambios en Directorio Activo está configurada de la siguiente manera:

  • Intra-Site.- Dentro de cada Site, cada cambio se replica al resto de Controladores de dominio del mismo Site utilizando una replicación denominada ‘Normal’, que es 5 segundos después de realizar dicho cambio. 

 

  • Inter-Site.- Entre cada Site, cada cambio se replica al resto de Controladores de dominio de otros Sites conforme a lo definido en el Site-Link creado. En nuestro caso es cada 180 minutos.
 
Question: Ya que las comunicaciones entre los diferentes Sites es buena, la finalidad es provocar que tengan la misma latencia las replicaciones Intra-Site y las Inter-Site, o sea, 5 segundos después de haberse realizado un cambio. ¿Os parece viable?

En nuestro caso, además habíamos definido en Directorio Activo que tanto la línea de comunicación entre Madrid y Torrevieja como la línea entre Madrid y Santander fuese la misma (el site link definido), teniendo el mismo peso, y realmente no era así, cada línea de comunicaciones era muy diferente de la otra. Había que definir dos tipos de Site-Links distintos con una ponderación relacionada directamente proporcional a dicho ancho de banda.

Primero.- Reflejar la topología de red tal y como queriamos. Teníamos configurada la opción de IP Site Link en el protocolo IP, o sea, teníamos definido «enlazar todos los vinculos a sitios». Desmarcando dicha opción solucionamos este punto
 



Segundo.- Provocar dicha replicación Intra-Site = Inter-Site = 5 segundos. Abrimos la consola Adsi Edit, editamos el contexto de nomencaltura «configuración«, bajamos hasta Sites, Inter-Site Transports, IP y en el atributo Optiones ponemos el valor «1«:


Prueba superada.

Bibliografía
MSDN
Technet
Social Technet.

CA Windows 2008

Migración de una Entidad Certificadora de Servidor. Parte II – Importacion.

Published by:

Hoy continuamos con la importación de los datos de la Entidad Certificadora (CA) de Windows Server 2003 en un Windows Server 2008 R2.

Procederemos de la siguiente manera:

  • Comprobaremos que los servicios de la CA Legacy están parados.- Sobre todo para que no emita ningún certificado.
  • Instalaremos los servicios de Entidad Certificadora (CA) en el Servidor que va a ser destino.
  • Añadimos el Rol desde el Server Manager:
  • Elegimos el tipo de servicio, Certification Authority.
  • Seleccionaremos si la CA es Enterprise o StandAlone. En nuestro caso es Enterprise:
  • Elegimos si es Root CA o Subordinada.- En nuesto entorno de una única CA por lo que será Raiz de todas maneras:
  • Importaremos el certificado de la CA.- En este punto seleccionaremos que ya tenemos un certificado con clave privada para importar, el que hicimos backup en el Post anterior:
Seleccionamos el fichero en cuestión:
 Nos aparecere el Certificado a Importar:
  • Directorios de instalación.- Pues nada, las rutas por defecto:
  • Review.- Y, para finalizar la página de confirmaicón de todo lo que hemos seleccionado:
  • Reinicio de los Servicios.- Si no nos pregunta que reinicimos los servicios, lo haremos nosotros.
  • Importaremos el Backup realizado.-Desde la consola de CA «Restore CA….» nos lanza el Wizard de restauración, indicándonos que tendrá que parar los servicios:
Asistente de rigor:
 
Indicamos qué es lo que queremos restaurar, la clave privada y/o la base de datos así como la ruta donde extraer la información:

Password asignada en la Parte I:.

 Y fin:
 

Nos informa si queremos iniciar servicios o incluir otro tipo de backups que tengamos:

  • Aplicaremos las claves de registros.- Aplicaremos las claves de registro, en el caso de ser necesarias, ya que es donde se guarda la configuración de la CA. Ejecutamos el fichero de registro que copiamos en el backup del Paso I. Nos informa de lo peligroso que estamos haciendo y le decimos que si:

Nos vuelve a informar que se ha añadido la información al registro:

** OJO => En nuestro caso no ha sido necesario aplicarlas, primero por ser diferentes versiones de sistema operativo y, segundo, porque la mayoría de los parámetros de configuración eran los mismos.

Nos faltaría realizar las comprobaciones pertinentes de que, por un lado, todos los certificados emitidos por la CA antigua siguen funcionando correctamente, por otro, que podemos emitir nuevos certificados que sirven a su función, Que vemos todas las plantillas que se publican en Directorio Activo, todos los certificados revocados, certificados emitidos, clave pública de la CA, listas de revocación, puntos de acceso, etc., :

Podríamos haber instalado el rol de Portal Web de Certificados, etc., pero lo he dejado, para otro dia.

Hasta la próxima.

Bibliografía del TechNet:
TechNet 1
TechNet 2
TechNet 3
TechNet 4

CA Windows 2008

Migración de una Entidad Certificadora de Servidor. Parte I – Exportación.

Published by:

Muy pocas veces nos encontramos en la tesitura de tener que migrar una Entidad Certificadora (CA) de un servidor, ya sea porque es antiguo, con pocos recursos, con demasiados roles o con un Sistema Operativo obsoleto, a un nuevo servidor, moderno.

Nuestro caso es el de migrar una CA de un servidor Windows Server 2003 a un Windows Server 2008 R2. Lo dividimos en dos partes, primero exportamos y luego importamos.

Exportar: Partimos del KB298138 de Microsoft como base.

Necesitamos:

  • Realizar un Backup de la CA.
  • Exportar la configuración del registro.

Desde la consola de gestión de la CA, lanzamos una copia de seguridad de la misma:

Una vez nos aparece el Wizard, seleccionamos siguiente, y nos aparece la siguiente pantalla, donde seleccionaremos la exportación de la Clave Privada, la base de datos y los logs:

Ponemos una password para securizar la copia de seguridad:

Para terminar realizamos una copia de seguridad de la configuración del registro de la CA. Desde una línea de comando tecleamos «Regedit» y buscamos la siguiente entrada:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCertSvcConfiguration

Donde pulsaremos exportar, por ejemplo, a la misma carpeta que hemos creado antes.

Ya tenemos toda la información necesaria para exportar la CA. La copiamos al nuevo servidor y esperamos al siguiente Post.
Un saludo,
IIS Windows 2008

Migración de WebSites – De IIS6 a IIS7.

Published by:

Estoy involucrado en un proyecto de migración de websites desde una plataforma IIS5 e IIS6 a otra con IIS7.5, vamos de Windows 2000 y Windows Server 2003 a una Windows Server 2008R2, de x32 a x64. Me centraré en la migración de IIS6 a IIS7 porque como sabreis Windows 2000 ni está soportado ni nada de nada, aunque haya cienes y cienes de ellos todavía funcionando.

Buscando en el portal IIS.Net encontré el Web Platform Installer 3.0 que instalé y, sobre todo, varias herramientas que contiene y que me vienen como anillo al dedo :
  • Web Deployment Tool.- para el despliegue de Sites.
  • Web Farm Framework.- para la creación de una granja de publicadores.

 

También en este portal descubrí un procedimiento de migración muy sencillo que ahora os resumo:

Tipo de migraciones que podemos realizar con esta herramienta:
  • Migrate 1 or 1,000 Web sitesfrom IIS 6.0 to IIS 7 including all the configuration settings, content andcertificates
  • Migrate a single application
  • Migrate an entire server(all Web sites, application pools, etc.) from IIS 6.0 to IIS 7
  • Migrate a custom manifestcomprised of sites, application pools, assemblies, COM objects, registry keys,content and more from IIS 6.0 to IIS 7
 Preprequisitos:
  • .NET Framework 2.0 SP1 osuperior.
  • Web Deployment Tool 1.1
 Migración:
  • Part 1 – View your site’sdependencies
1. Get the dependencies of the Web site by running the followingcommand: msdeploy-verb:getDependencies -source:metakey=lm/w3svc/1
2. Review the output of the dependencies and look for any scriptmaps or installed components in use by the site. For example, if WindowsAuthentication is in use by the Web site, you will see <dependencyname=»WindowsAuthentication» />.
3. If your site is inheriting any script maps, these will not belisted in the dependencies and you should also review the script maps for yoursite manually.
4. Compile a list of the components needed on the destination.
  • Part 2 – Configure thetarget
1. Review the list of dependencies and install them on thedestination server.
For example, let’s assume you had the following in use for yourWeb site:
·        ASP.NET
·        Windows Authentication
·        Anonymous Authentication
Based on this analysis of your dependencies, you would installthe corresponding components and modules.

  • Part 3a – Migrate your siteto the target by using a package file
1. Always make a backup of the destination server. Even if youare just testing, it allows you to easily restore the state of your server.
%windir%system32inetsrvappcmd add backup “PreWebDeploy”
2. Run the following command on the source server to create apackage (compressed) file of the server:
msdeploy -verb:sync -source:metakey=lm/w3svc/1-dest:package=c:Site1.zip > WebDeployPackage.log
3. Copy the package file to the destination server.
3. Run the following command on the destination server tovalidate what would happen if a sync operationwere run:
msdeploy -verb:sync -source:package=c:Site1.zip-dest:metakey=lm/w3svc/1 -whatif > WebDeploySync.log
4. After verifying the output, run the same command againwithout the whatif flag:
msdeploy -verb:sync -source:package=c:Site1.zip-dest:metakey=lm/w3svc/1 > WebDeploySync.log
  • Part 3b – Migrate your siteto the target by using the Web Deployment Agent Service
If you don’t want to use a package, you can use the WebDeployment Agent Service (MsDepSvc, also called «remote service») tosynchronize from IIS 6.0 to IIS 7.
1. Install the remote service on either the source or thedestination depending on whether you want to synchronize from a remote sourceor to a remote destination.
2. Start the service on the computer.
net start msdepsvc
3. Run the following command to do a «push»synchronization from the local source to a remote destination (replace Server1 withthe name of the remote computer). Run the command first with the whatif flag,then without it once you have confirmed that the command will do what you want.
msdeploy -verb:sync -source:metakey=lm/w3svc/1-dest:metakey=lm/w3svc/1,computername=Server1 -whatif > msdeploysync.log
4. Alternatively, run the following command to do a»pull» synchronization from the remote source to the localdestination (replace Server1 with the name of the remote computer). Run thecommand first with the whatif flag, then without it once you have confirmedthat the command will do what you want.
msdeploy -verb:sync-source:metakey=lm/w3svc/1,computername=Server1 -dest:metakey=lm/w3svc/1-whatif > msdeploysync.log
You are now done migrating your site. To verify, test browsingto the web site on the destination server. For troubleshooting help, see Troubleshooting Web Deploy.

Pues, manos a la obra. Ejecutamos los siguientes comandos desde nuestro servidor W2K8R2IIS y después de unos minutos nos aparece el nuevo Site:


Depende de la programación y configuración del Site de origen el que funcione a la primera. Yo, de todas maneras, realizó un chequeo oportuno:

  • Verificar los Bindings.- 
  • Verificar los Applications Pools.-
  • Importar Certificados.- En el caso de que proceda.
  • Verificar el tipo de autenticación.- En mi caso me pedía usuario y password al conectarme aunque tuviese Autenticación Anónima. Tuve que seleccionar «Application pool identity».
  • Igualar permisos.- Ya sea con un robocopy, un SubinAcl o un Icacls.



    Bibliografía.
    Administración Backup CA Windows 2008

    Script para realizar Backup de una Entidad Certificadora.

    Published by:

    Buenos dias,
    Últimamente estoy en un proyecto para montar una infraestructura PKI, Infraestructura de Clave Pública, en una plataforma con Microsoft Windows 2008 R2 y he creado este script para que se realice backup de la base de datos, certificados, templates y CSP. Creo que es bastante completo:

    Echo Backup Certification Authority, Certificates, Templates and CSP
    CD/
    cd backup
    Echo Y| del C:BackupBACKUPCADATABASE
    Echo Y|rd /S C:BackupBACKUPCADATABASEDataBase
    Echo Y| del C:BackupBACKUPCA
    Echo Backing up the Certification Authority and Certificates
    certutil -backup -p C:BackupBACKUPCADATABASE
    Echo Backing up the registry keys
    reg export HKLMSystemCurrentControlSetServicesCertSvcConfiguration C:BackupBACKUPCAregkey.reg
    Certutil –getreg CACSP > C:BackupBACKUPCACSP.txt
    Echo Documenting all certificate templates published at the CA
    Certutil –catemplates > C:BackupBACKUPCACATemplates.txt
    move \
    nombre del servidorbackupNEWCABACKUPCA \nombre del servidorbackupNEWCA»%date:/=_%»
    xcopy C:BackupBACKUPCA*.* \
    nombre del servidorbackupNEWCABACKUPCA /S /y

    Las últimas líneas del script son para copiarnos dicho backup en una carpeta que tenga por nombre la fecha del día en que se ejecuta este script y se mueva diariamente el último backup

    Espero que os sirva.
    Nos vemos.