meta data de esta página
VPN ipsec con certificados
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:
- Crear una entidad certificadora
- Generar un certificado raíz
- Generar un certificado para el Fortigate.
- Generar un petición en el fortigate
- Importar la petición del fortigate al XCA.
- firmarlo
- exportar el certificado firmado e importarlo al Fortigate
- Generar certificados para los clientes de la vpn
- Generar un petición para los clienes desde el XCA
- Firmar la petición
- exportar el certificado firmado de cliente
- exportar desde el fortigate el certificado raíz CA_Cert
- importar los certificados clientes y raíz al Forticlient
- Crear vpn, políticas y usuarios en el fortigate
Una VPN con certificados nos garantiza tanto la identidad del usuario que se conecta como la del sitio al que se coneca.
Crear una entidad certificadora
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.
- En la ventana que se abre especificar el nombre y la ubicación donse se almacena el fichero con la base de datos XCA y pulsar guardar.
- Nos aparece una ventana donde debemos poner una contraseña para encriptar el fichero de la base de datos. Esa contraseña es necesaria para cada vez que vayamos a abrir esa base de datos.
Generar el certificado Raíz
Pulsamos sobre la pestaña Certificates y entonces pulsamos en el botón New Certificate.
Configuramos los parámetros del certificado.
Pestaña Sujeto
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
Pestaña Extensions
modificamos los siguientes parámetros:
- en la lista desplegable Type elegimos Certification Authority
Pestaña Key usage
En el panel de la izquierda seleccionamos:
- Digital Signature
- Key Agreement
- Certificate Sign
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:
- Pestaña certificados →Botón exportar →ponemos la ubicación y el nombre de donde guardamos el certificado y pulsamos sobre el botón Aceptar
Generar certificado para el Fortigate
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
Firma del Certificado generado
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:
- En source verificar está marcada la opción de usar el certificado raiz que habiamos generado
- En la pestaña de extensions, casilla Time range poner 1 año
- En la pestaña Key Usage marcar
- Digital Signature
- Key Agreement
- Certificate Sign
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
Importar certificado firmado
Vamos al interfaz web del cortafuegos → System →Certificates →Local Certificate → Import → Seleccionamos el certificado firmado del paso anterior
Importar Certificado Raiz
System →Certificates →CA Certificates →Import →Marcamos la casilla Local Pc y seleccionamos el fichero CA Raiz que previamente hemos exportado de nuestra entidad Certificadora
Crear certificados para los clientes
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.
Firma del certificado cliente
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
Forticlient
Importar certificados al Forticlient
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
Crear la conexión
Añadimos una nueva conexión con los siguientes parámetros
Crear conexión y usuarios en el Fortigate
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:
- Nos validamos en el Fortigate y vamos a la pestaña VPN
- Creamos los usuarios de validación
- Pinchamos sobre el icono Create FortiClient VPN
- Ponemos los siguientes parámetros
Creamos los usuarios de validación
para PKI
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