Lịch sử tìm kiếm

DHCP IP Address Reservation cho Dial-up IPsec VPN (IKEv1)

🛡️ Fortigate NH • Technical Tip

DHCP IP Address Reservation cho Dial-up IPsec VPN (IKEv1)

Hướng dẫn cấu hình DHCP IP Reservation cho Dial-up IPsec VPN (IKEv1) trên FortiGate, giúp client luôn nhận IP cố định theo MAC Address.

1. Mô tả

Bài viết này hướng dẫn các bước tạo DHCP IP address reservation cho Dial-up IPsec VPN sử dụng IKEv1.

2. Bối cảnh & mục tiêu

🎯 Hiểu đúng mục tiêu
  • Ở bài trước, các bạn có thể chặn SSL VPN theo MAC Address bằng cơ chế host-check (FortiClient gửi MAC, FortiGate kiểm tra và cho phép/không cho phép kết nối).
  • Với Dial-up IPsec, tip trong bài này không phải “MAC host-check”, mà là ràng buộc việc cấp IP qua DHCP theo MAC (DHCP reservation).
💡 Tip vận hành hay gặp

Thực tế, client vẫn tạo được tunnel IPsec nhưng không nhận được IP từ DHCP (DHCP over IPsec). Khi không có IP, client sẽ không truy cập được tài nguyên nội bộ (policy/route không match), và đây chính là lý do tip này rất hữu ích để xử lý nhanh.

🔒 Lưu ý về bảo mật

Cơ chế “không cấp IP/không match IP reservation” chỉ nên xem như một lớp kiểm soát/ổn định vận hành, không thay thế các phương án xác thực mạnh ở cấp người dùng/thiết bị.

3. Gợi ý tăng cường bảo mật (khuyến nghị)

Nếu mục tiêu của bạn là tăng bảo mật user, có thể cân nhắc:

  • ✅ Bật MFA cho user VPN (ví dụ FortiToken/FortiAuthenticator hoặc TOTP tuỳ hệ thống)
  • ✅ Dùng certificate-based authentication (user cert hoặc machine cert) để ràng buộc theo PKI
  • ✅ Phân quyền theo user group và policy theo vai trò (least privilege)
  • ✅ Bật giám sát/log và cảnh báo bất thường (VPN events, failed auth, tunnel-down)

4. Phạm vi áp dụng

  • ✅ FortiGate

5. Cấu hình bằng GUI

Trong ví dụ này, Dial-up IPsec VPN tunnel đã được tạo sẵn bằng IPsec Wizard.

5.1 Bật DHCP Server trên tunnel interface

Truy cập: Network → Interfaces → Edit tunnel interface

 

Áp dụng các thông số sau:

  • IP: 172.16.1.100
  • Remote IP/Netmask: 172.16.1.100 / 255.255.255.0
  • Enable DHCP Server
  • Address Range: 172.16.1.1 – 172.16.1.20
  • Netmask: 255.255.255.0

5.2 Cấu hình IP Address Assignment Rules

Mở rộng mục Advanced → chọn Type: IPsec → vào IP Address Assignment Rules → chọn Create New.

 

Thiết lập:

  • Type: MAC Address
  • MAC address: MAC của card mạng vật lý (Ethernet/WiFi)
  • Action Type: Reserve IP
  • IP: Bất kỳ IP nào trong dải DHCP
⚠️ Lưu ý

MAC Address phải là local adapter (Ethernet/WiFi), không phải Fortinet SSL VPN Virtual Adapter.

5.3 Xác nhận OK

 

5.4 Tắt Mode Config trong Phase 1

 

5.5 Bật DHCP over IPsec (Phase 2)

Bật DHCP over IPsec trong Phase 2 bằng CLI:

config vpn ipsec phase2-interface
  edit "FC1"
    set phase1name "FC1"
    set dhcp-ipsec enable
  next
end

5.6 Cấu hình FortiClient

Trong FortiClient, bật DHCP over IPsec tại phần Advanced Settings.

 
ℹ️ Ghi chú

Đây là tuỳ chọn legacy và chỉ hoạt động với IKEv1.

⚠️ Lưu ý về Split Tunnel

Nếu bật Enable IPv4 Split Tunnel, chỉ traffic tới mạng mong muốn mới đi qua tunnel. Nếu tắt, toàn bộ traffic của client sẽ bị forward qua tunnel.

6. Cấu hình bằng CLI

6.1 Cấu hình DHCP Server trên IPsec interface

config system dhcp server
  edit 3
    set dns-service default
    set default-gateway 172.16.1.100
    set netmask 255.255.255.0
    set interface "FC1"
    config ip-range
      edit 1
        set start-ip 172.16.1.1
        set end-ip 172.16.1.20
      next
    end
    set server-type ipsec
    config reserved-address
      edit 1
        set ip 172.16.1.1
        set mac 00:0c:29:17:70:98
      next
    end
  next
end

6.2 Tắt Mode Config (Phase 1)

config vpn ipsec phase1-interface
  edit FC1
    set mode-cfg disable
  next
end

6.3 Bật DHCP over IPsec (Phase 2)

config vpn ipsec phase2-interface
  edit "FC1"
    set phase1name "FC1"
    set dhcp-ipsec enable
  next
end

7. Kết quả

IP cố định (reserved IP) sẽ được cấp cho client có MAC Address khớp với cấu hình.

8. Lưu ý & cập nhật kỹ thuật

  • Khi mode-cfg bị disable, split tunneling sẽ không hoạt động vì ipv4-split-include không khả dụng.
  • Cập nhật kỹ thuật: Không dùng IP do Wizard gán để tránh lỗi.
 
1