VPN IPSec de FortiGate restringe la conexión por IP de ciertos países

參加完 2025 資安大會後,感覺透過限制 IP 來源的防護政策還是有一定的效果,因此就在評估對現有 FortiGate VPN 增加相關設定。首先已確認 FortiGate 可以設定以 國家/ 地理位址 做為辨識的「位址物件」,所以後續就剩相關政策的設定與套用。

  原先 AI 建議可以在《防火牆政策》設定 Wan → IPSec 來過濾,但實際測試並沒有擋下來,猜測是因為當建置 IPSec VPN 後,FortiGate 會在《進入本機流量政策 (Local-In)》加入一個政策,允許任何 IP 透過 IPSec 連入而造成《防火牆政策》無效,因此要阻擋的話,也需要從這個 Local In Policy 下手了。

Mi versión de firmware es 7.4.7,En la interfaz gráfica,Local In Policy solo se puede visualizar,No se puede modificar,Por lo tanto, después de crear los 'objetos de dirección' de los países relevantes,el siguiente paso es ingresar a la 'consola CLI',y realizar cambios en Local In Policy mediante comandos。
(Según la documentación oficial,7.6.0 después se puede configurar a través de GUI。)

[Entorno FortiGate]

  • Versión de firmware:7.4.7
  • Método de conexión VPN:IPSec
  • Propósito de la configuración:Solo se permiten conexiones IPSec VPN desde IPs de países específicos。

[Consola CLI]
Primero, una breve explicación,En cuanto a la prioridad,Generalmente, primero se configuran las reglas de 'permitir',,y luego se configura 'rechazar todo',Pero como quiero confirmar primero que 'Rechazar todo' funcione,Entonces primero configuraré la regla de 'Rechazar',Cuando todo esté configurado, usaré 'mover' para ajustar el orden de las políticas。

1. Rechazar conexiones IPSec VPN de todas las IPs

config firewall local-in-policy
    edit 1
        set intf "virtual-wan-link" # virtual-wan-link 為 Interface 的名稱
        set srcaddr "all"
        set dstaddr "all"
        set action deny
        set service "IKE" "ESP"
        set schedule "always"
    next
end

2. Permitir conexiones IPSec VPN solo desde IPs de países específicos

config firewall local-in-policy
    edit 2
        set intf "virtual-wan-link"
        set srcaddr "Country-Allow"
        set dstaddr "all"
        set action accept
        set service "IKE" "ESP"
        set schedule "always"
    next
end

3. 調整 local-in-policy 順序

config firewall local-in-policy
move 2 before 1
end

4. 查看最後設定結果

show firewall local-in-policy

 

[Episodio Extra]
  在測試的過程,如果有想觀察相關流量狀況,可以透過以下指令進行。

1. 用 sniffer 觀察任何進入 500, 4500 port 的流量

diag sniffer packet any 'port 500 or port 4500' 4 # 4 最詳細,1 最簡單

// 按 CTRL + C 結束

2. 用 debug 模式觀察來自 123.123.123.123 的前 100 筆流量

diag debug reset
diag debug flow filter addr 123.123.123.123
diag debug flow trace start 100
diag debug enable

diag debug disable
diag debug reset

3. 用 debug 模式觀察 IKE 流量

diag debug reset
diag debug console timestamp enable
diag debug application ike -1 # 等級從 1 ~ 15,-1 代表最詳細
diag debug enable

diag debug disable
diag debug reset

 

《相關連結》

1 Comentarios

Dejar una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tu comentario.