Đặng Quang Minh
III.3.3. Network Layer (Layer 3) VPNs
Phần này sẽ mô tả các chủ đề sau:
• Layer 3 tunneling
• Security associations and security policy for Internet Key Exchange (IKE) and IPSec
• Internet Security Association and Key Management Protocol (ISAKMP) and IPSec
phases and modes
• Fragmentation, path maximum transmission unit (MTU) discovery, and Internet Control Message Protocol (ICMP) processing
• IPSec modes
• IPSec protocols
• Authentication in VPN
III.3.3.1 Layer 3 Tunneling
Các công nghệ VPN ở lớp 3 được thiết kế để hoạt động ở lớp network của mô hình OSI. Một cách tiêu biểu, các công nghệ VPN này dùng các giao thức IP như là giao thức ở lớp networl và nó có thể bao gồm các L2 VPN như Multiprotocol Label Switching (MPLS) hoặc IPSec. Một IP tunnel hoạt động như một kênh đi xuyên suốt một mạng trục IP và traffic được gửi trên tunnel sẽ không thể nhận biết được bởi hạ tầng mạng IP bên dưới. Kết quả là, mạng trục IP có thể được dùng như một công nghệ ở lớp datalink. Có rất nhiều cơ chế tunneling tồn tại bởi vì Layer 3 tunnel không phải là một công nghệ mới.
Thật ra, một vài giao thức không phải là tunneling protocol chẳng hạn như IP/IP, GRE và L2TP.
Ban đầu, IPSEc được xem như là một mở rộng của Ipv4 với các đặc điểm bảo mật được thêm vào. Ở hiện tại, IPSec là một khung chuẩn cho các chuẩn mở để đảm bảo vấn đề giao tiếp an toàn trên mạng IP. IPSec dựa trên một kiến trúc được mô tả trong RFC 2401.
IPSec VPN dùng các dịch vụ được định nghĩa trong IPSec để đảm bảo tính toàn vẹn dữ liệu, tính nhất quán, tính bí mật và xác thực của truyền dữ liệu trên một hạ tầng mạng công cộng.
III.3.3.2 Security Associations and Security Policy for IKE and IPSec
IPSec hoạt động dựa trên mô hình ngang hàng (peer-to-peer) hơn là mô hình client/server. Security Association (SA) là một qui ước giữa hai bên trong đó thúc đẩy các trao đổi giữa hai bên giao tiếp. Mỗi bên giao tiếp (có thể là thiết bị, phần mềm) phải thống nhất với nhau về các chính sách hoặc các qui tắc bằng cách sẽ dò tìm các chính sách này với đối tác tìm năng của nó.
Có hai kiểu SA: ISAKMP SA (còn được biết đến với tên gọi là IKE Sas) và IPSec SA. IKE SA là quá trình hai chiều và cung cấp một kênh giao tiếp bảo mật giữa hai bên. Thuật ngữ ‘hai chiều’ có ý nghĩa là khi đã được thiết lập, mỗi bên có thể khởi tạo chế độ QuickMode, Informational và NewGroupMode. IKE SA được nhận ra bởi các cookies của bên khởi tạo, được theo sau bởi các cookies của trả lời của phía đối tác. Thứ tự các cookies được thiết lập bởi phase 1 sẽ tiếp tục chỉ ra IKE SA, bất chấp chiều của nó. Chức năng chủ yếu của IKE là thiết lập và duy trì các SA. Các thuộc tính sau đây là mức tối thiểu phải được thống nhất giữa hai bên như là một phần của ISAKMP SA:
• Encryption algorithm
• Hash algorithm
• Authentication method
• Information about the group required to perform the Dif.e-Hellman (DH) key
agreement protocol
IKE thực hiện quá trình dò tìm, quá trình xác thực, quản lý và trao đổi khóa. IKE sẽ dò tìm ra được một hợp đồng giữa hai đầu cuối IPSec và sau đó SA sẽ theo dõi tất cả các thành phần của một phiên làm việc IPSec. Sau khi đã dò tìm thành công, các thông số SA hợp lệ sẽ được lưu trữ trong cơ sở dữ liệu của SA.
ISAKMP liên quan rất chặt chẽ đến quản lý chính sách, trong đó cho phép các mức khác nhau của sự điều chỉnh. Khả năng thúc đẩy hoặc thay đổi chính sách trên thiết bị đầu cuối của người dùng là một trong những điểm chính của thiết kế VPN cho doanh nghiệp. VPN 3000 Concentrator có chế độ cấu hình, trong đó cho phép những người dùng ở xa có thể kiểm soát các chính sách, bao gồm DNS, WINS, IP address và domain name.
IPSEC SA là một chiều và được dùng cho quá trình trao đổi thật sự giữa hai thiết bị. Vì vậy, quá trình giao tiếp hai chiều giữa hai thiết bị yêu cầu ít nhất 2 IPSec Sas, mỗi SA cho một chiều, bởi vì IPSec Sa là các kết nối dữ liệu đơn chiều. Ví dụ, khi một phiên TCP hai chiều tồn tại giữa hai hệ thống, A và B, sẽ có một SA từ A về B và sẽ có 1 SA từ B về A. Nếu cả hai giao thức bảo mật, AH và ESP được áp dụng vào các dòng traffic một chiều, hai SA sẽ được tạo ra cho dòng dữ liệu.
Một SA được nhận ra bởi địa chỉ IP, một giao thức bảo mật (AH hay ESP) và một chỉ số SPU. Chỉ số SPI là một giá trị 32-bit được gán vào quá trình tạo SA bởi phía đầu kết nối IPSec. Giá trị SPI cho AH và ESP là không giống nhau cho cùng một dòng dữ liệu. Giá trị SPI là một field trong cả hai header của AH và ESP và nó được chỉ ra bởi SA cho tất cả các giao tiếp giữa hai node. Ba thành phần của SA cho phép đầu nhận kết hợp các gói nhận một cách phù hợp.
III.3.3. Quá trình bắt tay của ISAKMP, các pha và các chế độ của IPSec
SA cho cả IKE và IPSec được dò tìm bởi IKE trong các giai đoạn và các chế độ khác nhau. Các thuật ngữ pha (phase) và chế độ (mode) mô tả các bước liên quan trong quá trình thiết lập một kết nối IPSec. Quá trình trao đổi khóa và quản lý khóa là một phần quan trọng của IPSec bởi vì một số khóa phải được trao đổi để các bên có thể giao tiếp với nhau an toàn.
Hai phương thức cho việc trao đổi và quản lý khóa được dùng bởi IPSec bao gồm: khóa bằng tay (manual keying) và IKE, trong đó IKE dựa trên ISAKMP/Oakley. IKE có ba chế độ cho việc trao đổi khóa và thiết lập SAs: main, aggressive và quickmode.
Hai chế độ đầu tiên là của giai đoạn 1 (main và aggressive) trong đó thiết lập các kênh an toàn ban đầu – IKE SA. Một chế độ khác gọi là pha 2 (quick), trong chế độ này IPSEC SA sẽ được bắt tay. Mặc dù quá trình bảo vệ danh xưng không cần, chỉ có aggressive mode có thể được dùng để giảm thời gian cho quá trình bắt tay này.
Trong ISAKMP, pha 1 diển ra khi hai đối tác ISAKMP thiết lập một kết giao tiếp an toàn, đã xác thực. Các chế độ main và aggressive sẽ hoàn thành pha 1 và chỉ liên quan đến pha 1. Pha 2 diễn ra khi SA sẽ bắt đầu tiếp tục bắt tay trên các dịch vụ khác như IPSEc hoặc các dịch vụ yêu cầu các thông số khác. Chế độ quickmode sẽ hoàn tất quá trình trao đổi của pha 2 và chỉ được dùng trong pha 2. Trong IPSEc, pha 1 IKE sẽ dòm tìm IPSec Sa. Hai chế độ sẽ được dùng trong giai đoạn này: main mode được dùng trong phần lớn các tình huống và aggressive mode được dùng trong một số tình huống khác. Aggressive mode thường là tiêu biểu cho các tình huống khi quá trình xác thực là không cần thiết hoặc đã được thực hiện trước đó). Người dùng sẽ không có cách kiểm sóat chế đô nào sẽ được dùng. Chế độ này là tự động và phụ thuộc vào cấu hình các thông số được cấu hình bởi hai đầu. Trong pha 2, IKE sẽ bắt tay IPSec Sa và chỉ dùng quickmode. Các thông số và chức năng của IKE và IPSec và sự khác nhau giữa hai chế độ này được hiển thị trong hình:

