Giao thức trong IPsec Framework – AH và ESP
Khi triển khai IPsec VPN, bạn sẽ thường nghe tới hai giao thức chính trong bộ khung (framework) IPsec:
1. Authentication Header (AH) – IP Protocol 51
AH là giao thức xác thực, không mã hóa dữ liệu. Nghĩa là nội dung gói tin vẫn truyền ở dạng plaintext (không bảo mật tính bí mật). Vì vậy, nếu dùng AH một mình thì mức bảo vệ khá yếu.
Các chức năng chính của AH:
Điểm khác biệt quan trọng: AH cung cấp toàn vẹn cho cả IP header bên ngoài.
⚠ Nhược điểm lớn: AH không tương thích với NAT trên đường truyền. Lý do là NAT thay đổi địa chỉ IP trong header → khiến giá trị kiểm tra toàn vẹn của AH không còn đúng → gói bị drop.
Khi nào dùng AH?
Thực tế, trong các triển khai IPsec hiện đại, AH gần như không còn được sử dụng vì ESP đã bao gồm xác thực và thêm cả mã hóa.
2. Encapsulating Security Payload (ESP) – IP Protocol 50
ESP là giao thức bảo mật mạnh hơn, cung cấp:
ESP mã hóa gói tin IP gốc (bao gồm payload và ESP trailer) bằng các thuật toán mã hóa đối xứng (AES, 3DES...). Sau đó:
⚠ Điểm cần lưu ý:
ESP không bảo vệ IP header mới được thêm vào bên ngoài khi ở tunnel mode. Điều này khác với AH, vốn bảo vệ cả header ngoài.
3. Chế độ hoạt động của ESP
ESP có thể hoạt động ở transport mode hoặc tunnel mode: ESP Transport Mode
4. AH trong Tunnel Mode và Transport Mode
AH cũng hỗ trợ cả hai mode này:
5. Thực tế triển khai
💡 Ví dụ thực tế:
Khi triển khai IPsec VPN, bạn sẽ thường nghe tới hai giao thức chính trong bộ khung (framework) IPsec:
1. Authentication Header (AH) – IP Protocol 51
AH là giao thức xác thực, không mã hóa dữ liệu. Nghĩa là nội dung gói tin vẫn truyền ở dạng plaintext (không bảo mật tính bí mật). Vì vậy, nếu dùng AH một mình thì mức bảo vệ khá yếu.
Các chức năng chính của AH:
- Xác thực nguồn gốc: Đảm bảo gói tin thực sự đến từ đúng thiết bị/peer đã được chứng thực.
- Đảm bảo toàn vẹn dữ liệu: Phát hiện nếu dữ liệu bị thay đổi trên đường truyền.
- Anti-replay protection: Ngăn kẻ tấn công ghi lại và gửi lại các gói tin cũ.
Điểm khác biệt quan trọng: AH cung cấp toàn vẹn cho cả IP header bên ngoài.
⚠ Nhược điểm lớn: AH không tương thích với NAT trên đường truyền. Lý do là NAT thay đổi địa chỉ IP trong header → khiến giá trị kiểm tra toàn vẹn của AH không còn đúng → gói bị drop.
Khi nào dùng AH?
Thực tế, trong các triển khai IPsec hiện đại, AH gần như không còn được sử dụng vì ESP đã bao gồm xác thực và thêm cả mã hóa.
2. Encapsulating Security Payload (ESP) – IP Protocol 50
ESP là giao thức bảo mật mạnh hơn, cung cấp:
- Xác thực nguồn gốc
- Đảm bảo toàn vẹn dữ liệu
- Anti-replay protection
- Bảo mật tính bí mật (Confidentiality) → mã hóa payload
ESP mã hóa gói tin IP gốc (bao gồm payload và ESP trailer) bằng các thuật toán mã hóa đối xứng (AES, 3DES...). Sau đó:
- Mã hóa trước → đảm bảo dữ liệu bị che giấu.
- Hash sau → để xác thực và kiểm tra toàn vẹn.
Điều này cho phép thiết bị nhận xác thực gói trước khi giải mã → phát hiện sớm gói giả mạo hoặc bị tấn công replay → giảm thiểu DoS.
⚠ Điểm cần lưu ý:
ESP không bảo vệ IP header mới được thêm vào bên ngoài khi ở tunnel mode. Điều này khác với AH, vốn bảo vệ cả header ngoài.
3. Chế độ hoạt động của ESP
ESP có thể hoạt động ở transport mode hoặc tunnel mode: ESP Transport Mode
- Không bảo vệ IP header gốc, chỉ bảo vệ payload (payload + ESP trailer).
- ESP header chèn giữa IP header gốc và payload.
- Phù hợp khi:
- Mã hóa giữa hai host IP trực tiếp.
- Site-to-site VPN nhưng đi kèm GRE (GRE cung cấp IP header mới).
- Bảo vệ toàn bộ gói tin gốc bao gồm IP header.
- Gói tin gốc + ESP trailer được mã hóa → thêm ESP header → đóng gói trong một IP header mới.
- IP header mới chứa địa chỉ IP của hai VPN peer (gateway).
- Địa chỉ IP gốc không bị lộ ra ngoài.
4. AH trong Tunnel Mode và Transport Mode
AH cũng hỗ trợ cả hai mode này:
- Tunnel mode: Tạo IP header mới bên ngoài gói tin được bảo vệ.
- Transport mode: Giữ nguyên IP header gốc.
5. Thực tế triển khai
- Ngày nay, ESP là lựa chọn mặc định cho hầu hết IPsec VPN.
- Có thể bật hoặc tắt tính năng mã hóa và xác thực trong ESP, nhưng ít nhất phải bật một trong hai.
- Trong VPN site-to-site qua Internet, thường dùng ESP tunnel mode.
- Trong môi trường nội bộ có GRE, có thể dùng ESP transport mode để giảm overhead.
💡 Ví dụ thực tế:
- VPN giữa hai chi nhánh qua Internet: Dùng ESP tunnel mode, mã hóa toàn bộ gói tin, che giấu cả địa chỉ IP private bên trong.
- Mã hóa quản trị thiết bị trong nội bộ (giữa hai router): Có thể dùng ESP transport mode nếu muốn tiết kiệm băng thông.