Gói tin đi qua ipsec vpn như thế nào
IPSec thực hiện mã hóa và xác thực ở lớp mạng. Nó cung cấp một giải pháp an toàn dữ liệu từ đầu cuối-đến-đầu cuối trong bản thân cấu trúc mạng(ví dụ khi thực hiện mạng riêng ảo VPN). Vì vậy vấn đề an toàn được thực hiện mà không cần thay đổi các ứng dụng cũng như các hệ thống cuối. Các gói mã hóa có khuôn dạng giống như gói tin IP thông thường, nên chúng dễ dàng được định tuyến qua mạng Internet mà không phải thay đổi các thiết bị mạng trung gian, qua đó cho phép giảm đáng kể các chi phí cho việc triển khai và quản trị. IPSec cung cấp bốn chức năng quan trọng sau:
IPSec là một nền(Frame work) kết hợp giao thức bảo mật và cung cấp mạng riêng ảo với các dữ liệu bảo mật, toàn vẹn và xác thực. Làm việc với sự tập hợp của các chuẩn mở được thiết lập để đảm bảo sự bảo mật dữ liệu, đảm bảo tính toàn vẹn dữ liệu, và chứng thực dữ liệu giữa các thiết bị tham gia vào mạng VPN. Các thiết bị này có thể là các host hoặc là các security gateway (routers, firewalls, VPN concentrator, ...) hoặc là giữa 1 host và gateway như trong trường hợp remote access VPNs.
Chế độ vận hành
Hình 1: IPSec chế độ Tunnel mode 2. Giao thức bảo mật IPSec trong mạng IPv6 IP Security (IPSec) là tiêu chuẩn của IETF (Internet Engineering Task Force) nhằm cung cấp bảo mật cho mạng Internet. IPSec đảm bảo tính toàn vẹn, xác thực và bảo mật. IPSec được tích hợp sẵn trong IPv4 và IPv6 và được định nghĩa trong cùng các RFC. Chức năng này chủ yếu có cả trong môi trường IPv4 và IPv6 nhưng tính năng IPSec là bắt buộc trong IPv6. Điều này có nghĩa mọi điểm kết nối IPv6 đều phải kích hoạt IPsec và phải luôn sử dụng tính năng này, do đó mạng Internet IPv6 được bảo mật tốt hơn mạng Internet IPv4 cũ. 2.1. Mào đầu gói tin IPv6 Header của IPv6 đơn giản và hợp lý hơn IPv4. IPv6 chỉ có 6 trường và 2 địa chỉ, trong khi IPv4 chứa 10 trường và 2 địa chỉ, IPv6 header có kích thước cố định. Trong khi IPv4 header có kích thước thay đổi. Với kích thước cố định thì một router có thể xử lý gói tin một cách hiệu quả. 2.1.1. Chiều dài phần mào đầu Mào đầu IPv4 có một trường chiều dài không cố định đó là Tùy chọn(Option). Trường này được sử dụng để thêm các thông tin về các dịch vụ tùy chọn khác nhau trong IPv4(Ví dụ như thông tin liên quan đến mã hóa). Do đó, chiều dài của mào đầu IPv4 thay đổi tùy theo tình trạng. Vì sự thay đổi đó, các bộ định tuyến điều khiển giao tiếp dựa trên những thông tin trong phần mào đầu không thể biết trước chiều dài của mào đầu. Điều này cản trở việc tăng tốc xử lý gói tin. Gói tin IPv6 có hai dạng mào đầu: mào đầu cơ bản và mào đầu mở rộng. Phần mào đầu cơ bản có chiều dài cố định 40 byte, chứa những thông tin cơ bản trong xử lý gói tin IPv6. Những thông tin liên quan đến dịch vụ mở rộng kèm theo được chuyển hẳn tới một phân đoạn khác gọi là mào đầu mở rộng. Cấu trúc gói tin IPv6: Hình 2: Cấu trúc gói tin IPv6 2.1.2. Định dạng các trường mào đầuCấu trúc mào đầu của IPv6 header gồm:
Hình3: Định dạng gói tin IPv6 2.1.3. Các trường mào đầu mở rộngMào đầu mở rộng (extension header) là đặc tính mới của thế hệ địa chỉ IPv6. Những thông tin liên quan đến dịch vụ kèm theo được chuyển hẳn tới một phân đoạn khác gọi là header mở rộng, mỗi header mở rộng được nhận dạng bởi trường Next Header. Các header mở rộng được đặt giữa IPv6 header và header của các giao thức lớp trên, được sử dụng để mang các thông tin tuỳ chọn ở lớp mạng (Network layer) trong gói tin. Một gói tin IPv6 có thể chứa một hay nhiều header mở rộng , được đặt sau mào đầu cơ bản. Các mào đầu mở rộng được đặt nối tiếp nhau theo thứ tự quy định, mỗi dạng có cấu trúc trường riêng. Thông thường, các mào đầu mở rộng được xử lý tại đích. Tuy nhiên cũng có dạng mào đầu mở rộng được xử lý tại mọi bộ định tuyến mà gói tin đó đi qua, đó là dạng mào đầu mở rộng Từng bước (Hop by Hop). Mỗi header mở rộng sẽ có giá trị đại diện cho nó. Ví dụ: TCP (6); UDP (7); Routing header (43); Fragment header (44); ESP (50); AH (51); ICMP (58)... [1]. Hình4: Các giá trị của trường Next Header Mào đầu cơ bản và mọi mào đầu mở rộng IPv6 đều có trường mào đầu tiếp theo (Next Header) chiều dài 8 bít. Trong mào đầu cơ bản, trường Next Header sẽ xác định gói tin có tồn tại mào đầu mở rộng hay không. Nếu không có mào đầu mở rộng giá trị của trường sẽ xác định phần mào đầu của tầng cao hơn (TCP hay UDP…) phía trên của tầng IP. Nếu có, giá trị trường Next Header chỉ ra loại mào đầu mở rộng đầu tiên theo sau mào đầu cơ bản. Tiếp theo, trường Next Header của mào đầu mở rộng thứ nhất sẽ trỏ tới mào đầu mở rộng thứ hai, đứng kế tiếp nó. Trường Next Header của mào đầu mở rộng cuối cùng sẽ có giá trị xác định mào đầu tầng cao hơn. Hình 5: Mào đầu mở rộng của địa chỉ IPv6 Khi gói đi từ nguồn đến đích, các trạm trung gian không được phép xử lý các Extension Header đến khi đến trạm đích. Và việc xử lý các Header này cũng phải diễn ra theo đúng tuần tự mà các Header sắp xếp trong gói tin IPv6. Không bao giờ được phép xảy ra trường hợp trạm đích quét qua toàn bộ gói tin và chọn ra một Header nào đó để xử lý trước. Trường hợp ngoại lệ là trường hợp Hop-by-hop Extension Header, sự hiện diện của Hop-by-hop Extension Header buộc gói tin phải bị kiểm tra bởi tất cả các trạm trung gian trên đường từ nguồn đến đích, bao gồm cả trạm nguồn và đích. Vì vậy, Hop-by-hop Extension Header luôn phải đứng sau IPv6 Header. Sự hiện diện của Extension Header này được chỉ thị bởi giá trị 0 trong Next-Header của IPv6 Header. Kích thước của các Extension Header có thể tùy ý, nhưng luôn là bội số của 8 octet. Nếu trong gói tin có chứa nhiều Extension Header, chúng được sắp xếp theo thứ tự sau :
Hình 6: Định dạng của Extension Header 2.2 Tích hợp bảo mật IPsec trong địa chỉ IPv6 Cấu trúc địa chỉ IPv6 sử dụng IPSec để đảm bảo tính toàn vẹn, bảo mật và xác thực nguồn gốc dữ liệu sử dụng hai mào đầu mở rộng tùy chọn: mào đầu Xác thực- (AH -Authentication Header) và mào đầu Mã hóa (ESP - Encrypted Security Payload) . Hai Header này có thể được sử dụng chung hay riêng để hỗ trợ nhiều chức năng bảo mật. Các chế độ làm việc chính của giao thức IPSec, bao gồm:
Hình 7: IPSec trong chế độ Transport
Hình 8: IPSec trong chế độ Tunnel 2.3 Nguyên tắc hoạt động của các giao thức bảo mật trong địa chỉ IPv6 2.3.1 Nguyên tắc hoạt động của AH AH được mô tả trong RFC 4302, là một IPSec header cung cấp xác thực gói tin và kiểm tra tính toàn vẹn. AH cho phép xác thực và kiểm tra tính toàn vẹn dữ liệu của các gói tin IP truyền giữa 2 hệ thống. Nó là phương tiện để kiểm tra xem dữ liệu có bị thay đổi trong khi truyền hay không. Tuy nhiên các dữ liệu đều truyền dưới dạng bản Plaintext vì AH không cung cấp khả năng mã hóa dữ liệu. Hình 9: Định dạng mào đầu IPsec AH Định dạng của AH
Chế độ xác thực:
Hình 10: Hai chế độ xác thực của AH Gói tin IPv6 AH ở chế độ Transport: Hình 11 :Mào đầu được xác thực trong chế độ IPv6 AH Transport( Phần màu nâu đậm là phần dữ liệu được xác thực) Gói tin IPv6 AH ở chế độ Tunnel: Hình 12: Mào đầu được xác thực trong chế độ IPv6 AH Tunnel( Phần màu nâu đậm là phần dữ liệu được xác thực).
B1: AH sẽ đem gói dữ liệu (packet ) bao gồm : Payload + IP Header + Key cho chạy qua giải thuật Hash 1 chiều và cho ra 1 chuỗi số. và chuỗi số này sẽ được gán vào AH Header. B2: AH Header này sẽ được chèn vào giữa Payload và IP Header và chuyển sang phía bên kia. B3: Router đích sau khi nhận được gói tin này bao gồm : IP Header + AH Header + Payload sẽ được cho qua giải thuật Hash một lần nữa để cho ra một chuỗi số. B4: so sánh chuỗi số nó vừa tạo ra và chuỗi số của nó nếu giống nhau thì nó chấp nhận gói tin . Hình 13: Mô tả AH xác thực và đảm bảo tính toàn vẹn dữ liệu 2.3.2 Nguyên tắc hoạt động của ESP ESP Header được mô tả trong RFC 4303, cung cấp mã hóa bảo mật và toàn vẹn dữ liệu trên mỗi điểm kết nối IPv6. ESP là một giao thức an toàn cho phép mật mã dữ liệu, xác thực nguồn gốc dữ liệu, kiểm tra tính toàn vẹn của dữ liệu. Khác với AH, ESP cung cấp khả năng bí mật của thông tin thông qua việc mã hóa gói tin ở lớp IP, tất cả các lưu lượng ESP đều được mã hóa giữa 2 hệ thống, do đó xu hướng sử dụng ESP nhiều hơn AH trong tương lai để làm tăng tính an toàn cho dữ liệu. Sau khi đóng gói xong bằng ESP, mọi thông tin và mã hoá và giải mã sẽ nằm trong ESP Header. Các thuật toán mã hoá sử dụng trong giao thức như : DES, 3DES, AES. Định dạng của ESP Header như sau:
Hình 14: Định dạng mào đầu IPsec ESP
Hình 15: Mào đầu được mã hóa trong chế độ IPv6 ESP Transport( Phần màu nâu đậm là phần dữ liệu được mã hóa).
Hình 16: Mào đầu được mã hóa trong chế độ IPv6 ESP Tunnel( Phần màu nâu sậm là phần dữ liệu được mã hóa).
Về nguyên tắc hoạt động thì ESP sử dụng mật mã đối xứng để cung cấp sự mật hoá dữ liệu cho các gói tin IPSec. Cho nên, để kết nối của cả hai đầu cuối đều được bảo vệ bởi mã hoá ESP thì hai bên phải sử dụng key giống nhau mới mã hoá và giải mã được gói tin . Khi một đầu cuối mã hoá dữ liệu, nó sẽ chia dữ liệu thành các khối (block) nhỏ, và sau đó thực hiện thao tác mã hoá nhiều lần sử dụng các block dữ liệu và khóa (key). Khi một đầu cuối khác nhận được dữ liệu mã hoá, nó thực hiện giải mã sử dụng key giống nhau và quá trình thực hiện tương tự, nhưng trong bước này ngược với thao tác mã hoá. Hình 17: Nguyên tắc hoạt động của ESP Header.
Tính bảo mật AH ESP Giao thức IP lớp 3 51 50 Toàn vẹn dữ liệu Có Có Xác thực dữ liệu Có Có Mã hóa dữ liệu Không Có Chống tấn công phát lại Có Có Hoạt động với NAT Không Có Hoạt động với PAT Không Không Bảo vệ gói tin IP Có Không Chỉ bảo vệ dữ liệu Không Có 2.3.4 Quản lý khóaĐể áp dụng hai mào đầu AH và ESP yêu cầu các bên tham gia phải thỏa thuận một khóa chung để sử dụng trong việc kiểm tra an toàn thông tin.
3. Kết luận IPv6Sec là một trong những tính năng ưu việt nổi bật của IPv6. Nó giúp phần làm tăng cường tính an toàn an ninh thông tin khi trao đổi, giao dịch trên mạng Internet. IPv6sec cũng được lựa chọn là giao thức bảo mật sử dụng trong mạng riêng ảo và thích hợp trong việc đảm bảo kết nối bảo mật từ đầu cuối tới đầu cuối. |