IPSec SA sẽ kết thúc thông qua quá trình xóa hoặc timeout. Khi SA kết thúc, khóa sẽ bị bỏ. Khi các IPSec SA là cần thiết, IKE sẽ thực hiện pha 2 mới, và nếu cần thiết, pha 1 mới sẽ được bắt tay. Một quá trình bắt tay thành công sẽ có kết quả là các SAs mới và khóa mới. Các SAs mới có thể được thiết lập trước khi các SAs bị hết hạn, và vì vậy một dòng dữ liệu mới có thể được truyền mà không bị ngắt quãng.
III.3.3. Network Layer (Layer 3) VPNs
Phần này sẽ mô tả các chủ đề sau:
• Layer 3 tunneling
• Security associations and security policy for Internet Key Exchange (IKE) and IPSec
• Internet Security Association and Key Management Protocol (ISAKMP) and IPSec
phases and modes
• Fragmentation, path maximum transmission unit (MTU) discovery, and Internet Control Message Protocol (ICMP) processing
• IPSec modes
• IPSec protocols
• Authentication in VPN
III.3.3.1 Layer 3 Tunneling
Các công nghệ VPN ở lớp 3 được thiết kế để hoạt động ở lớp network của mô hình OSI. Một cách tiêu biểu, các công nghệ VPN này dùng các giao thức IP như là giao thức ở lớp networl và nó có thể bao gồm các L2 VPN như Multiprotocol Label Switching (MPLS) hoặc IPSec. Một IP tunnel hoạt động như một kênh đi xuyên suốt một mạng trục IP và traffic được gửi trên tunnel sẽ không thể nhận biết được bởi hạ tầng mạng IP bên dưới. Kết quả là, mạng trục IP có thể được dùng như một công nghệ ở lớp datalink. Có rất nhiều cơ chế tunneling tồn tại bởi vì Layer 3 tunnel không phải là một công nghệ mới.
Thật ra, một vài giao thức không phải là tunneling protocol chẳng hạn như IP/IP, GRE và L2TP.
Ban đầu, IPSEc được xem như là một mở rộng của Ipv4 với các đặc điểm bảo mật được thêm vào. Ở hiện tại, IPSec là một khung chuẩn cho các chuẩn mở để đảm bảo vấn đề giao tiếp an toàn trên mạng IP. IPSec dựa trên một kiến trúc được mô tả trong RFC 2401.
IPSec VPN dùng các dịch vụ được định nghĩa trong IPSec để đảm bảo tính toàn vẹn dữ liệu, tính nhất quán, tính bí mật và xác thực của truyền dữ liệu trên một hạ tầng mạng công cộng.
III.3.3.2 Security Associations and Security Policy for IKE and IPSec
IPSec hoạt động dựa trên mô hình ngang hàng (peer-to-peer) hơn là mô hình client/server. Security Association (SA) là một qui ước giữa hai bên trong đó thúc đẩy các trao đổi giữa hai bên giao tiếp. Mỗi bên giao tiếp (có thể là thiết bị, phần mềm) phải thống nhất với nhau về các chính sách hoặc các qui tắc bằng cách sẽ dò tìm các chính sách này với đối tác tìm năng của nó.
Có hai kiểu SA: ISAKMP SA (còn được biết đến với tên gọi là IKE Sas) và IPSec SA. IKE SA là quá trình hai chiều và cung cấp một kênh giao tiếp bảo mật giữa hai bên. Thuật ngữ ‘hai chiều’ có ý nghĩa là khi đã được thiết lập, mỗi bên có thể khởi tạo chế độ QuickMode, Informational và NewGroupMode. IKE SA được nhận ra bởi các cookies của bên khởi tạo, được theo sau bởi các cookies của trả lời của phía đối tác. Thứ tự các cookies được thiết lập bởi phase 1 sẽ tiếp tục chỉ ra IKE SA, bất chấp chiều của nó. Chức năng chủ yếu của IKE là thiết lập và duy trì các SA. Các thuộc tính sau đây là mức tối thiểu phải được thống nhất giữa hai bên như là một phần của ISAKMP SA:
• Encryption algorithm
• Hash algorithm
• Authentication method
• Information about the group required to perform the Dif.e-Hellman (DH) key
agreement protocol
IKE thực hiện quá trình dò tìm, quá trình xác thực, quản lý và trao đổi khóa. IKE sẽ dò tìm ra được một hợp đồng giữa hai đầu cuối IPSec và sau đó SA sẽ theo dõi tất cả các thành phần của một phiên làm việc IPSec. Sau khi đã dò tìm thành công, các thông số SA hợp lệ sẽ được lưu trữ trong cơ sở dữ liệu của SA.
ISAKMP liên quan rất chặt chẽ đến quản lý chính sách, trong đó cho phép các mức khác nhau của sự điều chỉnh. Khả năng thúc đẩy hoặc thay đổi chính sách trên thiết bị đầu cuối của người dùng là một trong những điểm chính của thiết kế VPN cho doanh nghiệp. VPN 3000 Concentrator có chế độ cấu hình, trong đó cho phép những người dùng ở xa có thể kiểm soát các chính sách, bao gồm DNS, WINS, IP address và domain name.
IPSEC SA là một chiều và được dùng cho quá trình trao đổi thật sự giữa hai thiết bị. Vì vậy, quá trình giao tiếp hai chiều giữa hai thiết bị yêu cầu ít nhất 2 IPSec Sas, mỗi SA cho một chiều, bởi vì IPSec Sa là các kết nối dữ liệu đơn chiều. Ví dụ, khi một phiên TCP hai chiều tồn tại giữa hai hệ thống, A và B, sẽ có một SA từ A về B và sẽ có 1 SA từ B về A. Nếu cả hai giao thức bảo mật, AH và ESP được áp dụng vào các dòng traffic một chiều, hai SA sẽ được tạo ra cho dòng dữ liệu.
Một SA được nhận ra bởi địa chỉ IP, một giao thức bảo mật (AH hay ESP) và một chỉ số SPU. Chỉ số SPI là một giá trị 32-bit được gán vào quá trình tạo SA bởi phía đầu kết nối IPSec. Giá trị SPI cho AH và ESP là không giống nhau cho cùng một dòng dữ liệu. Giá trị SPI là một field trong cả hai header của AH và ESP và nó được chỉ ra bởi SA cho tất cả các giao tiếp giữa hai node. Ba thành phần của SA cho phép đầu nhận kết hợp các gói nhận một cách phù hợp.
III.3.3. Quá trình bắt tay của ISAKMP, các pha và các chế độ của IPSec
SA cho cả IKE và IPSec được dò tìm bởi IKE trong các giai đoạn và các chế độ khác nhau. Các thuật ngữ pha (phase) và chế độ (mode) mô tả các bước liên quan trong quá trình thiết lập một kết nối IPSec. Quá trình trao đổi khóa và quản lý khóa là một phần quan trọng của IPSec bởi vì một số khóa phải được trao đổi để các bên có thể giao tiếp với nhau an toàn.
Hai phương thức cho việc trao đổi và quản lý khóa được dùng bởi IPSec bao gồm: khóa bằng tay (manual keying) và IKE, trong đó IKE dựa trên ISAKMP/Oakley. IKE có ba chế độ cho việc trao đổi khóa và thiết lập SAs: main, aggressive và quickmode.
Hai chế độ đầu tiên là của giai đoạn 1 (main và aggressive) trong đó thiết lập các kênh an toàn ban đầu – IKE SA. Một chế độ khác gọi là pha 2 (quick), trong chế độ này IPSEC SA sẽ được bắt tay. Mặc dù quá trình bảo vệ danh xưng không cần, chỉ có aggressive mode có thể được dùng để giảm thời gian cho quá trình bắt tay này.
Trong ISAKMP, pha 1 diển ra khi hai đối tác ISAKMP thiết lập một kết giao tiếp an toàn, đã xác thực. Các chế độ main và aggressive sẽ hoàn thành pha 1 và chỉ liên quan đến pha 1. Pha 2 diễn ra khi SA sẽ bắt đầu tiếp tục bắt tay trên các dịch vụ khác như IPSEc hoặc các dịch vụ yêu cầu các thông số khác. Chế độ quickmode sẽ hoàn tất quá trình trao đổi của pha 2 và chỉ được dùng trong pha 2. Trong IPSEc, pha 1 IKE sẽ dòm tìm IPSec Sa. Hai chế độ sẽ được dùng trong giai đoạn này: main mode được dùng trong phần lớn các tình huống và aggressive mode được dùng trong một số tình huống khác. Aggressive mode thường là tiêu biểu cho các tình huống khi quá trình xác thực là không cần thiết hoặc đã được thực hiện trước đó). Người dùng sẽ không có cách kiểm sóat chế đô nào sẽ được dùng. Chế độ này là tự động và phụ thuộc vào cấu hình các thông số được cấu hình bởi hai đầu. Trong pha 2, IKE sẽ bắt tay IPSec Sa và chỉ dùng quickmode. Các thông số và chức năng của IKE và IPSec và sự khác nhau giữa hai chế độ này được hiển thị trong hình:

IPSec SA sẽ kết thúc thông qua quá trình xóa hoặc timeout. Khi SA kết thúc, khóa sẽ bị bỏ. Khi các IPSec SA là cần thiết, IKE sẽ thực hiện pha 2 mới, và nếu cần thiết, pha 1 mới sẽ được bắt tay. Một quá trình bắt tay thành công sẽ có kết quả là các SAs mới và khóa mới. Các SAs mới có thể được thiết lập trước khi các SAs bị hết hạn, và vì vậy một dòng dữ liệu mới có thể được truyền mà không bị ngắt quãng.