Vamos a realizar todo el proceso necesario para realizar conexiones a nuestro fortigate mediante certificados. Para ello necesitamos un crear una entidad certificadora, ya sea con un servidor Windows con el rol de AD CS(mirar las páginas de referencia), mediante openssl, o como en nuestro caso usando una aplicación para windows llamada XCA http://xca.sourceforge.net/.
Los pasos que vamos a seguir son:
Una VPN con certificados nos garantiza tanto la identidad del usuario que se conecta como la del sitio al que se coneca.
Nos bajamos el XCA y lo instalamos en nuestro equipo con permisos de administrador
En XCA cada CA (Autoridad Certificadora)se almacena en un fichero con extensión *.xdb. Se recomienda usar distintas bases de datos para cada PKI (Infraestructura de clave pública) que creemos.
Ejecutamos el programa Click File > New Database.
Pulsamos sobre la pestaña Certificates y entonces pulsamos en el botón New Certificate.
Configuramos los parámetros del certificado.
Configuramos la información de identificación.
Rellenamos los campos de Distinguished name y pulsamos sobre el botón inferior Generate a new key
Seleccionamos el tamaño de la clave y pulsamos el botón Create
modificamos los siguientes parámetros:
En el panel de la izquierda seleccionamos:
Pulsamos Aceptar y nos debe aparecer una ventana indicandonos que el certificado ha sido creado
Lo siguiente es exportar el certificado raíz para tener una copia de seguridad. Para ello hacemos lo siguiente:
Abrimos la interfaz web de nuestro cortafuegos →System →Certificates → Local Certificates.
En la parte superior pulsamos sobre Generate y se abrirá la siguiente ventana
Al pulsar sobre ok volvemos a la página de Lcal Certificates. seleccionamos el certificado que hemos creado y pulsamos sobre el botón download de la barra.
Nos generará un fichero con la extensión csr que deberemos de importar en el XCA para firmar
Abrimos el XCA y nos vamos a la pestaña Certificate Signing requests y pulsamos sobre el botón Importar y seleccionamos el fichero que descargamos en el paso anterior.
Botón derecho del ratón sobre el certificado que acabamos de importar → Firma
Editamos los parámetros antes de firmar de acuerdo a lo siguiente:
Pulsamos aceptar para que nos firme el certificado.
Depués debemos de exportar el certificado y volverlo a importar al Fortigate. Para eso vamos a la pestaña certificates del XCA →seleccionamos el certificado y pulsamos el botón de exportar
Vamos al interfaz web del cortafuegos → System →Certificates →Local Certificate → Import → Seleccionamos el certificado firmado del paso anterior
System →Certificates →CA Certificates →Import →Marcamos la casilla Local Pc y seleccionamos el fichero CA Raiz que previamente hemos exportado de nuestra entidad Certificadora
Abrimos el XCA → Pestaña Certificate signing requests → New Request En la ventana que se abre → Pestaña Subject → Rellenamos los campos y pulsamos sobre el botón generate a new key
Seleccionamos el tamaño de la clave y pulsamos sobre create.
Pestaña key usage y seleccionamos del panel de la izquierda → Digital signature
Pulsamos el botón de aceptar y bajo la pestaña Certificate signing requests aparece la petición que acabamos de crear con el estado de la columna firma como Unhandled.
Pulsamos con el botón derecho del ratón y en el menu contextual que aparece seleccionamos Firma
En la ventana que se abre en la parte de signing elegimos la opción use this Certificate for signning y seleccionamos el certificado raíz
Verificamos que en la pestaña Extensions la validez que queremos darle al certificado y pulsamos sobre aceptar
Ahora nos aparecerá el certificado firmado. Ya sólo falta exportar este certificado y el certificado raíz e importarlo al forticlient. XCA→ Pestaña Certificate→ elegimos el certificado y le damos a exportar →PKCS#12
Desde el Fortigate descargamos la CA que hemos creado y que si es la primera seguramente se llamara el CA_Cert_1.
A su vez desde el XCA → pestaña Certificates →exportamos el certificado cliente en formato pkcs#12 e importamos ambos certificados al forticlient→Menu File→opciones→Gestión de Certificados→botón importar
Añadimos una nueva conexión con los siguientes parámetros
Aparte de los pasos anteriores se supone que en el fortigate hemos creado las políticas y los usuarios necesarios. En caso contrario los pasos a seguir son:
Creamos uno nuevo teniendo en cuenta que el Subject tiene que ser el mismo que el del certficado y en CA el certificado de nuestra CA normalmente CA_Cert1