Chặn kết nối SSL VPN theo MAC Address trên FortiGate (Tunnel Mode)
Chặn SSL VPN theo MAC Address trên FortiGate (Tunnel Mode)
Hướng dẫn bật MAC host check cho SSL VPN (Tunnel Mode) bằng CLI, giúp chỉ những thiết bị có MAC Address hợp lệ mới kết nối được.
1. Mô tả
Bài viết này hướng dẫn cách bật MAC host check cho SSL VPN ở chế độ Tunnel Mode.
2. Phạm vi áp dụng
- ✅ FortiGate
- ✅ FortiClient
3. Lưu ý
- Host-check không hỗ trợ FortiClient từ 6.2.0 đến 7.0.2.
- Từ FortiClient v7.0.3 trở lên, host check mới khả dụng.
- Linux, iOS, Android không lấy được MAC Address ⇒ không hỗ trợ MAC check.
- MAC host check trên FortiGate chỉ cấu hình bằng CLI, không có trên GUI.
4. Solution (Cấu hình)
4.1 Xác định SSL VPN Portal đang sử dụng
Vào SSL-VPN settings và kiểm tra mục Authentication / Portal Mapping để xác định portal đang dùng.
4.2 Cấu hình MAC Address Check bằng CLI
MAC Address có thể gắn theo từng portal và có thể là đủ 48-bit hoặc theo subset (mask). Cấu hình MAC check bắt buộc thực hiện bằng CLI:
config vpn ssl web portal
edit <portal_name>
set tunnel-mode enable
set mac-addr-check enable
config mac-addr-check-rule
edit <rule_name>
set mac-addr-list <address> [address]
set mac-addr-mask <mask 1-48>
next
end
set mac-addr-action {allow | deny}
next
end- Khi tạo web portal bằng CLI, cần bật tunnel-mode. Nếu không, sẽ không enable được MAC check.
- Giá trị mặc định: mac-addr-mask = 48 và mac-addr-action = allow.
4.3 Cách hoạt động
MAC Address của tất cả adapter trên máy người dùng sẽ được gửi về FortiGate tại thời điểm kết nối. Nếu bất kỳ MAC nào khớp với danh sách cấu hình trong rule của portal, action sẽ được áp dụng. Vì vậy cần liệt kê đầy đủ MAC của thiết bị đang chạy FortiClient.
4.4 Ví dụ cấu hình
ipconfig /all | findstr Physicalconfig vpn ssl web portal
edit "MAC-Address-Check-Portal"
set tunnel-mode enable
set web-mode enable
set ip-pools "SSLVPN_TUNNEL_ADDR1"
config bookmark-group
edit "gui-bookmarks"
next
end
set mac-addr-check enable
config mac-addr-check-rule
edit "DellXPS"
set mac-addr-list 9e:b6:d0:f9:bc:39
next
end
set mac-addr-action allow
next
endNếu không có MAC nào trên máy người dùng khớp với giá trị trong mac-addr-check-rule (ví dụ: 9e:b6:d0:f9:bc:39), kết nối SSL VPN sẽ bị từ chối.
4.5 Thêm nhiều MAC Address
Có thể thêm nhiều MAC vào set mac-addr-list:
config vpn ssl web portal
edit <portal_name>
set mac-addr-check enable
config mac-addr-check-rule
edit <rule_name>
set mac-addr-list 00:09:0F:FE:00:01 5C:85:7E:39:BE:67
set mac-addr-mask <mask 1-48>
next
end
set mac-addr-action {allow | deny}
next
end4.6 Append thêm MAC vào danh sách hiện có
Để thêm một MAC vào danh sách đang tồn tại, dùng:
config vpn ssl web portal
edit <portal_name>
config mac-addr-check-rule
edit <rule_name>
append mac-addr-list <mac_addr>
next
end
next
endDanh sách MAC không hỗ trợ thêm theo group. Nhiều MAC cần được thêm trực tiếp vào list.
5. Verification & Troubleshooting
Có thể kiểm tra bằng log mức info hoặc debug. Trên GUI: vào Log & Report → System Events → VPN Events và tìm sự kiện tunnel-down.
6. Logs & Debug
6.1 Filter log (CLI)
Bộ lọc dưới đây hiển thị 100 dòng log liên quan đến SSL VPN bị fail (tunnel-down) từ disk:
execute log filter device 1
execute log filter category
execute log filter field tunneltype "ssl-web"
execute log filter field actin "tunnel-down"
execute log display6.2 Debug SSL VPN
diagnose debug console timestamp enable
diagnose debug application sslvpn -1
diagnose debug enable6.3 Dấu hiệu khi MAC check fail
Khi MAC không khớp, log/debug sẽ thể hiện lý do “host check MAC address failed” hoặc “MAC address check failed”.
7. Client warning
Ở phía client, người dùng sẽ thấy cảnh báo khi MAC check không đạt.
8. Lưu ý về FortiClient EMS
Nếu cần cấu hình danh sách user theo MAC sau khi đã kết nối SSL VPN, có thể không thấy MAC trên FortiGate do MAC được mã hoá. MAC có thể xem trên FortiClient EMS và dùng để thêm vào set mac-addr-list.
Nội dung được biên tập theo tài liệu Technical Tip Fortinet.
/file/media/uploads/article/ftg.jpg)
/file/media/uploads/article/cover.png)
/file/media/uploads/wan-fortigate.png)
/file/media/uploads/network-interface.jpg)
/file/media/uploads/firewall-policy.jpg)
/file/media/uploads/web-filter.jpg)
/file/media/uploads/app-control.png)
/file/media/uploads/antivirus.jpg)
/file/media/uploads/ssl-inspection.png)
/file/media/uploads/vpn-client-to-site.jpg)
/file/media/uploads/ipsec-vpn.jpg)
/file/media/uploads/ha.jpg)