Configuración de Hairpin NAT (VIP)
Thank to: https://fortixpert.blogspot.com/
Este artículo describe cómo configurar FortiGate para Hairpin con el uso de set match-vip y match-vip-only.
En este escenario, tanto el PC como el Servidor están detrás de FortiGate y el PC quiere conectarse al Servidor apuntando a su dirección externa (92.0.2.10) en lugar de la real (10.10.10.10).
Esto se llama Hairpin NAT.
Solución:
La solución dependerá de cómo sea el objeto IP Virtual (VIP).
Solución 1: La interfaz externa en el VIP está configurada a una interfaz particular (en este caso a wan1)
#config firewall vip
edit "VIP"
set extip 92.0.2.10
set extintf 'wan1'
set mappedip 10.10.10.10
next
end
Nota: En este escenario, la IP externa VIP puede ser la misma que la IP de la interfaz (es decir, 92.0.2.2)
Se necesitan dos políticas:
1) Una política de entrada con el objeto VIP como dirección de destino y dmz como interfaz de salida (el servidor de interfaz está detrás). Esta sería la típica política necesaria para hacer que un dispositivo sea accesible desde Internet.
2) Una política saliente que tenga como interfaz saliente la misma definida como interfaz externa en el objeto VIP. En este caso sería wan1.
#config firewall policy
edit 1
set srcintf "wan1"
set dstintf "dmz"
set srcaddr "all"
set dstaddr "VIP" <----- objeto VIP.
set action accept
set schedule "always"
set service "ALL"
next
edit 2
set srcintf "internal"
set dstintf "wan1" <----- Igual que la interfaz externa definida en VIP.
set srcaddr "all"
set dstaddr "all"
set action accept
set schedule "always"
set service "ALL"
set nat enable
next
end
Solución 2: La interfaz externa del objeto VIP está configurada como "any".
#config firewall vip
edit "VIP"
set extip 92.0.2.10
set extintf 'any'
set mappedip 10.10.10.10
next
end
En este escenario, una política desde la red interna directamente a la DMZ es suficiente:
#config firewall policy
edit 3
set srcintf "internal"
set dstintf "dmz"
set srcaddr "all"
set dstaddr "VIP" <----- objeto VIP.
set action accept
set schedule "always"
set service "ALL"
next
end
Otra posibilidad es crear la misma política que la anterior pero con 'match-vip' habilitado y 'all' como dirección de destino en su lugar:
Nota: En FortiOS v6.4.3 y superiores, 'set match-vip enable' sólo está disponible dentro de la política del firewall cuando la ACCIÓN de la política está configurada como DENY, por lo que no se puede utilizar esta posibilidad.
#config firewall policy
edit 4
set srcintf "internal"
set dstintf "dmz"
set srcaddr "all"
set dstaddr "all"
set action accept
set schedule "always"
set service "ALL"
set match-vip enable
next
end
Nota: Para que esta configuración funcione, debe estar activa otra política con el VIP como dirección de destino o se debe utilizar Central NAT.
Comentarios
Publicar un comentario
Dime si la información de este blog te sirvio.