Giao thức IPSec và hai chế độ AH và ESP của giao thức IPSec
Khái niệm: IPsec là một hệ thống các giao thức
để bảo mật cho quá trình truyền thông tin nền IP thuộc lớp mạng. Nó cho phép gửi
nhận các gói tin IP được mã hóa.
Mục đích chính của IPSec là bảo vệ luồng dữ liệu mong muốn dựa trên các
dịch vụ bảo mật có sẵn, hoạt động của IPSec có thể chia thành 5 bước chính như
sau:
- A gửi các traffic cần bảo vệ tới B
- Router A và B thỏa thuận các tham số IKE Phase 1
IKE
SA <=
IKE Phase 1 => IKE SA
- Router A và B thoả thuận các chính sách IKE Phase 2
IPSec SA <= IKE Phase 2
=> IPSec SA
- Thông tin được truyền dẫn qua tunnel IPSec
- Kết thúc tunnel IPSec
Bước 1: Traffic cần được bảo vệ khởi tạo quá
trình IPSec. Ở đây, các thiết đầu cuối IPSec sẽ nhận ra đâu là lưu lượng cần được
bảo vệ thông qua trường địa chỉ.
Bước 2: IKE Phase 1 – IKE xác thực các bên và
một tập các dịch vụ bảo mật được thoả thuận và công nhận để thiết lập IKE SA.
Trong phase này, sẽ thiết lập một kênh truyền thông an toàn để tiến hành thoả
thuận IPSec SA trong Phase 2.
Bước 3: IKE Phase 2 – IKE thoả thuận các tham
số IPSec SA và thiết lập các IPSec SA tương đương ở hai phía. Các tham số bảo
mật này được sử dụng để bảo vệ dữ liệu và các gói tin trao đổi giữa các điểm
đầu cuối. Kết quả cuối cùng của hai bước trên sẽ tạo ra một kênh thông tin bảo
mật giữa hai bên.
Bước 4: Truyền dữ liệu – Dữ liệu được truyền
giữa các bên IPSec dựa trên cơ sở các thông số bảo mật và các khoá được lưu trữ
trong cơ sở dữ liệu SA.
Bước 5: Kết thúc đường hầm IPSec – Do các
IPSec SA hết hạn hoặc bị xoá.
SA liên kết
an ninh(Security association). Mỗi SA được xem như một quan hệ một chiều giữa
hai đầu truyền nhận dữ liệu, nhằm mục đích xác định các thông số nào bảo mật áp
dụng cho luồng dữ liệu theo chiều đó. Như vậy, một kết nối hai chiều thường
thấy giữa hai hệ thống đầu cuối sẽ bao gồm 2 SA. Mỗi SA sử dụng 1 giao thức
đóng gói nhất định (AH hoặc ESP) chứ không thể sử dụng đồng thời cả hai.
Tùy theo mức
độ, IPsec có thể cung cấp tính bảo mật và xác thực cho quá trình trao đổi dữ liệu
trên 2 kiểu dv mã hóa: AH, ESP
·
AH
(Authentication header): Là giao thức
cung cấp sự toàn vẹn, chứng thực nguồn dữ liệu và một số tùy chọn khác. Nhưng
khác với ESP, nó không cung cấp chức năng bảo mật (data confidential). AH đảm bảo
dữ liệu không bị thay đổi trong quá trình truyền dẫn nhưng không mã hóa dữ liệu.
Trường AH chỉ định
cái sẽ theo sau AH header. Trong transport mode, nó sẽ là giá trị của giao thức
lớp trên đang được bảo vệ (chẳng hạn UDP hoặc TCP). Trong tunnel mode, giá trị
này là 4. Vị trí của AH trong transport và tunnel mode được mô tả ở hình sau:
Trong tunnel mode,
AH đóng gói gói tin IP và thêm vào một IP header trước AH header
·
ESP (Encapsulating
Security Payload): Là
giao thức cung cấp sự an toàn, toàn vẹn, chứng thực nguồn dữ liệu và những tùy
chọn khác, chẳng hạn anti-replay. ESP cung cấp gần như toàn bộ tính năng của
IPSec, ngoài ra nó còn cung cấp tính năng mã hóa dữ liệu. Do đó, ESP được sử
dụng phổ biến trong IPSec VPN. ESP bao gồm những tính năng sau:
·
Tính
bảo mật (Data confidentiality)
·
Tính
toàn vẹn dữ liệu (Data integrity)
·
Chứng
thực nguồn dữ liệu (Data origin authentication)
·
Tránh
trùng lặp (Anti-replay)
Những
tính năng trên cũng là những tính năng đặc trưng và chính yếu nhất của IPSec.
Lưu
ý: ESP sử dụng
IP protocol number 50.
Hoạt động của ESP
ESP chèn một header vào sau
phần IP header và trước header của giao thức lớp trên. Header này có thể là một
IP header mới trong tunnel mode hoặc IP header của gói tin ban đầu trong
transport mode. Hình sau cho thấy vị trí của ESP header trong transport mode và
tunnel mode: