Để có thể đảm bảo gửi và nhận dữ liệu một cách an toàn thông qua mạng công cộng, VPN cung cấp các cơ chế mã hóa dữ liệu trên đường truyền, tạo ra một đường hầm bảo mật giữa nơi nhận và n
Trang 1MỤC LỤC LỜI CẢM ƠN
MỞ ĐẦU
DANH SÁCH HÌNH VẼ VÀ BẢNG
CHƯƠNG I: TỔNG QUAN VỀ IPSEC 1
1.1 Giới thiệu về VPN 1
1.1.1 Mạng riêng ảo VPN là gì? 1
1.1.2 Các loại VPN 2
1.1.3 Các lợi ích của mạng riêng ảo 8
1.1.4 Những yêu cầu đối với mạng riêng ảo 9
1.2 IPSec 9
1.2.1 Khái niệm IPSec 9
1.2.2 Lợi ích khi sử dụng IPSec 10
CHƯƠNG II: HOẠT ĐỘNG CỦA IPSEC 11
2.1 Cấu trúc gói tin IP 11
2.1.1 Version (phiên bản) 11
2.1.2 IP Header Length - HLEN (độ dài header) 11
2.1.3 Type Of Services - TOS (loại dịch vụ) 12
2.1.4 Total Length (chiều dài tổng) 13
2.1.5 Identification 13
2.1.7 Fragment Offset (13bit) 15
2.1.8 Time To Live (TTL) 15
2.1.9 Protocol (8bit) 15
2.1.10 Header CheckSum 15
2.1.11 Source Address 16
2.1.12 Destination Address 16
2.1.13 IP Option 16
2.1.14 Padding 18
2.1.15 Data 18
2.2 Các thành phần của IPSec 19
2.2.1 Tiêu đề xác thực 19
2.2.2 Đóng gói bảo mật dữ liệu ESP (Encapsulating security Pyload) 21
2.3 Phương pháp xác thực 24
2.3.1 Pre-shared Key Authentication (Xác thực khóa công khai) 24
2.3.2 Digital Signature Authentication (Xác thực chữ ký điện tử) 25
Trang 22.3.3 Certificate 26
2.3.4 Kerberos 27
CHƯƠNG III: CÁC KIẾN TRÚC MẠNG VPN SỬ DỤNG IPSEC 29
3.1 Mô hình kết nối IPSec 29
3.1.1 Mô hình IPSec 29
3.1.2 Mô hình GRE 29
3.1.3 Mô hình khách hàng truy nhập từ xa 30
3.1.4 Tóm tắt mô hình kết nối IPSec 31
3.2 Cấu trúc Hub-and-Spoke 32
3.2.1 Sử dụng mô hình IPSec 33
3.2.2 Sử dụng IPSec chuyển tiếp kết nối Spoke – to – spoke 33
3.2.3 Kết nối internet 36
3.2.4 Khả năng mở rộng Sử dụng các kết nối mô hình IPSec 37
3.2.5 GRE mẫu 38
3.2.6 Kết nối chuyển tiếp Site-to- Site 40
3.2.7 Chuyển tiếp kết nối Site-to- Site với truy cập internet 41
3.2.8 Khả năng mở rộng mô hình của GRE Hub- and- Spoke 42
3.2.9 Mô hình truy cập từ xa kết nối khách hàng 43
3.2.10 Easy VPN (EzVPN) chế độ khách hàng 43
3.2.11 Chế độ mạng EzVPN mở rộng 46
3.2.12 Khả năng mở rộng của các mô hình kết nối khách hàng 48
3.3 Cấu trúc full-mesh 49
3.3.1 Các mẫu IPSec 49
3.3.2 Mô hình GRE 53 TÀI LIỆU THAM KHẢO
Trang 3LỜI CẢM ƠN Trước tiên nhóm em xin gửi lời cảm ơn chân thành sâu sắc tới các thầy cô giáo trong trường Đại học Giao Thông Vận Tải Hà Nội nói chung và các thầy cô giáo trong khoa Điện – Điện tử, bộ môn Kỹ thuật viễn thông nói riêng đã tận tình giảng dạy, truyền đạt cho chúng em những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua
Đặc biệt nhóm em xin gửi lời cảm ơn đến cô Trần Thị Lan, cô đã tận tình giúp
đỡ, trực tiếp chỉ bảo, hướng dẫn nhóm trong suốt quá trình làm đề tài Trong thời gian làm việc với cô, nhóm em không ngừng tiếp thu thêm nhiều kiến thức bổ ích
mà còn học tập được tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả, đây là những điều rất cần thiết cho nhóm trong quá trình học tập và công tác sau này
Dù đã nỗ lực rất nhiều để hoàn thành đề tài nhưng do kiến thức còn hạn chế nên
đề tài của nhóm em không tránh khỏi những thiếu sót Em rất mong nhận được sự đóng góp ý kiến của các thầy cô để đề tài của nhóm em được hoàn thiện hơn
Chúng em xin chân thành cảm ơn!
Trang 4xa ở bất cứ nơi đâu, thậm chí trên toàn thế giới mà không cần sử dụng dịch vụ đắt tiền trên
Song có một vấn đề quan trọng là mạng nội bộ chứa các tài nguyên, dữ liệu quan trọng mà chỉ cho phép các người dùng có quyền hạn, được cấp phép mới được truy cập vào mạng nội bộ trong khi mạng Internet là mạng công cộng và không bảo mật Do đó, Internet là mối nguy hiểm rất lớn cho hệ thống mạng, cơ sở dữ liệu quan trọng Từ đó, người ta đã đưa ra mô hình mới nhằm thỏa mãn những yêu cầu trên mà vẫn tận dụng được cơ sở hạ tầng mạng vốn có đó chính là Mạng riêng ảo (VPN-Vitual Private Network), IPSec/VPN cung cấp giải pháp thông tin dữ liệu riêng tư, an toàn thông qua môi trường mạng Internet công cộng với chi phí thấp, hiệu quả mà vẫn bảo mật
Chính vì vậy nhóm em lựa chọn đề tài “Nghiên cứu giao thức IPSec và ứng dụng” làm nghiên cứu khoa học để hiểu biết thêm kiến thức, rèn luyện kỹ năng và tiếp cận những cái mới
3 Đối tượng nghiên cứu
- Tìm hiểu về VPN
- Cơ chế bảo mật trong VPN
- Cách thức hoạt động của IPSec
- Các thuật toán mã hóa
- Các phương pháp xác thực
4 Mục đích nghiên cứu
- Tìm hiểu về mạng VPN và cơ chế bảo mật của nó
- Tìm hiểu rõ về kiến trúc của IPSec/VPN và cách thức hoạt động của IPSec/VPN trong bảo mật thông tin
Trang 5- Các cơ chế mã hóa dữ liệu trong IPSec
5 Nhiệm vụ nghiên cứu
- Tìm hiểu cách thức bảo mật của IPSec/VPN
- Tìm hiểu các công cụ để phát triển
6 Phương pháp nghiên cứu
- Tìm hiểu thông qua mạng Internet và qua các diễn đàn
- Tìm hiểu các tài liệu liên quan
7 Ý nghĩa lý luận và thực tiễn của đề tài
- Giúp chúng em tìm hiểu các vấn đề về bảo mật và truyền tin an toàn qua mạng Internet
- Giúp nhóm em hiểu rõ hơn cách thức bảo mật, đảm bảo toàn vẹn dữ liệu khi được truyền qua mạng
- Ứng dụng vào thực tiễn giúp bảo mật hệ thống mạng cho cá nhân hoặc một doanh nghiệp nào đó
8 Kết cấu của đề tài
- Chương 1: Tổng quan về IPSec
- Chương 2: Hoạt động của IPSec
- Chương 3: Các kiến trúc mạng VPN sử dụng IPSec
Trang 6DANH SÁCH CÁC HÌNH VẼ VÀ BẢNG
Hình 1.1: Mô hình kết nối VPN 1
Hình 1.2: VPN = Đường hầm (Tunnel) + Mã hóa 2
Hình 1.3: Remote Access VPN 3
Hình 1.4: Mô hình Intranet VPN 4
Hình 1.5: Thiết lập Intranet sử dụng WAN 4
Hình 1.6: Mạng Extranet dựa trên VPN 6
Hình 2.1: Mô hình gói tin IP 11
Hình 2.2: các thành phần của IP Header 11
Bảng 2.1: Giá trị khuyến nghị của trường TOS 13
Hình 2.3: Cấu trúc trường AH 19
Hình 2.4: Quá trình tạo gói tin AH 21
Hình 2.5: Cấu trúc gói tin ESP 22
Hình 2.6: Quá trình hoạt động của ESP 23
Hình 2.7: IKE Phase 1 xác thực bằng chữ ký điện tử 25
Hình 2.8: CA Server 27
Hình 2.9: Mã hóa bằng khóa do CA cấp 27
Hình 3.1: Mô hình tham chiếu mạng VPN 32
Hình 3.2: Cấu trúc Hub – and – spoke Isec VPN 32
Hình 3.3: Chuyển tiếp IPSec bảo vệ cho cấu trúc liên kết Hub-and-Spoke 34
Bảng 3.1: IPSec ma trận ủy nhiệm cho cấu trúc liên kết chuyển tiêp Hub-and-Spoke……….36
Bảng 3.2: Bản đồ cấu hình bảo mật cho lưu lượng chuyển tiếp trung tâm 36
Bảng 3.3: Bản đồ bảo mật bảo vệ cho Hub-and-Spoke 37
Hình 3.4: Cấu trúc liên kết GRE Hub-and-Spoke VPN 39
Hình 3.5: Tùy chọn giao thức định tuyến ràng buộc 40
Hình 3.6: EzVPN Phương thức kết nối khách hàng 46
Hình 3.7: Hub-and-Spoke VPN với chế độ mở rộng mạng 48
Hình 3.8: Đường hầm IPSec cho một cấu trúc liên kết Full-Mesh 50
Hình 3.9: Dãy địa chỉ không liền kề trên cấu hình liên kết Full-Mesh 51
Hình 3.10: Mô hình Full-Mesh IPSec VPN với trung tâm mặc định Internet 52
Hình 3.11: Full-Mesh GRE với các tuyến đường tĩnh 55
Hình 3.12: Full-Mesh GRE với định tuyến động 55
Trang 7CHƯƠNG I: TỔNG QUAN VỀ IPSEC Mạng riêng ảo hay còn được biết đến với từ viết tắt VPN, đây không phải là một khái niệm mới trong công nghệ mạng VPN sử dụng các kết nối ảo được dẫn qua mạng Internet công cộng Để có thể đảm bảo gửi và nhận dữ liệu một cách an toàn thông qua mạng công cộng, VPN cung cấp các cơ chế mã hóa dữ liệu trên đường truyền, tạo ra một đường hầm bảo mật giữa nơi nhận và nơi gửi Một trong những công nghệ phổ biến nhất để tạo đường hầm bảo mật trong VPN là IPSec Trong chương này, chúng ta sẽ tìm hiểu tổng quan nhất các khái niệm về VPN
và IPSec, cũng như các lợi ích mà chúng đem lại
1.1 Giới thiệu về VPN
1.1.1 Mạng riêng ảo VPN là gì?
VPN (Virtual Private Network) được hiểu đơn giản là sự phát triển của một mạng riêng (Private Network) thông qua các mạng công cộng
VPN có thể được định nghĩa như là một dịch vụ mạng ảo được triển khai trên
cơ sở hạ tầng của hệ thống mạng công cộng (thường là Internet) với mục đích tiết kiệm chi phí cho các kết nối site – site
Hình 1.1: Mô hình kết nối VPN
Thay cho việc sử dụng các kết nối thực, chuyên dùng như đường leased-line, mỗi VPN sử dụng các kết nối ảo được dẫn qua đường Internet từ mạng riêng của các công ty tới các site, các nhân viên từ xa Để có thể đảm bảo gửi và nhận dữ liệu thông qua mạng công cộng một cách an toàn, VPN cung cấp các cơ chế mã hóa dữ liệu trên đường truyền, tạo ra 1 đường hầm bảo mật giữa nơi nhận và nơi gửi, goi là Tunnel Để có thể tạo ra một đường ống bảo mật đó, dữ liệu phải được mã hóa theo
cơ chế giấu đi, chỉ cung cấp phần đầu gói tin (header) là thông tin về đường đi, cho
Trang 8phép nó có thể tới đích thông qua mạng công cộng một cách nhanh chóng, dữ liệu được mã hóa một cách cẩn thận, do đó các gói tin (packet) bị bắt trên đường truyền công cộng cũng không thể đọc nội dung vì không có khóa để giải mã
VPN có thể xuất hiện tại bất cứ lớp nào trong mô hình mạng OSI (Open Systems Interconnection: mô hình tham chiếu kết nối các hệ thống mở), VPN là sự cải tiến cơ sở hạ tầng mạng WAN (Wide Area Network: mạng diện rộng), làm thay đổi và tăng thêm tính chất của mạng cục bộ cho mạng WAN
Hình 1.2: VPN = Đường hầm (Tunnel) + Mã hóa 1.1.2 Các loại VPN
a) Phân loại theo yêu cầu sử dụng:
Mục tiêu đặt ra đối với công nghệ mạng VPN là thỏa mãn 3 yêu cầu cơ bản sau:
- Tại mọi thời điểm, các nhân viên của công ty có thể truy nhập từ xa hoặc di động vào mạng nội bộ của công ty
- Nối liền các chi nhánh, văn phòng di động của công ty
- Khả năng điều khiển được quyền truy nhập của khách hàng, các nhà cung cấp dịch vụ hoặc các đối tượng bên ngoài khác
Dựa vào những yêu cầu cơ bản trên, mạng riêng ảo VPN được phân làm 3 loại:
- Mạng VPN truy nhập từ xa (Remote Access VPN)
- Mạng VPN cục bộ (Intranet VPN)
- Mạng VPN mở rộng (Extranet VPN)
Mạng VPN truy nhập từ xa (Remote Access VPN)
Mạng VPN truy nhập từ xa cung cấp khả năng truy nhập từ xa Kiểu VPN truy nhập từ xa là kiểu VPN điển hình nhất Vì những VPN này có thể thiết lập tại bất kì thời điểm nảo, tại bất cứ nơi nào có Internet VPN truy nhập từ xa dùng để cung cấp
Trang 9truy nhập an toàn từ những thiết bị di động, những chi nhánh và những chúng ta hàng của công ty Những kiểu VPN này thường được thực hiện thông qua cơ sở hạ tầng công cộng bằng cách sử dụng công nghệ ISDN, Dial-up, IP di động, DSL và công nghệ cáp và thường yêu cầu có phần mềm client chạy trên máy tính của người
Kiểu VPN này thường được cấu hình như là một VPN site-to-site
Trang 10Hình 1.4: Mô hình Intranet VPN
Intranet VPN thường được dùng để kết nối các nhánh văn phòng từ xa của một
tổ chức với Intranet trung tâm của tổ chức đó Trong cách thiết lập Intranet không
sử dụng công nghệ VPN, mỗi một mạng từ xa phải kết nối tới Intranet của tổ chức qua các Router trung gian Thiết lập này được mô tả như trong hình 1.5
Hình 1.5: Thiết lập Intranet sử dụng WAN
Thiết lập này mất chi phí rất cao vì cần ít nhất 2 Router để kết nối tới một khu trung tâm từ xa để tới Intranet của tổ chức Hơn nữa việc thực thi, duy trì và quản trị Intranet xương sống có thể là một việc cực kỳ tốn kém
Với việc thực thi giải pháp VPN, đường WAN xương sống được thay thế bằng kết nối Internet chi phí thấp nên có thể giảm được tổng chi phí của việc thực thi toàn bộ Intranet
Ưu điểm của việc thiết lập dựa trên VPN là:
- Loại trừ được các Router từ đường WAN xương sống
Trang 11- Vì Internet hoạt động như một phương tiện kết nối, nó dễ dàng cung cấp các liên kết ngang hàng mới
- Vì kết nối tới các ISP cục bộ, khả nằng truy cập nhanh hơn, tốt hơn Cùng với việc loại trừ các dịch vụ đường dài giúp cho tổ chức giảm được chi phí của hoạt động Intranet
Tuy nhiên cũng có một số nhược điểm:
- Vì dữ liệu được định đường hầm qua một mạng chia sẻ công cộng nên các tấn công mạng như từ chối dịch vụ vẫn đe dọa nghiêm trọng đến an ninh mạng
- Khả năng mất các gói dữ liệu khi truyền vẫn còn cao
- Đường truyền dữ liệu đầu trên như multimedia, độ trễ truyền tin vẫn rất cao và thông lượng có thể bị giảm xuống rất thấp dưới sự hiện diện của Internet
- Vì sự hiện diện của kết nối Internet, sự thực thi có thể bị gián đoạn và QoS có thể không được đảm bảo
Mạng VPN mở rộng (Extranet VPN)
Liên kết các khách hàng, các nhà cung cấp, hay cộng đồng người sử dụng vào mạng Intranet của một tổ chức trên nền hạ tầng mạng công cộng sử dụng các đường truyền thuê bao Giải pháp này cũng cung cấp các chính sách như trong mạng riêng của một tổ chức như đảm bảo tính bảo mật, tính ổn định
Tương tự như Intranet VPN, Extranet VPN cũng có kiến trúc tương tự, tuy nhiên điểm khác biệt giữa chúng là phạm vi các ứng dụng cho phép các đối tác Extranet VPN sử dụng So với Intranet VPN thì điều quan trọng của Extranet VPN
là khả năng cộng tác với các đối tác, khách hàng hay các nhà cung cấp sản phẩm Việc để cho khách hàng nhập trực tiếp dữ liệu về các hợp đồng vào hệ thống sẽ tiết kiệm được rất nhiều thời gian cũng như các lỗi không đáng có, tuy nhiên việc này rất khó thực hiện với công nghệ WAN truyền thống Extranet VPN thường sử dụng các kết nối dành riêng và thêm vào các lớp bảo mật để xác thực và giới hạn truy nhập trên hệ thống
Thực tế, Extranet VPN cho phép kiểm soát truy cập các tài nguyên mạng cần thiết với toàn bộ giao dịch thương mại mở rộng như: đối tác, khách hàng và nhà cung cấp
Theo cách truyền thống, chi phí cực đắt vì mỗi mạng riêng trong trong Intranet phải hoàn toàn thích hợp với mạng mở rộng Đặc điểm này dẫn đến sự phức tạp trong việc quản trị và thực thi của các mạng khác nhau Hơn nữa rất khó mở rộng vì làm như vậy có thể phải thay đổi toàn bộ mạng Intranet và có thể ảnh hưởng đến
Trang 12các mạng mở rộng đã kết nối khác và đây có thể là một cơn ác mộng đối với các nhà thực thi và quản trị mạng
Thực thi giải pháp VPN làm cho công việc thiết lập một Extranet trở nên dễ dàng và giảm chi phí đáng kể
Hình 1.6: Mạng Extranet dựa trên VPN
Ưu điểm chính của Extranet VPN là:
- Chi phí rất nhỏ so với cách thức truyền thống
- Dễ thực thi, duy trì và dễ thay đổi
- Dưới sự hiện diện của Internet, ta có thể chọn các đại lý lớn
- Vì một phần kết nối Internet được duy trì bởi ISP nên số lượng nhân viên hỗ trợ
có thể được giảm xuống
Nhược điểm của Extranet VPN là:
- Các nguy cơ an ninh như tấn công DOS vẫn còn tồn tại
- Tăng rủi ro vì các xâm nhập vào Intranet của tổ chức
- Độ trễ truyền thông vẫn lớn và thông lượng bị giảm xuống rất thấp với các ứng dụng Multimedia
- Sự thực thi có thể bị gián đoạn và QoS cũng có thể không được bảo đảm
b) Phân loại theo kỹ thuật
Hiểu một cách đơn giản, kết nối VPN giữa hai điểm trên mạng công cộng là hình thức thiết lập một kết nối logic Kết nối logic có thể được thiết lập trên lớp 2 hoặc lớp 3 của mô hình OSI và công nghệ VPN
Có thể phân loạitheo tiêu chuẩn này gồm:
- VPN lớp 2 (Layer 2 VPNs): ATM, Frame Relay
Trang 13- VPN lớp 3 (Layer 3 VPNs): GRE, L2TP, MPLS, IPSec
Layer 2 VPNs:
Công nghệ VPN lớp 2 được thực thi tại lớp 2 của mô hình tham chiếu OSI: Các kết nối point-to-point được thiết lập giữa các site dựa trên một mạch ảo (virtual circuit) Một mạch ảo là một kết nối logic giữa 2 điểm trên một mạng và có thể mở rộng thành nhiều điểm Một mạch ảo kết nối giữa 2 điểm đầu cuối (end-to-end) thường được gọi là một mạch vĩnh cửu (Permanent Virtual Circuit-PVC) Một mạch
ảo kết nối động 2 điểm trên mạng (point-to-point) còn được biết đến như mạng chuyển mạch (Switched Virtual Circuit – SVC) SVC ít được sử dụng hơn vì độ phức tạp trong quá trình triển khai cũng như khắc phục hệ thống lỗi ATM và Frame Relay là hai công nghệ VPN lớp 2 phổ biến
Các nhà cung cấp hệ thống mạng ATM và Frame Relay có thể cung cấp các kết nối Site-to-Site cho các tập đoàn, công ty bằng cách cấu hình các mạch ảo vĩnh cửu (PVC) thông qua hệ thống cáp Backbone được chia sẻ
Một sự tiện lợi của VPN lớp 2 là độc lập với các luồng dữ liệu lớp 3 Các mạng ATM và Frame Relay kết nối giữa các site có thể sử dụng rất nhiều các loại giao thức được định tuyến khác nhau như IP, IPX, AppleTalk, IP Multicast… ATM và Frame Relay còn cung cấp đặc điểm QoS (Quality of Service) Đây là điều kiện tiên quyết khi vận chuyển các luồng dữ liệu cho Voice
Layer 3 VPNs:
Một kết nối giữa các site có thể được định nghĩa như là VPN lớp 3 Các loại VPN lớp 3 như GRE, MPLS và IPSec Công nghệ GRE và IPSec được sử dụng để thực hiện kết nối điểm – điểm (point –to-point), công nghệ MPLS thực hiện kết nối
đa điểm (any-to-any)
GRE VPNs
Generic Routing Encapsulation (GRE) được khởi xướng và phát triển bởi Cisco
và sau đó được IETF xác nhận thành chuẩn RFC 1702 GRE được dùng để khởi tạo các đường hầm và có thể vận chuyển nhiều loại giao thức như IP, IPX, Apple Talk
và bất kỳ các gói dữ liệu giao thức khác vào bên trong đường hầm IP GRE không
có chức năng bảo mật cấp cao nhưng có thể được bảo vệ bằng cách sử dụng cơ chế IPSec
Trang 14Thông qua mạng VPN được thiết lập sử dụng GRE Tunnel Tất cả các dữ liệu giữa các chi nhánh của một tập đoàn ở các vị trí địa lý khác nhau sẽ trao đổi với nhau trong một đường hầm GRE
MPLS VPNs
Công nghệ MPLS VPN xây dựng các kết nối chuyển mạch nhãn (Label Switched Path) thông qua các bộ định tuyến chuyển mạnh nhãn (Label Switch Routers) Các gói tin được chuyển đi dựa vào nhãn của mỗi gói tin
Trong một mạng MPLS, các gói tin được chuyển mạch dựa trên nhãn của mỗi gói tin
Nguồn gốc của tất cả các công nghệ VPN là dữ liệu riêng được đóng gói và phân phối đến đích với việc gắn cho các gói tin thêm phần Header, MPLS VPN sử dụng các nhãn (Label) để đóng gói dữ liệu gốc và thực hiện truyền gói tin đến đích IPSec VPNs
Một nội dung chính mà bất kỳ ai sử dụng VPN đều muốn là bảo mật dữ liệu khi chúng được truyền trên hệ thống mạng công cộng Một câu hỏi được đặt ra là làm thế nào để ngăn chặn mối nguy hiểm từ việc lấy trộm dữ liệu khi chúng được truyền
đi trên mạng công cộng?
Mã hoá dữ liệu là một cách để bảo vệ nó Mã hoá dữ liệu có thể được thực hiện bằng cách triển khai các thiết bị mã hoá/giải mã tại mỗi site
IPSec là một tập giao thức được phát triển bởi IETF để thực thi dịch vụ bảo mật trên các mạng IP chuyển mạch gói Internet là mạng chuyển mạch gói công cộng lớn nhất Công nghệ IPSec VPN được triển khai có một ý nghĩa quan trọng là tiết kiệm chi phí rất lớn so với mạng VPN sử dụng Leased-Line VPN
Dịch vụ IPSec cho phép chứng thực, kiểm tra tính toàn vẹn dữ liệu, điều khiển truy cập và đảm bảo bí mật dữ liệu Với IPSec, thông tin được trao đổi giữa các site
sẽ được mã hoá và kiểm tra IPSec có thể được triển khai cả trên hai loại VPN là Remote Access Client và Site-to-Site VPN (gồm Intranet VPN và Extranet VPN)
1.1.3 Các lợi ích của mạng riêng ảo
Mạng riêng ảo gồm những lợi ích sau:
- VPN làm giảm chi phí thường xuyên:VPN cho phép tiết kiệm chi phí thuê đường truyền và giảm chi phí phát sinh cho nhân viên ở xa nhờ vào việc họ truy cập vào hệ thống mạng nội bộ thông qua các điểm cung cấp dịch vụ ở địa
Trang 15phương POP (Point of Presence), hạn chế thuê đường truy cập của nhà cung cấp dẫn đến giá thành cho việc kết nối Lan-to-Lan giảm đi đáng kể so với việc thuê đường Leased-Line
- Giảm chi phí quản lý và hỗ trợ: Với việc sử dụng dịch vụ của nhà cung cấp, chúng ta chỉ phải quản lý các kết nối đầu cuối tại các chi nhánh mạng không phải quản lý các thiết bị chuyển mạch trên mạng Đồng thời tận dụng cơ sở hạ tầng của mạng Internet và đội ngũ kỹ thuật của nhà cung cấp dịch vụ từ đó công
ty có thể tập trung vào các đối tượng kinh doanh
- VPN đảm bảo an toàn thông tin, tính toàn vẹn và xác thực: Dữ liệu truyền trên mạng được mã hoá bằng các thuật toán, đồng thời được truyền trong các đường hầm (Tunnle) nên thông tin có độ an toàn cao
- VPN dễ dàng kết nối các chi nhánh thành một mạng cục bộ: Với xu thế toàn cầu hoá, một công ty có thể có nhiều chi nhánh tại nhiều quốc gia khác nhau Việc tập trung quản lý thông tin tại tất cả các chi nhánh là cần thiết VPN có thể dễ dàng kết nối hệ thống mạng giữa các chi nhánh và văn phòng trung tâm thành một mạng LAN với chi phí thấp
1.1.4 Những yêu cầu đối với mạng riêng ảo
VPN như là phiên bản sửa đổi của mạng riêng, cho phép chúng ta dễ dàng thiết lập mạng LAN hoặc Intranet cùng với Internet và các mạng công cộng khác để truyền thông một cách bảo mật và kinh tế Như vậy, hầu hết các yêu cầu của VPN
và các mạng riêng truyền thống là giống nhau Tuy nhiên, trong VPN có các yêu cầu nổi bật sau:
1.2.1 Khái niệm IPSec
IPSec (Internet Protocol Securiry) bao gồm một hệ thống các giao thức để bảo mật quá trình truyền thông tin trên nền tảng IP IPSec cũng bao gồm các giao thức cung cấp cho việc mã hóa và xác thực
Giao thức IPSec làm việc tại tầng 3 (tầng Network) trong mô hình OSI, bao gồm ba quá trình:
Trang 16- Mã hóa: Đáp ứng yêu cầu dữ liệu phải được mã hóa trước khi truyền đi
- Giải mã: Đáp ứng yêu cầu khi dữ liệu đến đúng người nhận thì người đó mới
có thể giải mã được
- Xác nhận: Đáp ứng yêu cầu chỉ nhận những dữ liệu từ nguồn tin cậy
Trước khi truyền dữ liệu hai máy tính phải tiến hành việc thương lượng, thương lượng về giao thức bảo mật, phương thức giải mã
1.2.2 Lợi ích khi sử dụng IPSec
Thuận lợi chính khi dùng IPSec, là cung cấp được giải pháp mã hóa cho tất cả các giao thức hoạt động tại tầng 3 – tầng Network (trong mô hình OSI), và kể cả các giao thức lớp cao hơn
IPSec có khả năng cung cấp:
- Chứng thực 2 chiều trước và trong suốt quá trình giao tiếp IPSec quy định cho
cả 2 bên tham gia giao tiếp phải xác định chính mình trong suốt quy trình giao tiếp
- Tạo sự tin cậy qua việc mã hóa, và xác nhận số các gói tin IPSec có 2 giao thức Encapsulating Security Payload (ESP) cung cấp cơ chế mã hóa dùng nhiều thuật toán khác nhau, và Authentication Header (AH) xác nhận các thông tin chuyển giao nhưng không mã hóa
- Tích hợp các thông tin chuyển giao và sẽ loại ngay bất kì thông tin nào bị chỉnh sửa Cả hai loại ESP và AH đều kiểm tra tính tích hợp của các thông tin chuyển giao Nếu một gói tin đã chỉnh sửa, thì các xác nhận số sẽ khôngtrùng khớp, kết quả gói tin sẽ bị loại ESP cũng mã hóa địa chỉ nguồn và địa chỉ đích như một phần của việc mã hóa thông tin chuyển giao
- Chống lại các cuộc tấn công Replay, thông tin chuyển giao qua mạng sẽ bị attacker chặn, chỉnh sửa, và được gửi đi sau đó đến đúng địa chỉ người nhận, người nhận không hề hay biết và vẫn tin rằng đấy là thông tin hợp pháp IPSec dùng kỹ thuật đánh số liên tiếp cho các Packet Data của mình (Sequence numbers), nhằm làm cho attacker không thể sử dụng lại các dữ liệu đã chặn được, với ý đồ bất hợp pháp Dùng Sequence numbers còn giúp bảo vệ chống việc chặn và đánh cắp dữ liệu
Trang 17CHƯƠNG II: HOẠT ĐỘNG CỦA IPSEC
Ở chương 1, “Tổng quan về IPSec”, chúng ta đã tìm hiểu về mạng VPN, khái niệm và các lợi ích khi sử dụng IPsec, trên nền tảng đó chương này sẽ nghiên cứu sâu hơn về hoạt động giao thức IPSec
2.1 Cấu trúc gói tin IP
Mô hình gói tin IP:
Hình 2.1: Mô hình gói tin IP
Các gói IP bao gồm dữ liệu từ lớp bên trên đưa xuống và thêm vào một IP Header IP Header gồm các thành phần sau:
2.1.2 IP Header Length - HLEN (độ dài header)
Trang 18Chỉ ra chiều dài của header, mỗi đơn vị là 1 word, mỗi word = 32 bit = 4 byte
Ở đây trường Header Length có 4 bit => 2^4 -1= 15 word = 15 x 4byte = 60byte nên chiều dài header tối đa là 60 byte (Đó là đã bao gồm chiều dài trường Options
và Padding, chiều dài tối đa khi không bao gồm chiều dài của trường Options và Padding là 24 byte).Giá trị bình thường của trường này khi không có Options được
sử dụng là 5 Đây là chiều dài của tất cảc các thông tin Header Trường này cũng giúp ta xác định byte đầu tiên của Data nằm ở đâu trong gói tin IP datagram
2.1.3 Type Of Services - TOS (loại dịch vụ)
Đặc tả các tham số về dịch vụ nhằm thông báo cho mạng biết dịch vụ nào mà gói tin muốn được sử dụng, chẳng hạn ưu tiên, thời hạn chậm trễ, năng suất truyền
Trang 19R - Reliability (1 bit): Chỉ độ tin cậy yêu cầu
R = 0 độ tin cậy bình thường
R = 1 độ tin cậy cao
M (1 bit): Chi phí tối thiểu
M = 0 chi phí bình thường
M = 1 chi phí tối thiểu
Bảng 2.1: Giá trị khuyến nghị của trường TOS 2.1.4 Total Length (chiều dài tổng)
Chỉ ra chiều dài của toàn bộ gói tính theo byte, bao gồm dữ liệu và header Vì trường này rộng 16 bit, nên chiều dài gói tin dữ liệu IP là 65.535 byte, mặc dù hầu hết là nhỏ hơn Hiện nay giới hạn trên là rất lớn nhưng trong tương lai với những mạng Gigabit thì các gói tin có kích thước lớn là cần thiết Để biết chiều dài của dữ liệu chỉ cần lấy tổng chiều dài này trừ đi HLEN
2.1.5 Identification
Tham số này dùng để định danh duy nhất cho một IP datagram trong khoảng thời gian nó vẫn còn trên liên mạng, giúp bên nhận có thể ghép các mảnh của 1 IP datagram lại với nhau vì IP datagram phân thành các mảnh và các mảnh thuộc cùng
1 IP datagram sẽ có cùng Identification.Đây là chỉ số tuần tự nó gia tăng khi mỗi lần gói tin dữ liệu gửi đi Trường Identification rộng 16 byte, vì vậy sẽ có 65 535 định danh có thể sử dụng
Trang 202.1.6 Flag
Một field có 3 bit, trong đó có 2 bit có thứ tự thấp,điều khiển sự phân mảnh Một bit cho biết gói có bị phân mảnh hay không và bit kia cho biết gói có phải là mảnh cuối cùng của chuỗi gói bị phân mảnh hay không
Fragment Offset: Được dùng để ghép các mảnh Datagram lại với nhau có 13 bit Flags (3 bits)
R – Reserved (1 bit): Nên để giá trị là 0
DF - Don't fragment (1 bit): Quản lý việc phân mảnh của gói tin dữ liệu
DF = 0: Phân mảnh, nếu cần thiết
DF = 1: Không được phân mảnh
Bit DF được biểu thị chính là mệnh lệnh cho các router không được phân mảnh datagram bởi gói tin đó biết chắc sẽ đủ nhỏ để đi qua các Router và gói tin đó cần đi nhanh hoặc sử dụng cho mục đích đặc biệt nào đó nên cần đặt DF = 0.Điều này có ý nghĩa các datagram phải tránh mạng có kích thước packet nhỏ trên đường đi, nói cách khác nó phải chọn được đường đi tối ưu Các máy không yêu cầu nhận một gói tin dữ liệu lớn hơn 576 byte
MF - More fragments (1 bit)
MF= 0 phân mảnh cuối
MF = 1 có nhiều phân mảnh
Bit này có ý nghĩa: Nếu gói IP datagram bị phân mảnh thì bit này cho biết mảnh này
có phải là mảnh cuối không Tất cả mảnh (trừ mảnh cuối) phải có bit này thiết lập bằng 1.Điều này cần thiết để xác định tất cả các mảnh của datagram đã đến đích hay chưa
Trang 212.1.7 Fragment Offset (13bit)
Báo bên nhận vị trí offset của các mảnh so với gói IP datagram gốc để có thể ghép lại thành IP datagram gốc
Ví dụ: Theo hình minh họa
- 1 gói tin IP datagram chiều dài là 4000 byte có 20 byte header + 3980 byte dữ liệu
- Mà trên đường truyền chỉ cho phép truyền tối đa là 1500 byte cho nên gói tin sẽ phân thành 3 mảnh nhỏ Mỗi mảnh đều có header là 20 byte , còn phần dữ liệu lần lượt của 3 mảnh là 1480 byte , 1480 byte , 1020 byte Nên offset của 3 mảnh lần lượt là 0, 1480 và 2960 Dựa vào offset để ráp lại thành mảnh lớn ở bên nhận Cuối cùng là trường Flag bên nhận xác định được mảnh cuối cùng
ID ở mỗi mảnh nhỏ bằng x, nghĩa là cùng thuộc 1 mảnh lớn
2.1.8 Time To Live (TTL)
Chỉ ra số bước nhảy (hop) mà một gói có thể đi qua.Con số này sẽ giảm đi 1 khi một gói tin đi qua một router Khi bộ đếm đạt tới 0 gói này sẽ bị loại Trường TTL rộng 8 bit do người gửi khởi tạo Giá trị đề nghị khởi tạo được xác định trong Assigned Numbers RFC và hiện tại là 64 Các hệ thống cũ hơn thường khởi tạo là
từ 15-32 Chúng ta có thể nhận thấy trong 1 số lệnh Ping, gói ICMP echo replies thường được gửi với TTL được thiết lập với giá trị lớn nhất của nó là 255 Đối với máy tính cài Windows, mặc định TTL = 124, máy Linux là 64, máy Sun Scolari là 256 Đây là giải pháp nhằm ngăn chặn tình trạng lặp vòng vô hạn của gói nào đó
2.1.9 Protocol (8bit)
Chỉ ra giao thức nào của tầng trên (tầng Transport) sẽ nhận phần data sau khi công đoạn xử lí IP datagram ở tầng Network hoàn tất hoặc chỉ ra giao thức nào của tầng trên gửi segment xuống cho tầng Network đóng gói thành IP Datagram, mỗi giao thức có 1 mã
2.1.10 Header CheckSum
Giúp bảo đảm sự toàn vẹn của IP Header, có 16 bit
Check sum (kiểm tổng)
Dữ liệu truyền gồm 1 dãy các byte d1,d2,…,dn
Thí dụ: xét dữ liệu gồm 5 ký tự A,B,C,D,E
Check sum = 41 + 42 + 43 + 44 + 45 = 014F (Hex)
Trang 22Tạo khung
soh | 4142434445 | eot | 014F
Bên nhận kiểm lại checksum so với checksum bên gửi xem có bị lỗi không
Nhận xét: checksum không kiểm được tất cả các lỗi
bị ban đầu gửi gói tin dữ liệu
2.1.12 Destination Address
Chỉ ra địa chỉ IP của Node dự định được nhận IP datagram, có 32 bit Một lần nữa, mặc dù các thiết bị như router có thể là điểm tới trung gian của các gói dữ liệu này, nhưng trường này luôn luôn là địa chỉ của điểm đến cuối cùng
2.1.13 IP Option
Kích thước không cố định, chứa các thông tin tùy chọn như:
- Time stamp: thời điểm đã đi qua router
- Security: cho phép router nhận gói dữ liệu không, nếu không thì gói sẽ bị hủy
- Record router: lưu danh sách địa chỉ IP của router mà gói phải đi qua
- Source router: bắt buộc đi qua router nào đó Lúc này sẽ không cần dùng bảng định tuyến ở mỗi Router nữa
C - Copy flag (1 bit): Chỉ ra nếu tùy chọn này là để được sao chép vào tất cả các mảnh vỡ
Trang 23Class 2 bits
Option 5 bits
Trang 24Minh họa bắt gói gói tin bằng WireShark:
Phân tích:
- Gói tin IP version 4
- Có chiều dài phần header là 20 byte
- Chiều dài gói tin Total length =40 byte
- Tham số định danh Identification = 0x420a (16906)
- Trường Flags:
o Bit DF =1: không phân mảnh gói tin
Trang 25o Bit MF =0: Đây là mảnh cuối cùng, không còn mảnh nào sau nó
- Vì gói tin không chia mảnh nên trường Fragment Offset =0
AH được sử dụng trong các kết nối không có tính đảm bảo dữ liệu Hơn nữa nó
là lựa chọn nhằm chống lại các tấn công replay attack bằng cách sử dụng công nghệ chống tấn công sliding window và discarding older packets, AH bảo vệ quá trình truyền dữ liệu khi sử dụng IP Trong IPv4, IP Header có bao gồm TOS, Flags, Fragment Offset, TTL và Header checksum AH thực hiện trực tiếp trong phần đầu tiên của gói tin IP Dưới đây là mô hình của AH header
Hình 2.3: Cấu trúc trường AH
Trong đó:
Trang 26Next header (8 Bits): Nhận dạng giao thức sử dụng truyền thông tin, xác định lại dữ
liệu chứa trong tiêu đề AH
Payload leghth (8 Bits): Độ lớn của gói tin AH tính bằng đơn vị (32 Bits) và trừ đi 2
đơn vị
RESERVED (16 Bits): Sử dụng trong tương lai (cho đến thời điểm hiện nay nó được
biểu diễn bằng các con số 0)
Security paramaters index (SPI - 32 Bits): Nhận ra các thông số bảo mật, được tích
hợp với địa chỉ IP và nhận dạng các thương lượng bào mật được kết hợp với các gói tin Giá trị 1-255 được dành riêng, giá trị 0 sử dụng cho mục đích đặc biệt, các giá trị khác dùng gắn cho SPI
Sequence numbet (32 Bits): đây là một giá trị không đâu, luôn tăng và cho phép
cung cấp dịch vụ antireplay cho một SA.Thông tin này không nhất thiết được dùng bởi bên nhận nhưng nó phải bao gồm thiết bị gửi Chỉ số này được khởi động về 0 khi SA được thiết lập Nếu dịch vụ antireplay được dùng, chỉ số này không bao giờ được phép lặp lại Bởi vì bên gửi không biết bên nhận có dùng dịch vụ antireplay hay không, SA sẽ được hủy và một SA mới sẽ được tái thiết lập sau khi có 232 gói tin được truyền
Authentication data (chiều dài không xác định): Trường này chứa nhiều giá trị
Integrity Check Value (ICV) cho gói tin Trường này phải là một số nguyên bội số của 32 và có thể chứa các giá trị đệm (padding) để lấp đầy các bit trống cho đủ 32 bits Giá trị ICV này được dùng các giải thuật như Message Authentication Code (MACs) MACs được dựa trên các giải thuật mã hóa đối xứng như DES và 3DES hoặc các hàm Hash một chiều dải như MD5 hoặc SHA-1 Khi tính toán chỉ số ICV, dùng trong MAC làm giá trị này khó bị bẻ gãy Mỗi đầu của một kết nối VPN sẽ tính toán chỉ số ICV này một cách độc lập Nếu các giá trị này không trùng, gói tin
sẽ bị bỏ qua Điều này giúp đảm bảo các gói tin không bị thay đổi trong quá trình truyền
AH cung cấp các tính xác thực, tính nguyên vẹn và khâu lặp cho toàn bộ gói tin bao gồm cả phần tiêu đề của IP (IP Header) và các gói dữ liệu được chuyển trong các gói tin
AH không cung cấp tính riêng tư, không mã hóa dữ liệu như vậy dữ liệu có thể được đọc nhưng chúng sẽ được bảo vệ để chống lại sự thay đổi AH sẽ sử dụng thuật toán Key AH đề đánh dấu gói dữ liệu nhằm đảm bảo tính toàn vẹn của gói dữ liệu
Trang 27Hình 2.4: Quá trình tạo gói tin AH
Nguyên lý hoạt động:
Khi một AH SA được khởi tạo lần đầu tiên, thuật toán xác thực và các khóa được ghi lại, và số chuỗi truy cập được thiết lập là 0 Khi IPSec xác định rằng một gói tin sẽ ra bên ngoài có AH được áp dụng, nó nằm bên trong SA thích hợp và thực hiện các bước sau:
Bước 1: Một tiêu đề AH mẫu được chèn vào giữa IP header và tiêu đề lớp trên Bước 2: Số sequence number tăng dần và được lưu giữ trong các tiêu đề AH Vào
thời gian này, AH kiểm tra để đảm bảo rằng số thứ tự sẽ không bị lặp, nếu lặp, AH
sẽ tạo ra một SA mới và khởi tạo dãy số 0 Trong trường hợp số sequence number không lặp, số thứ tự đó sẽ được tăng lên và được lưu giữ trong các tiêu đề AH
Bước 3: Phần còn lại của các trường AH, ngoại trừ của ICV, được làm đầy đủ với
chiều dài quy định
Bước 4: Nếu cần padding tùy ý được thêm vào tiêu đề AH đề đảm bảo rằng nó là
một bội số của 32 bit (64 bit cho IPv6)
Bước 5: Các trường có thể thay đổi trong IP Header và trường ICV trong tiêu đề
AH được đánh số 0, và ICV được tính trên toàn bộ datagram IP Nếu có nhiều nguồn định tuyến khác trong khi truyền (truyền qua các thiết bị trung gian) trong IP Header, địa chỉ dịch phải được đặt là địa chỉ cuối cùng trước khi tính toán ICV
Bước 6: Các trường có thể thay đổi được làm đầy, và các ICV được lưu trữ trong
tiêu đề AH Nếu có một nguồn định tuyến tùy chọn trung gian khác, trường địa chỉ đích của tiêu đề IP được thiết lập các điểm đến trung gian
Bước 7: Các datagram IP được đặt và hàng đợi đầu ra cho truyền dẫn đến đích của
nó
2.2.2 Đóng gói bảo mật dữ liệu ESP (Encapsulating security Pyload)
Trang 28Giao thức ESP cung cấp xác thực, độ toàn vẹn, đảm bảo tính bảo mật của gói tin ESP cũng hỗ trợ tính năng cấu hình sử dụng trong tình huống chỉ cần mã hóa hay chỉ cần xác thực
Hình 2.5: Cấu trúc gói tin ESP
Trong đó:
Security paramaters index (SPI - 32Bits): nhận ra các thông số được tích hợp với
địa chỉ IP, nhận dạng liên kết SA
Sequence number (32 Bits): Tự động có tác dụng phát lại
Payload data (độ dài bất kỳ): Đây là gói tin IP hoặc một phần của gói tin ban đầu
tùy thuộc vào chế độ (mode) của IPSec đang được dùng Khi dùng Tunnel Mode, trường hợp này chứa toàn bộ gói tin IP ban đầu Trong Transport Mode, nó chỉ bao gồm phần giao thức các lớp bên trên của gói tin ban đầu Chiều dài của payload luôn là một số nguyên của bytes
Padding (độ dài bất kì) và Pad Length (8 Bits): Dữ liệu chèn vào độ dài của nó Next Header (8 Bits): Nhận ra giao thức được sử dụng trong quá trình truyền thông
tin Nếu là TCP giá trị là 6, nếu là UDP giá trị là 17 khi dùng Transport Mode, khi dùng Tunnel Mode là 4 (IP-in-IP)
Authentication (Bội số của 32): bao gồm dữ liệu các thực cho gói tin, được tính trên
toàn bộ gói tin ESP trừ phần Authentication data Các thuật toán mã hóa bao gồm DES, 3DES, AES Các thuật toán xác thực bao gồm MD5 hoặc SHA-1 ESP còn cung cấp tính năng anti-repay để bảo vệ các gói tin không bị chỉnh sửa ESP trong trạng thái vận chuyển sẽ không đóng gói thuật toán trên toàn bộ gói tin mà chỉ đóng gói phần thân IP Header ESP có thể sử dụng độc lập hay kết hợp AH, dưới đây là
mô hình của quá trình thực thi ESP trên user data để trả về giữa 2 IPSec Peers
Trang 29Hình 2.6: Quá trình hoạt động của ESP
ESP sử dụng mật mã đối xứng để cung cấp mã hóa dữ liệu cho các gói tin IPSec Cho nên, để kết hợp cả 2 đầu cuối để đều được bảo vệ bởi ESP thì hai bên phải sử dụng khóa giống nhau mới mã hóa và giải mã được gói tin Khi một đầu cuối mã hóa dữ liệu, nó sẽ chia dữ liệu thành các block nhỏ và sau đó thực hiện thao tác mã hóa nhiều lần sử dụng block dữ liệu và khóa Thuật toán mã hóa hoạt động trong chiều này được xem như Block Cipher Algorithms Khi một đầu cuối khác nhận được dữ liệu mã hóa, 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ã hóa ESP có chỉ số
IP Protocol là 50
2.2.2.1 Quá trình gửi ESP
Khi đã sẵn sàng để được đặt trên hàng đợi ra, một datagram IP được kiểm tra xem có thể xử lý bằng IPSec hay không? Nếu đóng gói ESP được yêu cầu, thì cần biết chính xác SA hoạt động trong Transport Mode hay Tunnel Mode Quá trình xử
lý thực hiện các bước sau:
Bước 1: SPD tìm kiếm một SA phù hợp với các thông tin chính xác như địa chỉ đích,
cổng, giao thức Nếu SA chưa tồn tại một cặp SA được thương lượng giữa hai bên truyền nhận
Bước 2: Các số thứ tự từ SA tăng dần và được đặt trong tiêu đề ESP Nếu peer
không vô hiệu hóa chức năng antireplay, số thứ tự được kiểm tra để chắc chắn rằng
nó không bằng 0
Bước 3: Nếu cần thiết, Padding sẽ được thêm vào cho đủ số bit, chiều dài pad và
next header sẽ được làm đầy Nếu thuật toán mã hóa yêu cầu, IV được thêm vào payload data (Initializanti Vector - là một block tùy ý được XOR bởi block dữ liệu ban đầu trước khi mã hóa, để tránh tình trạng chuỗi mã hóa giống nhau vì dữ liệu
Trang 30giống nhau), IV và payload data cùng ESP trailer sẽ được mã hóa, sử dụng khóa và thuật toán mã hóa đã được chỉ định trong SA
Bước 4: ICV được tính trên ESP header, IV, payload data, trường ESP trailer và đặt
trong trường Authentication data, sử dụng hóa và thuật toán mã hóa trong SA
Bước 5: Nếu các gói dữ liệu kết quả yêu cầu phân mảnh, nó được thực hiện tại thời
điểm này Trong Transport Mode, ESP chỉ được áp dụng cho toàn bộ datagram IP
Ở Tunnel Mode, ESP có thể được áp dụng cho một mảnh datagram IP
Một lưu ý là trình tự trong quá trình mã hóa và xác thực rất quan trọng, vì xác thực được thực hiện cuối cùng, ICV sẽ tính toán trên dữ liệu mã hóa trước đó, có nghĩa là người nhận có thể thực hiện việc xác minh chứng thực tương đối nhanh chóng trước khi thực hiện quá trính giải mã khá chậm Điều này có thể phần nào ngăn cản tấn công Dos bởi một loạt dữ liệu ngẫu nhiên được mã hóa gửi tới đầu nhận
2.2.2.2 Quá trình nhận ESP
Vì dữ liệu đến có thể bị phân mảnh do quá trình định tuyến, chúng phải được tái hợp và sau khi tái hợp quá trình xử lý ESP sẽ được thực hiện qua các bước sau:
Bước 1: SA nhận được bằng cách so sánh địa chỉ đích, giao thức (ESP) và SPI của
gói đến Nếu không có SA nào tồn tại, gói sẽ bị loại bỏ
Bước 2: Nếu antireplay được kích hoạt, nó sẽ thực hiện việc kiểm tra một số
sequence number
Bước 3: Gói tin được xác thực bằng việc tính toán ICV dựa trên ESP Header,
payload và trường ESP trailer, sử dụng thuật toán mã hóa và khóa trong SA, nếu xác thực thất bại, gói tin này sẽ bị loại bỏ Nếu gói tin được xác thực, nó sẽ được chấp nhận và đầu nhận cập nhập lại sequence number
Bước 4: Payload và trường ESP trailer được mã hóa bằng việc sử dụng thuật toán
và khóa trong SA Nếu Padding đã được thêm vào, nó cần được kiểm tra để chắc chắn có những giá trị thích hợp cho thuật toán giải mã Gói IP gốc được tái hợp bỏ
đi các trường ESP, việc tái hợp này phụ thuộc vào việc sử dụng Transport Mode hay Tunnel Mode
2.3 Phương pháp xác thực
2.3.1 Pre-shared Key Authentication (Xác thực khóa công khai)
Trang 31Trong phương pháp này, cả hai người khởi xướng và hồi đáp phải có cùng shared key, nếu không đường hầm IKE sẽ không được xây dựng do sự không phù hợp pre-shared key Các key được thoả thuận thông thường sử dụng kỹ thuật out-of-band Trong phần trước ở chương này, chúng ta xem xét việc trao đổi DH và nhìn thấy SKEYIDs được tạo ra như thế nào Các key khác được tạo ra từ SKEYID Giá trị của SKEYID tạo ra cho pre-shared key là:
pre-SKEYID = hash (Pre-Shared Key, Ni|Nr) Nhược điểm của việc sử dụng pre-shared key trong IKE Mode Main đó là bởi vì payload ID được mã hóa mà phản hồi không biết danh tính của người khởi xướng Trong tình huống truy cập từ xa (ví dụ như telecommuting), địa chỉ IP nguồn của người khởi xướng không được biết trước để phản hồi Trong trường hợp này, chế độ tích cực là sự lựa chọn duy nhất với pre-shared key
Do sự đơn giản của nó, phương thức xác thực này được triển khai rộng rãi cho đại chúng triển khai IPSec VPN Cấu hình Cisco IOS cho phương pháp này được thể hiện trong ví dụ
2.3.2 Digital Signature Authentication (Xác thực chữ ký điện tử)
Trong trường hợp chữ ký điện tử, peer có thể được xác thực với key chữ ký hoặc DSS hoặc RSA Hiện nay, Cisco IOS chỉ hỗ trợ RSA Khóa công khai thường được phân phối thông qua chứng thực khóa công khai IKE cho phép trao đổi chứng thực khóa công khai giữa người khởi xướng và người phản hồi Hình 11 cho thấy sự trao đổi IKE với chữ ký điện tử
Hình 2.7: IKE Phase 1 xác thực bằng chữ ký điện tử
Điều quan trọng cần chỉ ra trong hình 2.7 là trong trao đổi tin nhắn thứ 3 và thứ
4, yêu cầu cho chứng thực được gửi bởi người khởi xướng cho trả lời và ngược lại,