Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 33 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
33
Dung lượng
1,52 MB
Nội dung
Chương 1
TỔNG QUAN VỀ VPN
1.1. Mở đầu
Hiện tại, Internet đã phát triển mạnh mẽ cả về mặt mô hình lẫn tổ chức, đáp ứng khá
đầy đủ các nhu cầu của người sử dụng. Internet đã được thiết kế để kết nối nhiều mạng với
nhau và cho phép thông tin chuyển đến người sử dụng một cách tự do và nhanh chóng. Để
làm được điều này người ta sử dụng một hệ thống các thiết bị định tuyến (router) để kết nối
các LAN và WAN với nhau. Các máy tính được kết nối vào Internet thông qua các nhà cung
cấp dịch vụ (ISP – Internet Service Provider). Điều mà kỹ thuật còn tiếp tục phải giải quyết là
năng lực truyền thông của các mạng viễn thông công cộng. Với Internet, những dịch vụ như
đào tạo từ xa, mua hàng trực tuyến, tư vấn các lĩnh vực và rất nhiều điều khác đã trở thành
hiện thực. Tuy nhiên do Internet có phạm vi toàn cầu và không một tổ chức, chính phủ cụ thể
nào quản lý nên rất khó khăn trong việc bảo mật và an toàn dữ liệu cũng như trong việc quản
lý các dịch vụ. Từ đó người ta đã đưa ra một mô hình mạng mới nhằm thoã mãn những yêu
cầu trên mà vẫn có thể tận dụng lại những cơ sở hạ tầng hiện có của Internet, đó chính là mô
hình mạng riêng ảo (Virtual Private Network – VPN). Với mô hình mới này, người ta không
phải đầu tư thêm nhiều về cơ sở hạ tầng mà các tính năng như bảo mật và độ tin cậy vẫn được
đảm bảo, đồng thời có thể quản lý riêng được sự hoạt động của mạng này. VPN cho phép
người sử dụng làm việc tại nhà riêng, trên đường đi hoặc các văn phòng chi nhánh có thể kết
nối an toàn đến máy chủ của tổ chức mình bằng cơ sở hạ tầng được cung cấp bởi mạng công
cộng. Nó cũng có thể đảm bảo an toàn thông tin giữa các đại lý, nhà cung cấp và các đối tác
kinh doanh với nhau trong môi trường truyền thông rộng lớn. Trong nhiều trường hợp, VPN
cũng giống như WAN (Wire Area Network), tuy nhiên đặc tính quyết định của VPN là chúng
có thể dùng mạng công cộng như Internet mà vẫn đảm bảo tính riêng tư và tiết kiệm chi phí.
1.1.1. Định nghĩa VPN
VPN được hiểu đơn giản như là sự mở rộng của một mạng riêng (Private Network)
thông qua các mạng công cộng. Về căn bản, mỗi VPN là một mạng riêng rẽ sử dụng một hạ
tầng mạng chung (thường là Internet) để kết nối cùng với các site (các mạng riêng lẻ) hay
nhiều người sử dụng từ xa. Thay cho việc sử dụng kết nối thực, chuyên dùng, mỗi VPN sử
dụng các kết nối ảo được thiết lập qua Internet từ mạng riêng của các Công ty tới các chi
nhánh hay các nhân viên từ xa. Để có thể gửi và nhận dữ liệu thông qua mạng công cộng mà
vẫn bảo đảm tính an toàn và bảo mật, VPN cung cấp các cơ chế mã hoá dữ liệu trên đường
truyền, tạo ra một đường ống (tunnel) bảo mật giữa nơi gửi và nơi nhận. Để có thể tạo ra một
đường ống bảo mật đó, dữ liệu phải được mã hoá, chỉ cung cấp phần đầu gói dữ liệu (header)
là thông tin về đường đi cho phép nó có thể đi đến đích thông qua mạng công cộng một cách
nhanh chóng. Dữ liệu được mã hoá một cách cẩn thận do đó nếu các packet bị xem lén trên
1
đường truyền công cộng thì cũng không thể đọc được nội dung vì không có khoá để giải mã.
Các đường kết nối VPN thường được gọi là đường ống VPN (tunnel).
Hình 1.1 – Một mô hình mạng VPN
1.1.2. Lợi ích của VPN
VPN cung cấp nhiều đặc tính hơn so với những mạng truyền thông và những mạng
leased-line. Những lợi ích đầu tiên bao gồm:
Chi phí thấp hơn những mạng riêng: VPN có thể giảm chi phí từ 20 đến 40% so với
những mạng sử dụng leased-line và giảm chi phí trong việc truy cập từ xa từ 40 đến
60%
Tính linh hoạt trong kết nối.
Tăng tính bảo mật: Các dữ liệu quan trọng sẽ được che giấu đối với những người
không có quyền truy cập.
Hỗ trợ các giao thức mạng thông dụng nhất hiện nay là TCP/IP.
Bảo mật địa chỉ IP: Bởi vì thông tin được gửi đi trên VPN đã được mã hoá, do đó các
địa chỉ bên trong mạng riêng được che giấu và chỉ sử dụng các địa chỉ bên ngoài
Internet.
1.1.3. Các chức năng cơ bản của VPN:
VPN cung cấp 4 chức năng chính:
Sự tin cậy và bảo mật (confidentiality): Người gửi có thể mã hoá các gói dữ liệu trước
khi truyền chúng ngang qua mạng. Bằng cách này, không một ai có thể truy nhập
thông tin mà không được phép, mà nếu như có lấy được thông tin thì cũng không thể
đọc được vì thông tin đã được mã hoá.
Tính toàn vẹn dữ liệu (Data Integrity): Người nhận có thể kiểm tra rằng dữ liệu được
truyền qua mạng Internet mà không có sự thay đổi nào.
Xác thực nguồn gốc (Origin Authentication): Người nhận có thể xác thực nguồn gốc
của gói dữ liệu, đảm bảo và công nhận nguồn thông tin.
2
Điều khiển truy nhập (Access Control): VPN có thể phân biệt giữa những người dùng
hợp lệ và trái phép bằng nhiều cách như dựa vào chính sách bảo mật, sự chứng thực...
1.2. VPN và các vấn đề an toàn bảo mật trên Internet
Như chúng ta đã biết, sự phát triển bùng nổ và mở rộng mạng toàn cầu Internet ngày
càng tăng, hàng tháng có khoảng 10.000 mạng mới kết nối vào Internet kèm theo đó là vấn đề
làm sao để có thể trao đổi thông tin dữ liệu một cách an toàn qua mạng công cộng như
Internet. Hàng năm sự rò rỉ và mất cắp thông tin, dữ liệu đã gây thiệt hại rất lớn về kinh tế
trên toàn thế giới. Các tin tặc luôn tìm mọi cách để nghe trộm, đánh cắp thông tin và dữ liệu
nhạy cảm như: mã thẻ tín dụng, tài khoản người dùng, các thông tin kinh tế nhạy cảm... của
các tổ chức hay cá nhân.
Vậy giải pháp sử dụng mạng riêng ảo VPN sẽ giải quyết vấn đề an toàn và bảo mật
thông tin trên Internet như thế nào?
Câu trả lời là để các tổ chức, doanh nghiệp, cá nhân cảm thấy yên tâm khi trao đổi
thông tin dữ liệu qua mạng Internet là sử dụng công nghệ mạng riêng ảo VPN.
Thực chất, công nghệ chính được sử dụng trong mạng riêng ảo VPN là tạo ra một
đường hầm (tunnel), mã hoá và chứng thực dữ liệu giữa hai đầu kết nối. Các thông tin dữ liệu
sẽ được mã hoá và chứng thực trước khi được lưu chuyển trong một đường hầm riêng biệt,
qua đó sẽ tránh được những cặp mắt tò mò muốn đánh cắp thông tin.
1.2.1. An toàn và tin cậy
Sự an toàn của một hệ thống mạng là một phần trong các tiêu chí đánh giá một hệ
thống đáng tin cậy. Có 4 yếu tố ảnh hưởng đến một hệ thống đáng tin cậy:
Tính sẵn sàng: Khả năng sẵn sàng phục vụ, đáp ứng yêu cầu trong khoảng thời gian
ngắn. Tính sẵn sàng thường được thực hiện thông qua những hệ thống phần cứng dự
phòng.
Sự tin cậy: Định nghĩa năng lực của hệ thống khi thực hiện các chức năng của nó trong
một chu kỳ thời gian. Sự tin cậy khác với tính sẵn sàng, sự tin cậy tương ứng tới tính
liên tục của một dịch vụ nào đó.
Sự an toàn: Khái niệm an toàn chỉ ra tính vững chắc của một hệ thống trước các nguy
cơ tiềm ẩn, ví dụ các cuộc tấn công từ chối dịch vụ, sự xâm nhập trái phép vào hệ
thống thông qua các lỗ hổng bảo mật...
Sự an ninh: Trong trường hợp này sự an ninh có nghĩa như một sự bảo vệ tất cả các tài
nguyên hệ thống.
Một hệ thống mạng đáng tin cậy ở mức cao nhất nghĩa là hệ thống luôn đảm bảo được
sự an toàn tại bất kỳ thời điểm nào.
1.2.2. Các hình thức an toàn
Sự an toàn của hệ thống mạng phụ thuộc vào tất cả những thành phần của nó. Có ba
kiểu khác nhau của sự an toàn: An toàn phần cứng, An toàn thông tin và An toàn quản trị.
3
An toàn phần cứng: Sự an toàn về mặt vật lý, bảo vệ phần cứng của hệ thống khỏi
những mối đe doạ vật lý bên ngoài như sự phá họa làm mất mát thông tin, các sự cố
liên quan đến nguồn cung cấp, các yếu tố môi trường có thể làm hỏng phần cứng... Tất
cả những yếu tố trên cần phải được tính đến và thực hiện các biện pháp phòng ngừa.
An toàn thông tin: An toàn thông tin nghĩa là thông tin được bảo vệ, các hệ thống và
những dịch vụ có khả năng chống lại những tai hoạ, các lỗi và sự tác động không
mong đợi, các thay đổi tác động đến độ an toàn của hệ thống là nhỏ nhất. Hệ thống có
một trong các đặc điểm sau là không an toàn:
-
Các thông tin dữ liệu trong hệ thống bị người không được quyền truy nhập tìm
cách lấy và sử dụng (thông tin bị rò rỉ).
-
Các thông tin trong hệ thống bị thay thế hoặc sửa đổi làm sai lệch nội dung (thông
tin bị xáo trộn hoặc mất mát).
An toàn quản trị: An toàn quản trị liên quan đến tất cả các mối đe doạ mà con người
làm tổn hại đến một hệ thống mạng. Những mối đe doạ này có thể xuất phát cả từ bên
ngoài lẫn bên trong của một tổ chức, doanh nghiệp.
1.3. Định nghĩa “đường hầm” và “mã hoá”
Chức năng chính của một mạng riêng ảo (VPN) là cung cấp sự bảo mật thông tin bằng
cách mã hoá và chứng thực qua một đường hầm (tunnel).
1.3.1. Đường hầm và cấu trúc gói tin
Cung cấp các kết nối logic, vận chuyển các gói dữ liệu đã được mã hoá bằng một
đường hầm riêng biệt qua mạng IP, điều đó làm tăng tính bảo mật thông tin vì dữ liệu sau khi
mã hoá sẽ lưu chuyển trong một đường hầm được thiết lập giữa người gửi và người nhận, do
đó sẽ tránh được sự nhòm ngó, xem trộm thông tin. Các giao thức định đường hầm được sử
dụng trong VPN như sau:
L2F (Layer 2 Forwarding): Được Cisco phát triển.
PPTP (Point-to-Point Tunneling Protocol): Được PPTP Forum phát triển, giao thức
này hỗ trợ mã hóa 40 bit và 128 bit.
L2TP (Layer 2 Tunneling Protocol): Là sản phẩm của sự hợp tác giữa các thành viên
PPTP Forum, Cisco và IETF. L2TP kết hợp các tính năng của cả PPTP và L2F.
IPSec (IP Security): Được phát triển bởi IETF. Mục đích chính của việc phát triển
IPSec là cung cấp một cơ cấu bảo mật ở lớp 3 (network layer) trong mô hình OSI.
GRE (Generic Routing Encapsulation): Đây là giao thức truyền thông đóng gói IP và
các dạng gói dữ liệu khác bên trong đường ống. Giống như IPSec, GRE hoạt động ở
tầng 3 của mô hình tham chiếu OSI, tuy nhiên GRE không mã hóa thông tin.
4
1.3.2. Mã hoá và giải mã (Encryption/Decryption):
Mã hóa là quá trình biến đổi nội dung thông tin nguyên bản ở dạng đọc được (clear
text hay plain text) thành một dạng văn bản mật mã vô nghĩa không đọc được (cyphertex), vì
vậy nó không có khả năng đọc được hay khả năng sử dụng bởi những người dùng không
được phép. Giải mã là quá trình ngược lại của mã hoá, tức là biến đổi văn bản đã mã hoá
thành dạng đọc được bởi những người dùng được phép.
1.3.3. Một số thuật ngữ sử dụng trong VPN:
-
Hệ thống mã hoá (CryptoSystem): Là một hệ thống để thực hiện mã hoá hay giải mã,
xác thực người dùng, băm (hashing) và các quá trình trao đổi khoá, một hệ thống mã hoá
có thể sử dụng một hay nhiều phương thức khác nhau tuỳ thuộc vào yêu cầu cho một vài
loại traffic cụ thể.
-
Hàm băm (hashing): Là một kỹ thuật đảm bảo tính toàn vẹn dữ liệu, nó sử dụng một
công thức hoặc một thuật toán để biến đổi một bản tin có chiều dài thay đổi và một khoá
mật mã công cộng vào trong một chuỗi đơn các số liệu có chiều dài cố định. Bản tin hay
khoá và hash di chuyển trên mạng từ nguồn tới đích. Ở nơi nhận, việc tính toán lại hash
được sử dụng để kiểm tra rằng bản tin và khoá không bị thay đổi trong khi truyền trên
mạng.
-
Xác thực (Authentication): Là quá trình của việc nhận biết một người sử dụng hay quá
trình truy cập hệ thống máy tính hoặc kết nối mạng. Xác thực đảm bảo chắc chắn rằng cá
nhân hay một tiến trình là hợp lệ.
-
Cho phép (Authorization): Là hoạt động kiểm tra thực thể nào đó có được phép thực
hiện những quyền hạn cụ thể nào.
-
Quản lý khoá (Key management): Một khoá thông tin, thường là một dãy ngẫu nhiên
hoặc trông giống như các số nhị phân ngẫu nhiên, được sử dụng ban đầu để thiết lập và
thay đổi một cách định kỳ sự hoạt động trong một hệ thống mật mã. Quản lý khoá là sự
giám sát và điều khiển tiến trình nhờ các khoá được tạo ra. Các công việc chính có thể là
cất giữ, bảo vệ, biến đổi, tải lên, sử dụng hay loại bỏ.
-
Dịch vụ chứng thực CA (Certificate of Authority): Một dịch vụ được tin tưởng để bảo
mật quá trình truyền tin giữa các thực thể mạng hoặc người dùng bằng cách tạo ra và gán
các chứng nhận số như các chứng nhận khoá công cộng cho mục đích mã hoá. Một CA
đảm bảo cho sự liên kết giữa các thành phần bảo mật trong chứng nhận.
-
IKE (Internet Key Exchange): Là giao thức chịu trách nhiệm trao đổi khóa giữa hai
điểm kết nối VPN. IKE hỗ trợ ba kiểu xác thực là dùng khóa biết trước (pre-share key),
RSA và RSA signature. IKE lại dùng hai giao thức là Oakley Key Exchange (mô tả kiểu
trao đổi chìa khoá) và Skeme Key Exchange (định nghĩa kỹ thuật trao đổi chìa khoá), mỗi
giao thức định nghĩa một cách thức để thiết lập sự trao đổi khoá xác thực, bao gồm cấu
trúc tải tin, thông tin mà các tải tin mang, thứ tự các khoá được xử lý và các khoá được sử
dụng như thế nào.
5
-
AH (Authentication Header): Là giao thức bảo mật giúp xác thực dữ liệu, bảo đảm tính
toàn vẹn dữ liệu và các dịch vụ “anti-replay” (dịch vụ bảo đảm tính duy nhất của gói tin).
AH được nhúng vào trong dữ liệu để bảo vệ.
-
ESP (Encapsulation Security Payload): Là một giao thức bảo mật cung cấp sự tin cậy
của dữ liệu, đảm bảo tính toàn vẹn dữ liệu và xác thực nguồn gốc dữ liệu. ESP đóng gói
dữ liệu để bảo vệ.
1.4. Các dạng kết nối mạng riêng ảo
1.4.1. Truy cập VPN từ xa (Remote Access VPN)
Remote Access VPN cho phép các người dùng ở xa sử dụng VPN client để truy cập
vào mạng Intranet của Công ty thông qua Gateway hoặc VPN concentrator (bản chất là một
server). Vì vậy, giải pháp này thường được gọi là client/server. Trong giải pháp này, người
dùng thường sử dụng các công nghệ WAN truyền thống để tạo ra các tunnel về mạng trung
tâm của họ.
1.4.1.1. Một số thành phần chính của Remote Access VPN
Remote Access Server (RAS): Thiết bị này được đặt tại trung tâm và có nhiệm vụ xác
thực và chứng nhận các yêu cầu gửi tới sau đó thiết lập kết nối.
Hình 1.3 – Mô hình non-VPN Remote Access
Remote Access Client: Bằng việc triển khai Remote Access VPN qua Internet, những
người dùng từ xa hoặc các văn phòng chi nhánh chỉ cần thiết lập một kết nối cục bộ
đến nhà cung cấp dịch vụ Internet, sau đó có thể kết nối đến tài nguyên của doanh
6
nghiệp thông qua Remote Access VPN. Mô hình Remote Access VPN được mô tả như
hình dưới đây:
Hình 1.4 – Mô hình Remote Access VPN
1.4.1.2. Ưu và nhược điểm của Remote Access VPN
Ưu điểm Remote Access VPN:
- VPN truy nhập từ xa không cần đến sự hỗ trợ của quản trị mạng bởi các kết
nối từ xa do các nhà cung cấp dịch vụ Internet đảm nhiệm.
- Giảm giá thành chi phí kết nối với khoảng cách xa vì các kết nối của VPN
truy nhập từ xa chính là các kết nối Internet.
- VPN cung cấp khả năng truy cập đến trung tâm tốt hơn bởi vì nó hỗ trợ
dịch vụ truy cập ở mức độ tối thiểu.
Nhược điểm của Remote Access VPN:
- Remote Access VPN cũng không đảm bảo được chất lượng dịch vụ (QoS).
- Khả năng mất dữ liệu là rất cao, thêm nữa là các phân đoạn của gói dữ liệu
có thể bị thất thoát.
- Do độ phức tạp của thuật toán mã hoá nên gây khó khăn cho quá trình xác
nhận.
1.4.2. Site-to-Site VPN (LAN-to-LAN)
Site-to-Site VPN là giải pháp kết nối các hệ thống mạng ở những địa điểm khác nhau
với mạng trung tâm thông qua VPN. Trong trường hợp này, quá trình xác thực ban đầu cho
người sử dụng là quá trình xác thực giữa các thiết bị. Các thiết bị này hoạt động như cổng an
ninh (security gateway), truyền dẫn lưu lượng một cách an toàn từ site này tới site kia. Các bộ
định tuyến hay tường lửa hỗ trợ VPN đều có khả năng thực hiện kết nối này. Sự khác nhau
7
giữa Site-to-Site VPN và Remote Access VPN chỉ mang tính tượng trưng. Nhiều thiết bị
VPN mới có thể hoạt động theo cả hai cách này.
Hình 1.5 – Mô hình Site–to–Site VPN
Site-to-Site VPN có thể được xem như là Intranet VPN hoặc Extranet VPN xét theo
quan điểm chính sách quản lý. Nếu hạ tầng mạng có chung một nguồn quản lý, nó có thể
được xem như Intranet VPN, ngược lại, nó có thể được coi là Extranet VPN. Việc truy nhập
giữa các điểm phải được kiểm soát chặt chẽ bởi các thiết bị tương ứng.
1.4.2.1. Intranet VPN
Hình 1.6 – Mô hình Intranet VPN
Intranet VPN hay còn gọi là VPN cục bộ là một mô hình tiêu biểu của Site-to-Site
VPN, dạng kết nối này được sử dụng để bảo mật các kết nối giữa địa điểm khác nhau của một
công ty hay doanh nghiệp. Nó liên kết trụ sở chính và các văn phòng chi nhánh trên một cơ
sở hạ tầng chung sử dụng các kết nối luôn được mã hóa bảo mật. Điều này cho phép tất cả
các điểm có thể truy nhập an toàn các nguồn dữ liệu được phép trong toàn công ty.
Intranet VPN cung cấp những đặc tính của mạng WAN như khả năng mở rộng, tính tin
cậy và hỗ trợ nhiều kiểu giao thức khác nhau với chi phí thấp nhưng vẫn đảm bảo tính mềm
dẻo.
8
Những ưu điểm chính của giải pháp này bao gồm:
- Các mạng cục bộ hoặc diện rộng có thể được thiết lập thông qua một hay nhiều nhà
cung cấp dịch vụ Internet.
- Giảm được nhân lực hỗ trợ kỹ thuật mạng đối với các chi nhánh ở xa.
- Do kết nối trung gian được thực hiện thông qua Internet nên nó có thể dễ dàng thiết
lập thêm một liên kết ngang hàng mới.
- Tiết kiệm chi phí từ việc sử dụng đường hầm VPN thông qua Internet kết hợp với
các công nghệ chuyển mạch tốc độ cao.
Tuy nhiên, giải pháp Intranet VPN cũng có những nhược điểm nhất định như:
- Do dữ liệu được truyền qua mạng công cộng (mặc dù đã được mã hóa) nên vẫn còn
những mối đe dọa về mức độ bảo mật dữ liệu và chất lượng dịch vụ (QoS).
- Khả năng các gói dữ liệu bị thất thoát trong khi truyền là khá cao.
- Trong trường hợp cần truyền khối lượng lớn dữ liệu như đa phương tiện với yêu cầu
tốc độ cao và đảm bảo thời gian thực là một thách thức lớn trong môi trường
Internet.
1.4.2.2. Extranet VPN (VPN mở rộng)
Giải pháp VPN mở rộng cung cấp khả năng điều khiển truy nhập tới những nguồn tài
nguyên mạng cần thiết để mở rộng tới những đối tượng kinh doanh. Sự khác nhau giữa VPN
nội bộ và VPN mở rộng là sự truy nhập mạng được công nhận ở một trong hai đầu cuối của
VPN.
Hình 1.7 – Mô hình Extranet VPN
Những ưu điểm chính của VPN mở rộng bao gồm:
- Chi phí cho VPN mở rộng thấp hơn nhiều so với các giải pháp kết nối khác để cùng
đạt được một mục đích như vậy.
- Dễ dàng thiết lập, bảo trì và thay đổi với mạng đang hoạt động.
9
- Do VPN mở rộng được xây dựng dựa trên Internet nên có nhiều cơ hội trong việc
cung cấp dịch vụ và lựa chọn giải pháp phù hợp với nhu cầu cụ thể của từng công
ty.
- Các kết nối Internet được các ISP bảo trì nên có thể giảm số lượng nhân viên kỹ
thuật hỗ trợ mạng, do đó sẽ giảm được chi phí vận hành của toàn mạng.
Bên cạnh những ưu điểm trên, giải pháp VPN mở rộng cũng có những nhược điểm nhất
định như:
- Vấn đề bảo mật thông tin gặp khó khăn hơn trong môi trường mở rộng như vậy,
điều này làm tăng nguy cơ rủi ro đối với mạng cục bộ của công ty.
- Khả năng thất thoát dữ liệu trong khi truyền qua mạng công cộng vẫn tồn tại.
- Việc truyền khối lượng lớn dữ liệu với yêu cầu tốc độ cao và thời gian thực vẫn còn
là một thách thức lớn cần giải quyết.
Tóm tắt chương 1
Trong chương này, chúng ta đã giới thiệu qua về các khái niệm cũng như định nghĩa
về VPN, các chức năng chính, các mô hình kết nối và lợi ích của VPN, tiếp theo là khái niệm
an toàn và bảo mật trên Internet. Chương này cũng định nghĩa sơ bộ về khái niệm “đường
hầm - tunnel” và “mã hóa - encrypt” đồng thời nêu ra một số thuật ngữ thường dùng trong
VPN.
Phần 4 của chương đã giới thiệu một số mô hình kết nối mạng riêng ảo, đồng thời
đánh giá ưu và nhược điểm của từng mô hình kết nối.
Trong chương tiếp theo, chúng ta sẽ tìm hiểu kỹ hơn các giao thức chủ yếu được sử
dụng trong VPN đồng thời so sánh ưu và nhược nhược điểm của từng giao thức, qua đó có
thể căn cứ vào từng yêu cầu cụ thể để lựa chọn giải pháp xây dựng một mạng VPN thích hợp.
10
Chương 2
CÁC GIAO THỨC TRONG VPN
Trong VPN có 4 giao thức chính để thiết lập một “mạng riêng ảo” hoàn chỉnh đó là:
L2F - Layer 2 Forwarding Protocol
PPTP - Point-to-Point Tunneling Protocol
L2TP - Layer 2 Tunneling Protocol
IPSec - IP Security
Ngoài ra còn một số giao thức khác, tuy nhiên những giao thức này ít được sử dụng
bởi sự bất cập của nó đã được phát hiện trong quá trình triển khai. Tuỳ theo từng lớp ứng
dụng cụ thể mà mỗi giao thức đều có ưu và nhược điểm khác nhau khi triển khai vào mạng
VPN, việc quan trọng là người thiết kế phải kết hợp các giao thức một cách mềm dẻo.
2.1. Các giao thức đường hầm
Các giao thức đường hầm là nền tảng của công nghệ VPN, có nhiều giao thức đường
hầm khác nhau, việc sử dụng giao thức nào liên quan đến các phương pháp xác thực và mã
hóa đi kèm. Như đã giới thiệu ở trên, các giao thức đường hầm phổ biến hiện nay là:
L2F - Layer 2 Forwarding Protocol
PPTP - Point-to-Point Tunneling Protocol
L2TP - Layer 2 Tunneling Protocol
2.1.1. Giao thức chuyển tiếp lớp 2 (L2F - Layer 2 Forwarding Protocol)
Giao thức L2F là một kỹ thuật được nghiên cứu và phát triển trong các hệ thống mạng
của Cisco dựa trên giao thức PPP - Point to Point Protocol (là một giao thức truyền thông nối
tiếp lớp 2), L2F cho phép máy tính của người dùng truy nhập vào mạng Intranet của một tổ
chức xuyên qua cơ sở hạ tầng mạng công cộng Internet với sự an toàn cao. Tương tự như
giao thức định đường hầm điểm tới điểm PPTP, giao thức L2F cho phép truy nhập mạng
riêng ảo một cách an toàn xuyên qua cơ sở hạ tầng mạng công cộng bằng cách tạo ra một
đường hầm giữa hai điểm kết nối.
Sự khác nhau cơ bản giữa hai giao thức PPTP và L2F là PPTP chỉ hỗ trợ IP, IPX,
NetBIOS và NetBEUI, còn L2F định đường hầm không tuỳ thuộc vào mạng IP, L2F có thể
làm việc với nhiều công nghệ mạng khác nhau như: Frame Relay, ATM, FDDI...
L2F hỗ trợ việc định đường hầm cho hơn một kết nối. L2F có thể làm được điều này
trong khi nó định nghĩa những kết nối bên trong đường hầm, đây là một đặc điểm hữu ích của
L2F trong trường hợp ở nơi có nhiều người sử dụng truy nhập từ xa mà chỉ có duy nhất một
kết nối được thoả mãn yêu cầu.
11
Hình 2.1 – Mô hình kết nối VPN sử dụng L2F
L2F sử dụng giao thức PPP để chứng thực giống như giao thức PPTP, tuy nhiên L2F
còn hỗ trợ chứng thực người dùng quay số từ xa RADIUS (Remote Authentication Dial-up
User Service) và hệ thống điều khiển giám sát đầu cuối TACACS+ (Terminal Access
Controller Access Control System). Với giao thức L2F, một sự an toàn đầy đủ giữa hai điểm
kết nối VPN có thể được tạo ra và sử dụng, nó là một giải pháp khá mềm dẻo và đáng tin cậy.
Cấu trúc gói L2F
1bit
F
1bit
K
1bit
P
1bit
S
8bit
Reserved
Multiplex IP
Length
1bit
C
3 bit
Version
8 bit
Protocol
8bit
Sequence
Client ID
Offset
Key
Data
Checksum
Hình 2.2 – Khuôn dạng gói của L2F
Ý nghĩa các trường trong gói L2F như sau:
-
F
K
P
S
Reserved
Version
Protocol
Sequence
Multiplex ID
Client ID
Length
Offset
Key
Checksum
: chỉ định trường Offset có mặt
: chỉ định trường Key có mặt
: thiết lập độ ưu tiên (Priority) cho gói
: chỉ định trường Sequence có mặt
: luôn được đặt là 00000000
: phiên bản của L2F
: xác định giao thức đóng gói L2F
: số chuỗi được đưa ra nếu trong tiêu đề L2F có bit S = 1
: nhận dạng một kết nối riêng trong một đường hầm
: giúp tách đường hầm tại những điểm cuối
: chiều dài của gói (tính bằng byte) không bao gồm phần Checksum
: xác định số byte cách tiêu đề L2F, tại đó dữ liệu tải tin được bắt đầu.
: là một phần của quá trình xác thực (có mặt khi bit K = 1)
: tổng kiểm tra của gói (có mặt khi bit C = 1)
12
Hoạt động của L2F
L2F đóng gói những gói tin lớp 2 (trong trường hợp này là PPP), sau đó truyền chúng
xuyên qua mạng. Hệ thống sử dụng L2F gồm các thành phần sau:
Hình 2.3 – Mô hình hệ thống sử dụng L2F
-
Máy chủ truy nhập mạng (NAS – Network Access Server): hướng lưu lượng đến và đi
giữa máy khách ở xa (Remote client) và Home Gateway.
Đường hầm (Tunnel): định hướng đường đi giữa NAS và Home Gateway. Một đường
hầm có thể bao gồm một số kết nối.
Home Gateway: ngang hàng với NAS, là phần tử cửa ngõ thuộc mạng riêng.
Kết nối (Connection): là một kết nối PPP trong đường hầm.
Điểm đích (Destination): là điểm kết thúc ở đầu xa của đường hầm, trong trường hợp
này thì Home Gateway chính là điểm đích.
Các hoạt động của L2F bao gồm: thiết lập kết nối, định đường hầm và phiên làm việc.
Các bước cụ thể như sau:
-
Người sử dụng ở xa dial-up tới hệ thống NAS và khởi đầu một kết nối PPP tới ISP.
Hệ thống NAS và máy khách trao đổi các gói giao thức điều khiển liên kết LCP (Link
Control Protocol).
NAS sử dụng cơ sử dữ liệu cục bộ liên quan tới tên miền hay xác thực RADIUS để
quyết định xem người sử dụng có hay không yêu cầu dịch vụ L2F.
Nếu người sử dụng yêu cầu L2F thì quá trình tiếp tục, NAS thu nhận địa chỉ của
Gateway đích.
Một đường hầm được thiết lập từ NAS tới Gateway đích nếu giữa chúng chưa có
đường hầm nào. Việc thành lập đường hầm bao gồm giai đoạn xác thực từ ISP tới
Gateway đích để chống lại tấn công bởi kẻ thứ 3.
13
-
-
Một kết nối PPP mới được tạo ra trong đường hầm, điều này có tác động kéo dài phiên
PPP từ người sử dụng ở xa tới Home Gateway. Kết nối này được thiết lập như sau:
Home Gateway tiếp nhận các lựa chọn và tất cả thông tin xác thực PAP/CHAP như đã
thỏa thuận bởi đầu cuối người sử dụng và NAS. Home Gateway chấp nhận kết nối hay
thỏa thuận lại LCP và xác thực lại người sử dụng.
Khi NAS tiếp nhận lưu lượng dữ liệu từ người sử dụng, nó đóng gói lưu lượng vào
trong các khung L2F và hướng chúng vào trong đường hầm.
Tại Home Gateway, khung L2F được tách bỏ và dữ liệu đóng gói được hướng tới
mạng công ty.
Khi hệ thống đã thiết lập điểm đích, đường hầm và những phiên kết nối, ta phải điều
khiển và quản lý lưu lượng L2F như sau:
- Ngăn cản tạo những điểm đích, đường hầm và phiên mới.
- Đóng và mở lại tất cả hay chọn lựa những điểm đích, đường hầm và phiên.
- Có khả năng kiểm tra tổng UDP.
- Thiết lập thời gian rỗi cho hệ thống và lưu trữ cơ sở dữ liệu của các đường hầm và kết
nối.
Ưu và nhược điểm của L2F
Ưu điểm:
- Cho phép thiết lập đường hầm đa giao thức
- Được hỗ trợ bởi nhiều nhà cung cấp
Nhược điểm:
- Không có mã hóa
- Hạn chế trong việc xác thực người dùng
- Không có điều khiển luồng cho đường hầm
2.1.2. Giao thức PPTP (Point-to-Point Tunneling Protocol)
PPTP là kết quả của sự nỗ lực chung giữa Microsoft và một loạt các nhà cung cấp thiết
bị mạng như 3Com, Ascend Communications, ECI Telematics và U.S Robotics. Ban đầu,
những công ty này thành lập PPTP Forum và đưa ra các thông số kỹ thuật mô tả PPTP và sau
đó được gửi đến IETF để được xem xét như là một tiêu chuẩn Internet vào năm 1996. Ý
tưởng cơ sở của giao thức này là tách các chức năng chung và riêng của truy nhập từ xa, lợi
dung cơ sở hạ tầng Internet sẵn có để tạo kết nối bảo mật giữa người dùng ở xa và mạng riêng
mà họ được phép truy nhập. Người dùng ở xa chỉ việc kết nối tới nhà cung cấp dịch vụ
Internet ở địa phương là có thể tạo đường hầm bảo mật tới mạng riêng của họ.
Tương tự giao thức L2F, giao thức PPTP (Point-to-Point Tunneling Protocol) ban đầu
được phát triển và được thiết kế để giải quyết vấn đề tạo và duy trì các đường hầm VPN trên
các mạng công cộng dựa vào TCP/IP bằng cách sử dụng PPP. PPTP sử dụng giao thức đóng
gói định tuyến chung (GRE) được mô tả lại để đóng và tách gói PPP. Giao thức này cho phép
PPTP xử lý các giao thức khác không phải IP như IPX, NetBEUI một cách mềm dẻo.
14
Hình 2.4 – Mô hình kết nối PPTP
2.1.2.1. Khái quát hoạt động của PPTP
PPP đã trở thành giao thức truy nhập Internet và các mạng IP rất phổ biến hiện nay, nó
làm việc ở lớp liên kết dữ liệu (Datalink Layer) trong mô hình OSI, PPP bao gồm các phương
thức đóng, tách gói cho các loại gói dữ liệu khác nhau để truyền nối tiếp, PPP có thể đóng các
gói tin IP, IPX và NetBEUI để truyền đi trên kết nối điểm – điểm từ máy gửi đến máy nhận.
PPTP đóng gói các khung dữ liệu của giao thức PPP và các IP datagram để truyền qua
mạng IP (Internet hoặc Intranet). PPTP dùng một kết nối TCP (gọi là kết nối điều khiển
PPTP) để khởi tạo, duy trì, kết thúc đường hầm và một phiên bản của giao thức GRE để đóng
gói các khung PPP. Phần tải tin của khung PPP có thể được mật mã hóa và/hoặc nén.
PPTP sử dụng PPP để thực hiện các chức năng:
-
Thiết lập và kết thúc kết nối vật lý
Xác thực người sử dụng
Tạo các gói dữ liệu PPP
PPTP giả định tồn tại một mạng IP giữa PPTP client và PPTP server. PPTP client có
thể được kết nối trực tiếp thông qua việc dial-up tới máy chủ truy nhập mạng NAS để thiết
lập kết nối IP. Khi một kết nối PPP được thiết lập thì người dùng thường đã được xác thực,
đây là giai đoạn tùy chọn trong PPP, tuy nhiên nó luôn được cung cấp bởi các ISP.
Việc xác thực trong quá trình thiết lập kết nối dựa trên PPTP sử dụng các cơ chế xác
thực của kết nối PPP. Các cơ chế xác thực có thể là:
-
EAP (Extensible Authentication Protocol): giao thức xác thực mở rộng
CHAP (Challenge Handshake Authentication Protocol): giao thức xác thực đòi hỏi bắt
tay.
PAP (Password Authentication Protocol): giao thức xác thực mật khẩu.
Với PAP, mật khẩu được gửi qua kết nối dưới dạng văn bản đơn giản (clear text),
không có bảo mật. CHAP là một giao thức xác thực mạnh hơn sử dụng phương thức bắt tay
15
ba bước. CHAP chống lại các vụ tấn công quay lại bằng cách sử dụng các giá trị thách đố
(Challenge Value) duy nhất và không thể đoán trước được.
PPTP cũng thừa hưởng vật mật mã và/hoặc nén phần tải tin từ PPP. Để mật mã phần
tải tin, PPP có thể sử dụng phương thức mã hóa điểm – tới – điểm MPPE (Microsoft Point to
Point Encryption). MPPE chỉ cung cấp mật mã mức truyền dẫn, không cung cấp mật mã đầu
cuối đến đầu cuối. Nếu cần sử dụng mật mã đầu cuối đến đầu cuối thì có thể sử dụng IPSec
để mật mã lưu lượng IP giữa các đầu cuối sau khi đường hầm PPTP đã được thiết lập.
Sau khi PPP thiết lập kết nối, PPTP sử dụng các qui luật đóng gói của PPP để đóng các
gói truyền trong đường hầm. Để tận dụng ưu điểm của kết nối tạo ra bởi PPP, PPTP định
nghĩa hai loại gói là gói điều khiển và gói dữ liệu, sau đó gán chúng vào hai kênh riêng là
kênh điều khiển và kênh dữ liệu. PPTP phân tách các kênh điều khiển và kênh dữ liệu thành
luồng điều khiển với giao thức TCP và luồng dữ liệu với giao thức IP. Kết nối TCP tạo giữa
máy trạm PPTP và máy chủ PPTP được sử dụng để truyền tải thông báo điều khiển.
Các gói dữ liệu là dữ liệu thông thường của người dùng, các gói điều khiển được gửi
theo chu kỳ để lấy thông tin về trạng thái kết nối và quản lý báo hiệu giữa ứng dụng khách
PPTP và máy chủ PPTP. Các gói điều khiển cũng được dùng để gửi các thông tin quản lý
thiết bị, thông tin cấu hình giữa hai đầu đường hầm.
2.1.2.2. Duy trì đường hầm bằng kết nối điều khiển PPTP
Kết nối điều khiển PPTP là kết nối giữa địa chỉ IP của máy trạm PPTP (cổng TCP
được cấp phát ngẫu nhiên) và địa chỉ IP của máy chủ PPTP (sử dụng cổng mặc định là 1723).
Kết nối điều khiển PPTP mang các bản tin điều khiển và quản lý được sử dụng để duy trì
đường hầm PPTP. Các bản tin này bao gồm PPTP echo-request và PPTP echo-reply định kỳ
để phát hiện các lỗi kết nối giữa máy trạm và máy chủ PPTP. Các gói của kết nối điều khiển
PPTP bao gồm tiêu đề IP, tiêu đề TCP, bản tin điều khiển PPTP và tiêu đề, phần đuôi của lớp
liên kết dữ liệu.
Tiêu đề liên
kết dữ liệu
Tiêu đề IP
Tiêu đề
TCP
Bản tin điều
khiển PPTP
Phần đuôi liên
kết dữ liệu
Hình 2.5 – Gói dữ liệu kết nối điều khiển PPTP
2.1.2.3. Đóng gói dữ liệu đường hầm PPTP
Đóng gói khung PPP và GRE
Dữ liệu đường hầm PPTP được đóng gói thông qua nhiều mức, hình dưới đây mô tả
cấu trúc dữ liệu đã được đóng gói:
16
Tiêu đề liên
kết dữ liệu
Tiêu đề
IP
Tiêu đề
GRE
Tiêu đề
PPP
Tải PPP được mã hóa
(IP, IPX, NetBEUI)
Phần đuôi liên
kết dữ liệu
Hình 2.6 – Gói dữ liệu đường hầm PPTP
Phần tải của khung PPP ban đầu được mã hóa và đóng gói với tiêu đề PPP để tạo ra
khung PPP. Khung PPP sau đó được đóng gói với phần tiêu đề của phiên bản giao thức GRE
sửa đổi.
GRE là giao thức đóng gói chung, cung cấp cơ chế đóng gói dữ liệu để định tuyến qua
mạng IP. Đối với phần PPTP, phần tiêu đề của GRE được sửa đổi một số điểm như sau:
-
Một trường xác nhận 32bit được thêm vào.
Một bit xác nhận được sử dụng để chỉ định sự có mặt của trường xác nhận 32bit.
Trường Key được thay thế bằng trường độ dài Payload 16bit và trường chỉ số cuộc
gọi 16bit. Trường chỉ số cuộc gọi được thiết lập bởi máy trạm PPTP trong quá trình
khởi tạo đường hầm PPTP.
Đóng gói IP
Phần tải PPP (đã được mật mã) và các tiêu đề GRE sau đó được đóng gói với một tiêu
đề IP chứa các thông tin địa chỉ nguồn và đích thích hợp cho máy trạm và máy chủ PPTP.
Đóng gói lớp liên kết dữ liệu
Để có thể truyền qua mạng LAN hoặc WAN, gói IP cuối cùng sẽ được đóng gói với
một tiêu đề và phần đuôi của lớp liên kết dữ liệu ở giao diện vật lý đầu ra. Ví dụ, nếu gói IP
được gửi qua giao diện Ethernet, nó sẽ được đóng gói với phần tiêu đề và đuôi Ethernet. Nếu
gói được gửi qua đường truyền WAN điểm – tới – điểm, nó sẽ được đóng gói với phần tiêu đề
và đuôi của giao thức PPP.
Xử lý dữ liệu tại đầu cuối đường hầm PPTP
Khi nhận được dữ liệu đầu cuối đường hầm PPTP, máy trạm và máy chủ PPTP sẽ thực
hiện các bước sau:
-
Xử lý loại bỏ phần tiêu đề và đuôi của lớp liên kết dữ liệu
Xử lý và loại bỏ tiêu đề IP
Xử lý và loại bỏ tiêu đề GRE và PPP
Giải mã và/hoặc giải nén phần tải PPP (nếu cần thiết)
Xử lý phần tải tin để nhận hoặc chuyển tiếp
2.1.2.4. Ưu và nhược điểm của PPTP
Ưu điểm của PPTP là được thiết kế để hoạt động ở lớp 2 trong khi IPSec chạy ở lớp 3
của mô hình OSI. Bằng cách hỗ trợ việc truyền dữ liệu ở lớp 2, PPTP có thể truyền trong
17
đường hầm bằng các giao thức khác IP (ví dụ IPX, NetBEUI...) trong khi IPSec chỉ có thể
truyền các gói IP trong đường hầm.
Tuy nhiên, PPTP là một giải pháp tạm thời vì hầu hết các nhà cung cấp đều có kế
hoạch thay thế PPTP bằng L2TP khi giao thức này đã được chuẩn hóa. PPTP thích hợp cho
việc dial-up truy nhập với số lượng người dùng giới hạn hơn là cho VPN kết nối LAN-LAN.
Một vấn đề của PPTP là xử lý xác thực người dùng thông qua Windows Server hay thông qua
RADIUS. Máy chủ PPTP cũng quá tải với một số lượng lớn người dùng dial-up hay một
lượng lớn dữ liệu truyền qua, mà điều này là một yêu cầu của kết nối LAN-LAN.
2.1.3. Giao thức định đường hầm lớp 2 (L2TP - Layer 2 Tunneling Protocol)
Để tránh việc hai giao thức định đường hầm không tương thích cùng tồn tại gây khó
khăn cho người sử dụng, IETF đã kết hợp 2 giao thức L2F và PPTP và phát triển thành L2TP.
L2TP được xây dựng trên cơ sở tận dụng các ưu điểm của PPTP và L2F, đồng thời có thể sử
dụng được trong tất cả các trường hợp ứng dụng của hai giao thức này.
Một đường hầm L2TP có thể được khởi tạo từ một PC ở xa dial-up về LNS (L2TP
Network Server) hay từ LAC (L2TP Access Concentrator) về LNS. Mặc dù L2TP vẫn dùng
PPP nhưng L2TP định nghĩa cơ chế tạo đường hầm của riêng nó tùy thuộc vào phương tiện
truyền chứ không dùng GRE.
Hình 2.7 – Mô hình kết nối sử dụng L2TP
L2TP đóng gói các khung PPP để truyền qua mạng IP, X25, Frame Relay hoặc ATM,
tuy nhiên hiện nay mới chỉ có L2TP trên mạng IP được định nghĩa. Khi truyền qua mạng IP,
các khung L2TP được đóng gói như các bản tin UDP. L2TP có thể được sử dụng như một
giao thức định đường hầm thông qua Internet hoặc các mạng riêng Intranet. L2TP dùng các
bản tin UDP qua mạng IP cho các dữ liệu đường hầm cũng như các dữ liệu duy trì đường
hầm. Phần tải của khung PPP đã đóng gói có thể được mã hóa và nén. Mã hóa trong các kết
nối L2TP thường được thực hiện bởi IPSec ESP (chứ không phải là MPPE như đối với
18
PPTP). Ta cũng có thể tạo kết nối L2TP không sử dụng mật mã IPSec, tuy nhiên đây không
phải là kết nối IP-VPN vì dữ liệu riêng được đóng gói bởi L2TP không được mã hóa. Các kết
nối L2TP không mã hóa có thể được sử dụng tạm thời để sửa các lỗi kết nối L2TP dùng
IPSec.
L2TP giả định tồn tại mạng IP giữa máy trạm (VPN client dùng giao thức đường hầm
L2TP và IPSec) và máy chủ L2TP. Máy trạm L2TP có thể được kết nối trực tiếp với mạng IP
để truy nhập tới máy chủ L2TP hoặc gián tiếp thông qua việc dial-up tới NAS (máy chủ truy
nhập mạng) để thiết lập kết nối IP. Việc xác thực trong quá trình hình thành đường hầm L2TP
phải sử dụng các cơ chế xác thực trong kết nối PPP như EAP, MS-CHAP, CHAP, PAP. Máy
chủ L2TP là máy chủ IP-VPN sử dụng giao thức L2TP với một giao diện nối với Internet và
một giao diện khác nối với mạng Intranet.
Giống như PPTP, L2TP cũng dùng hai kiểu bản tin là điều khiển và dữ liệu. Các bản
tin điều khiển chịu trách nhiệm thiết lập, duy trì và hủy các đường hầm. Các bản tin dữ liệu
đóng gói các khung PPP được truyền trong đường hầm. Các bản tin điều khiển dùng cơ chế
điều khiển tin cậy bên trong L2TP để đảm bảo việc phân phối, trong khi các bản tin dữ liệu
không được gửi lại khi bị mất trên đường truyền.
2.1.3.1. Duy trì đường hầm bằng bản tin điều khiển L2TP
Không giống như PPTP, việc duy trì đường hầm L2TP không được thực hiện thông
qua một kết nối TCP riêng biệt. Các lưu lượng điều khiển và duy trì cuộc gọi được gửi đi như
các bản tin UDP giữa máy trạm và máy chủ L2TP (đều được sử dụng cổng UDP 1701).
Các bản tin điều khiển L2TP qua mạng IP được gửi như các gói UDP, gói UDP lại
được mã hóa bởi IPSec ESP như hình dưới đây.
Tiêu đề
liên kết
dữ liệu
Tiêu
đề
IP
Tiêu đề
IPSec ESP
Tiêu đề
UDP
Bản tin
L2TP
Phần đuôi
IPSec ESP
Phần đuôi
xác thực
IPSec ESP
Phần đuôi
liên kết
dữ liệu
Mã hóa bởi IPSec
Hình 2.8 – Bản tin điều khiển L2TP
Vì không sử dụng kết nối TCP nên L2TP dùng thứ tự bản tin để đảm bảo việc truyền
các bản tin L2TP. Trong bản tin điều khiển L2TP, trường Next-Received (tương tự như TCP
Acknowledgment) và Next-Sent (tương tự như TCP Sequence Number) được sử dụng để duy
trì các bản tin điều khiển. Các gói không đúng thứ tự bị loại bỏ, các trường Next-Sent và
Next-Received cũng có thể được sử dụng để truyền dẫn tuần tự và điều khiển luồng cho các
dữ liệu đường hầm.
L2TP hỗ trợ nhiều cuộc gọi trên mỗi đường hầm. Trong bản tin điều khiển L2TP và
phần tiêu đề L2TP của dữ liệu đường hầm có một mã số đường hầm (Tunnel ID) để xác định
19
đường hầm và một mã nhận dạng cuộc gọi (Call ID) để xác định cuộc gọi trong đường hầm
đó.
2.1.3.2. Đóng gói dữ liệu đường hầm L2TP
Dữ liệu L2TP được thực hiện thông qua nhiều mức đóng gói như sau:
Đóng gói L2TP: Phần tải PPP ban đầu được đóng gói với một tiêu đề PPP và
một tiêu đề L2TP.
Đóng gói UDP: Gói L2TP sau đó được đóng gói với một tiêu đề UDP, các địa
chỉ cổng nguồn và đích được đặt bằng 1701.
Đóng gói IPSec: Tùy thuộc vào chính sách IPSec, gói UDP được mã hóa và
đóng gói với tiêu đề IPSec ESP, đuôi IPSec ESP và đuôi IPSec Authentication.
Đóng gói IP: Gói IPSec được đóng gói với tiêu đề IP chứa địa chỉ IP nguồn và
đích của máy trạm và máy chủ.
Đóng gói lớp liên kết dữ liệu: Để truyền đi được trên đường truyền LAN hoặc
WAN, gói IP cuối cùng sẽ được đóng gói với phần tiêu đề và đuôi tương ứng
với kỹ thuật lớp liên kết dữ liệu của giao diện vật lý đầu ra. Ví dụ, khi gói IP
được gửi vào giao diện Ethernet, nó sẽ được đóng gói với tiêu đề và đuôi
Ethernet. Khi các gói được gửi trên đường truyền WAN điểm - tới - điểm, chúng
sẽ được đóng gói với tiêu đề và đuôi PPP.
Hình dưới đây chỉ ra cấu trúc cuối cùng của gói dữ liệu đường hầm L2TP trên nền
IPSec.
Tiêu đề
liên kết dữ
liệu
Tiêu đề
IP
Tiêu đề
IPSec ESP
Tiêu đề
UDP
Tiêu đề
L2TP
Tiêu đề
PPP
Tải PPP
(IP, IPX,
NetBEUI)
Phần đuôi
IPSec ESP
Phần đuôi
nhận thực
IPSec ESP
Phần đuôi
liên kết dữ
liệu
Được mã hóa
Được xác thực
Hình 2.9 – Đóng gói dữ liệu đường hầm L2TP
2.1.3.3. Xử lý dữ liệu tại đầu cuối đường hầm L2TP trên nền IPSec
Khi nhận được dữ liệu đường hầm L2TP trên nên IPSec, máy trạm và máy chủ L2TP
sẽ thực hiện các bước sau:
- Xử lý loại bỏ tiêu đề và đuôi của lớp liên kết dữ liệu.
- Xử lý và loại bỏ tiêu đề IP.
- Dùng phần đuôi IPSec ESP Authentication để xác thực tải IP và tiêu đề IPSec ESP.
- Dùng tiêu đề IPSec ESP để giải mã phần gói đã được mã hóa.
- Xử lý tiêu đề UDP và gửi gói tới L2TP.
- L2TP dùng chỉ số đường hầm và chỉ số cuộc gọi trong tiêu đề L2TP để xác định
đường hầm L2TP cụ thể.
20
- Dùng tiêu đề PPP để xác định tải PPP và chuyển tiếp nó tới đúng giao thức để xử lý.
2.1.3.4. Các thành phần của hệ thống VPN dựa trên L2TP
Như đã minh họa trên hình 2.7, một hệ thống VPN dựa trên L2TP bao gồm các thành
phần chủ yếu sau đây:
Máy chủ L2TP
Máy chủ L2TP có 2 chức năng chính là đóng vai trò là điểm kết thúc của đường hầm
L2TP và chuyển tiếp các gói từ đường hầm đến mạng LAN riêng hay ngược lại. Máy chủ
chuyển các gói đến máy đích bằng cách xử lý gói L2TP để có được địa chỉ mạng của máy
tính đích. Không như máy chủ PPTP, máy chủ L2TP không có khả năng lọc các gói, chức
năng lọc gói trong L2TP được thực hiện bởi tường lửa. Tuy nhiên, trong thực tế, người ta
thường tích hợp máy chủ L2TP và tường lửa, việc tích hợp này mang lại một số ưu điểm hơn
so với PPTP là:
- L2TP không đòi hỏi chỉ có một cổng duy nhất gán cho tường lửa như trong PPTP,
chương trình quản lý có thể tùy chọn cổng để gán cho tường lửa, điều này gây khó
khăn cho kẻ tấn công khi cố gắng tấn công vào một cổng khi cổng đó có thể dễ dàng
thay đổi.
- Luồng dữ liệu và thông tin điều khiển được truyền trên cùng một giao thức UDP nên
việc thiết lập tường lửa sẽ đơn giản hơn. Do một số tường lửa không hỗ trợ giao thức
GRE nên chúng tương thích với L2TP hơn là với PPTP.
Phần mềm client L2TP
Nếu như các thiết bị của ISP đã hỗ trợ L2TP thì không cần bổ sung phần cứng hay
phần mềm nào cho các máy trạm, chỉ cần kết nối chuẩn PPP là đủ. Tuy nhiên với các thiết lập
như vậy thì không sử dụng được mã hóa của IPSec. Do vậy, ta nên sử dụng các phần mềm
client tương thích L2TP cho kết nối L2TP VPN. Một số đặc điểm của phần mềm client L2TP
là:
- Tương thích với các thành phần khác của IPSec như máy chủ mã hóa, giao thức
chuyển khóa, giải thuật mã hóa...
- Đưa ra một thông báo rõ ràng khi IPSec đang hoạt động.
- Hàm băm (hashing) xử lý được các địa chỉ IP động.
- Có cơ chế bảo mật khóa (mã hóa khóa với mật khẩu).
- Có cơ chế chuyển đổi mã hóa một cách tự động và định kỳ.
- Chặn hoàn toàn các lưu lượng không IPSec.
Bộ tập trung truy nhập mạng
ISP cung cấp dịch vụ L2TP cần phải cài một NAS cho phép L2TP để hỗ trợ các máy
trạm L2TP chạy trên nền cách hệ điều hành khác nhau như Unix, Windows, Macintosh... Các
ISP cũng có thể cung cấp dịch vụ L2TP mà không cần phải thêm các thiết bị hỗ trợ L2TP và
21
máy chủ truy nhập của họ, điều này đòi hỏi tất cả người dùng phải có phần mềm client L2TP
tại máy của mình. Khi đó, người dùng có thể sử dụng dịch vụ của nhiều ISP trong trường hợp
mô hình mạng của họ rộng lớn về mặt địa lý.
2.1.3.5. Ưu và nhược điểm của L2TP
L2TP là một giao thức quay số truy nhập VPN phát triển muộn, nó được phối hợp
những đặc tính tốt nhất của PPTP và L2F. Hầu hết các nhà cung cấp sản phẩm PPTP đều đưa
ra các sản phẩm tương thích với L2TP.
Mặc dù L2TP chủ yếu chạy trên mạng IP nhưng nó cũng có khả năng chạy trên các
mạng Frame Relay hoặc ATM, điều này làm cho nó càng thêm phổ biến. L2TP cho phép một
lượng lớn khách hàng từ xa được kết nối vào VPN cũng như các kết nối LAN-LAN có dung
lượng lớn. L2TP còn có cơ chế điều khiển luồng để làm giảm tắc nghẽn trên đường hầm.
L2TP cho phép thiết lập nhiều đường hầm với cùng LAC và NLS, mỗi đường hầm có
thể gán cho một người dùng xác định hoặc một nhóm người dùng và gán cho môi trường
khác nhau tùy theo thuộc tính chất lượng dịch vụ của người sử dụng.
2.2. Bộ giao thức IPSec (IP Security Protocol)
IPSec thực chất là một sự kết hợp của các chuẩn được định nghĩa trong RFC 2406, nó
chỉ là một khung của các tập giao thức chuẩn mở rộng được thiết kế để cung cấp tính xác
thực và toàn vẹn dữ liệu. Giao thức IPSec làm việc tại tầng 3 của mô hình OSI. Các giao thức
bảo mật trên Internet khác như SSL, TLS và SSH được thực hiện từ tầng Transport trở lên
(tầng 4 đến tầng 7 của mô hình OSI). Điều này tạo ra tính mềm dẻo cho IPSec. Giao thức này
có thể hoạt động tại tầng 4 với TCP, UDP và hầu hết các giao thức sử dụng tại tầng này.
IPSec bảo đảm tính tin cậy, tính toàn vẹn và tính xác thực của dữ liệu khi đi qua mạng
IP công cộng. IPSec định nghĩa hai loại tiêu đề cho gói IP điều khiển quá trình xác thực và
mã hóa: loại thứ nhất là xác thực tiêu đề AH (Authentication Header), loại thứ hai là đóng gói
tải tin an toàn ESP (Encapsulation Security Payload ESP). Xác thực tiêu đề AH đảm bảo tính
toàn vẹn cho tiêu đề gói và dữ liệu. Trong khi đó đóng gói tải tin an toàn ESP thực hiện mã
hóa và đảm bảo tính toàn vẹn cho gói dữ liệu nhưng không bảo vệ tiêu đề cho gói IP như AH.
IPsec sử dụng giao thức trao đổi khóa IKE (Internet Key Exchange) để thỏa thuận liên kết
bảo mật SA (Security Association) giữa hai thực thể và trao đổi các thông tin khóa. IKE cần
được sử dụng phần lớn trong các ứng dụng thực tế để đem lại sự truyền tải thông tin an toàn
trên diện rộng.
2.2.1. Cấu trúc bảo mật
IPSec sử dụng các phương thức cung cấp mật mã (cryptographic) nhằm bảo mật gói
tin (packet) trong quá trình truyền tải, phương thức xác thực và thiết lập các thông số mã hoá.
IPSec xây dựng khái niệm về bảo mật trên nền tảng IP. Một sự kết hợp bảo mật đơn
giản khi kết hợp các thuật toán và các thông số (ví dụ như các khoá) là nền tảng trong việc mã
22
hoá và xác thực một chiều. Tuy nhiên, trong các giao tiếp hai chiều, các phương thức bảo mật
sẽ làm việc với nhau và đáp ứng quá trình giao tiếp. Thực tế lựa chọn các thuật toán mã hoá
và xác thực lại phụ thuộc vào người quản trị bởi vì IPSec bao gồm một nhóm các phương
thức bảo mật đáp ứng mã hoá và xác thực cho mỗi gói tin IP.
2.2.2. Hiện trạng
IPSec là một phần bắt buộc của IPv6, có thể được lựa chọn khi sử dụng IPv4. Trong
khi các chuẩn đã được thiết kế cho các phiên bản IP giống nhau, phổ biến hiện nay là áp dụng
và triển khai trên nền tảng IPv4. IPSec được định nghĩa từ RFC 1825 đến 1829 và được phổ
biến vào năm 1995. Năm 1998, được nâng cấp với các phiên bản RFC 2401-2412, nó không
tương thích với chuẩn 1825-1829. Trong tháng 12 năm 2005, thế hệ thứ ba của IPSec được
mô tả trong RFC 4301-4309.
2.2.3. Chế độ làm việc của IPSec
IPSec cung cấp hai chế độ xác thực và mã hóa mức cao để thực hiện đóng gói thông
tin, đó là chế độ “truyền tải” và chế độ “đường hầm”. Sau đây chúng ta sẽ xét đến hai chế độ
này trước khi tìm hiểu về các giao thức AH và ESP.
2.2.3.1. Chế độ truyền tải (Transport Mode)
Trong chế độ này, vấn đề an ninh được cung cấp bởi các giao thức lớp cao trong mô
hình OSI (từ lớp 4 trở lên). Chế độ này bảo vệ phần tải tin của gói nhưng vẫn để phần tiêu đề
IP ban đầu ở dạng gốc như trong nguyên bản. Địa chỉ IP ban đầu này được sử dụng để định
tuyến gọi qua Internet.
AH – chế độ truyền tải
Tiêu đề
gốc
Tiêu đề
AH
Tải tin
Được mã hóa
ESP – chế độ truyền tải
Tiêu đề
gốc
Tiêu đề
AH
Tải tin
Được mã hóa
Được xác thực
Hình 2.10 – Xử lý gói tin IP ở chế độ truyền tải
Chế độ truyền tải này có ưu điểm là chỉ thêm vào gói IP ban đầu một số ít bytes,
nhược điểm của chế độ này là nó cho phép các thiết bị trong mạng nhìn thấy địa chỉ nguồn và
đích của gói tin và có thể thực hiện một số xử lý (ví dụ như phân tích lưu lượng) dựa trên
thông tin của tiêu đề IP. Tuy nhiên, nếu dữ liệu được mã hóa bởi ESP thì sẽ không biết được
23
thông tin cụ thể bên trong gói IP là gì. Theo IETF thì chế độ truyền tải chỉ có thể được sử
dụng khi hai hệ thống đầu cuối IP-VPN có thực hiện IPSec.
2.2.3.2. Chế độ đường hầm (Tunnel Mode)
Trong chế độ đường hầm, toàn bộ gói tin IP ban đầu bao gồm cả tiêu đề được xác thực
hoặc mã hóa, sau đó được đóng gói với một tiêu đề IP mới. Địa chỉ IP bên ngoài được sử
dụng để định tuyến gói IP qua Internet.
Chế độ này cho phép các thiết bị mạng như bộ định tuyến thực hiện xử lý IPSec thay
cho các trạm đầu cuối (host).
Tiêu đề
mới
AH – chế độ đường hầm
Tiêu đề
AH
Tiêu đề
gốc
Tải tin
Được xác thực
ESP – chế độ đường hầm
Tiêu đề
mới
Tiêu đề
ESP
Tiêu đề
gốc
Tải tin
Được mã hóa
Được xác thực
Hình 2.11 – Xử lý gói tin IP ở chế độ đường hầm
2.2.4. Các thành phần bên trong IPSec
2.2.4.1. Giao thức đóng gói tải tin an toàn ESP
ESP là giao thức có thể được sử dụng cho việc cung cấp tính bảo mật và xác thực các
gói dữ liệu, tránh khỏi sự nhòm ngó của người dùng không được phép. ESP cung cấp phần tải
tin của gói dữ liệu, ESP cũng cung cấp sự xác thực cho gói tin IP nội bộ. Sự xác thực cung
cấp tính hợp lệ về nguồn gốc và tính toàn vẹn của gói dữ liệu. ESP là giao thức hỗ trợ và kiểu
mã hoá đối xứng như Blowfish, DES. Thuật toán mã hoá dữ liệu mặc định sử dụng trong
IPSec là thuật toán DES 56 bit. Trong một số sản phẩm và thiết bị mạng của các hãng lớn
thiết kế cho VPN còn sử dụng phương pháp mã hoá dữ liệu tốt hơn bằng cách sử dụng thuật
toán 3DES (Triple Data Encryption Security) 128 bits. Giao thức ESP có thể được sử dụng
độc lập hoặc kết hợp với giao thức chứng thực đầu mục AH (Authentication Header) tuỳ
thuộc vào từng môi trường. Cả hai giao thức ESP và AH đều cung cấp tính toàn vẹn, sự xác
thực của các gói dữ liệu.
Các trường của ESP
ESP thêm một header và trailer vào xung quanh nội dung của mỗi gói tin. ESP Header
được cấu thành bởi hai trường là SPI (Security Parameters Index) và Sequence Number.
24
Hình 2.12 – Các trường của ESP
-
SPI (32 bits): Đầu cuối của mỗi kết nối IPSec được tuỳ chọn giá trị SPI. Phía nhận sử
dụng giá trị SPI với địa chỉ IP đích và giao thức IPSec để xác định chính sách SA duy
nhất mà nó được áp cho gói tin.
-
Sequence Number: Thường được dùng để cung cấp dịch vụ anti-replay. Khi SA được thiết
lập, chỉ số này được khởi đầu về 0. Trước khi mỗi gói tin được gửi, chỉ số này luôn tăng
lên 1 và được đặt trong ESP header. Phần kế tiếp của gói tin là trường tải tin, nó được tạo
bởi dữ liệu tải tin được mã hoá.
-
Phần thứ ba của gói tin là ESP Trailer, nó chứa ít nhất là hai trường:
Padding (0-255 bytes): Được thêm vào cho đủ kích thước của mỗi gói tin.
Pad Length: Chiều dài của Padding
Next Header: Trong tunnel mode, Payload là gói tin IP, giá trị Next Header được
cài đặt là 4 cho IP-in-IP. Trong Transport mode, Payload luôn là giao thức lớp 4.
Nếu giao thức lớp 4 là TCP thì trường giao thức trong IP là 6, giao thức lớp 4 là
UDP thì trường giao thức IP là 17. Mỗi ESP Trailer chứa một giá trị Next Header.
-
Authentication Data: Trường này chứa giá trị kiểm tra tính toàn vẹn ICV (Integrity Check
Value) cho gói tin ESP.
Hình 2.13 – Một ví dụ mẫu của ESP Header
25
Quá trình mã hoá và hoạt động của giao thức ESP
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 khóa (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 nhỏ, và sau đó thực
hiện thao tác mã hoá nhiều lần sử dụng các khối dữ liệu và khóa. Thuật toán mã hoá hoạt
động trong chiều này được gọi là thuật toán mã hóa khối (blocks cipher algorithms).
Hình 2.14 – Minh họa quá trình mã hóa và hoạt động của giao thức ESP
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 khóa
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á.
Ví dụ, ESP sử dụng thuật toán mã hoá là AES - Cipher Block Chaining (AES-CBC), AES
Counter Mode (AES-CTR), và Triple DES (3DES). Khi so sánh với gói tin AH, gói tin ESP
có dạng giống với gói tin AH, tuy nhiên chuỗi mẫu tự có thể xác định được trong AH
Protected Payload nhưng không xác định được trong ESP Protected Payload, vì trong ESP nó
đã được mã hoá.
Hình 2.15 – Một ví dụ gói ESP khi dùng phần mềm packet sniffer
26
Gói tin ESP có chứa 5 đoạn, bao gồm Ethernet Header, IP Header, ESP Header,
Encrypted Data (Payload và ESP Trailer) và Authentication Information (tùy chọn). Dữ liệu
được mã hoá không thể xác định được dù gói tin được truyền trong Transport Mode hay
Tunnel Mode. Tuy nhiên, vì IP Header không được mã hoá, trường giao thức IP trong Header
vẫn phát hiện được giao thức dùng cho Payload (trong trường hợp này là ESP).
2.2.4.2. Giao thức chứng thực đầu mục AH
Trong hệ thống IPSec có một đầu mục đặc biệt, đầu mục chứng thực AH được thiết kế
để cung cấp hầu hết dịch vụ chứng thực cho dữ liệu IP. AH là một trong những giao thức bảo
mật IPSec đảm bảo tính toàn vẹn cho tiêu đề gói và dữ liệu cũng như việc chứng thực người
sử dụng. Nó đảm bảo việc chống phát lại và chống xâm nhập trái phép như một tùy chọn.
Trong những phiên bản đầu của IPSec, giao thức đóng gói tải tin an toàn ESP chỉ thực hiện
mã hóa mà không có chứng thực nên AH và ESP được dùng kết hợp, ở những phiên bản sau
này, ESP đã có thêm khả năng chứng thực. Tuy nhiên AH vẫn được dùng do nó đảm bảo việc
chứng thực cho toàn bộ tiêu đề và dữ liệu cũng như việc đơn giản hóa đối với truyền tải dữ
liệu trên mạng IP chỉ yêu cầu chứng thực.
Hình 2.16 – Ví dụ minh họa AH xác thực và đảm bảo tính toàn vẹn của dữ liệu
-
-
Bước 1: AH sẽ đem gói dữ liệu (packet) bao gồm Payload, IP Header, Key rồi sử dụng
giải thuật Hash (băm) một chiều và cho ra kết quả là một chuỗi số, sau đó chuỗi số này sẽ
được gán vào AH Header.
Bước 2: 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 của đường hầm.
27
-
Bước 3: Router đích sau khi nhận được gói tin bao gồm IP Header, AH Header, Payload
sẽ được sử dụng giải thuật Hash một lần nữa để nhận được kết quả một chuỗi số.
Bước 4: Router ở phía đích 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.
AH Header
Tiêu đề AH bao gồm các trường sau đây:
Hình 2.17 – Các trường trong AH Header
-
Next Header: Trường này dài 8 bits, chứa chỉ số giao thức IP. Trong chế độ Tunnel,
Payload là gói tin IP, giá trị Next Header được cài đặt là 4. Trong chế độ Transport,
Payload luôn là giao thức ở Transport Layer. Nếu giao thức lớp Transport là TCP thì
trường giao thức trong IP là 6. Nếu giao thức lớp transport là UDP thì trường giao thức
trong IP là 17.
-
Payload Length: Trường này chứa chiều dài của AH Header.
-
Reserved: Giá trị này được dành để sử dụng trong tương lai (cho đến thời điểm này nó
được biểu thị bằng các chỉ số 0).
-
Security Parameters Index (SPI): Mỗi đầu cuối của một kết nối IPSec tuỳ ý chọn giá trị
SPI. Hoạt động này chỉ được dùng để nhận dạng cho kết nối. Bên nhận sử dụng giá trị
SPI cùng với địa chỉ IP đích và loại giao thức IPSec (trong trường hợp này là AH) để
xác định chính sách liên kết an ninh SA được dùng cho gói tin (có nghĩa là giao thức
IPSec và các thuật toán nào được dùng để sử dụng cho gói tin).
-
Sequence Number: Chỉ số này tăng lên 1 cho mỗi AH Datagram khi một host gửi có
liên quan đến chính sách SA. Giá trị bắt đầu của bộ đếm là 1, chuỗi số này không bao
giờ được phép ghi đè lên là 0.
-
Authentication Data: Trường này chứa giá trị ICV (Integrity Check Value). Trường
này luôn là bội của 32-bit và phải được đệm vào nếu chiều dài của ICV trong các bytes
chưa đầy.
AH version 3
Phiên bản mới của AH là version 3, phiên bản được phát triển dựa trên phiên bản phác
thảo. Tính năng khác nhau giữa version 2 và version 3 là một vài sự thay đổi đến SPI và tuỳ
28
chọn chỉ số dài hơn. Chuẩn phác thảo version 3 cũng liệt kê thuật toán mã hoá yêu cầu cho
AH. Bản phác thảo uỷ nhiệm hỗ trợ cho HMAC-SHA1-96, giới thiệu thuật toán hỗ trợ mạnh
hơn là AES-XCBC-MAC-96 và cũng giới thiệu thuật toán HMAC-MD5-96.
2.2.4.3. Giao thức trao đổi chìa khoá Internet (IKE)
Trong truyền thông sử dụng giao thức IPSec phải có sự trao đổi khóa giữa hai điểm kết
cuối, do đó đòi hỏi phải có cơ chế quản lý khóa. Có hai phương thức chuyển giao khóa đó là
chuyển khóa bằng tay và chuyển khóa bằng giao thức IKE. Một hệ thống IPSec phụ thuộc
phải hỗ trợ phương thức chuyển khóa băng tay. Phương thức chìa khóa trao tay chẳng hạn
khóa thương mại ghi trên giấy. Phương thức này chỉ phù hợp với số lượng nhỏ các mạng, đối
với mạng lớn phải thực hiện phương thức quản lý khóa tự động. Trong IPSec người ta dùng
giao thức trao đổi chìa khóa IKE (Internet Key Exchange). Giao thức IKE được thiết kế ra để
cung cấp 5 khả năng:
-
Cung cấp những phương tiện cho hai bên về sự thống nhất những giao thức, thuật
toán và những chìa khoá để sử dụng.
Đảm bảo trao đổi khoá đến đúng người dùng.
Quản lý những chìa khoá sau khi được chấp nhận.
Đảm bảo rằng sự điều khiển và trao đổi khoá là an toàn.
Cho phép sự chứng thực động giữa các đối tượng ngang hàng.
Giao thức IKE có các đặc tính sau:
-
Các chìa khoá tự phát sinh và những thủ tục nhận biết.
Tự động làm mới lại chìa khoá.
Giải quyết vấn đề một khoá.
Mỗi một giao thức an toàn (AH, ESP) có một không gian chỉ số an toàn của chính
mình.
Gắn sẵn sự bảo vệ.
Trước khi IPSec gửi xác nhận hoặc mã hoá dữ liệu IP, giữa bên gửi và bên nhận phải
thống nhất về giải thuật mã hoá và chìa khoá mã hoá hoặc những chìa khoá để sử dụng. IPSec
sử dụng giao thức IKE để tự thiết lập những giao thức đàm phán về những chìa khoá sử dụng
cho việc mã hoá, thuật toán sử dụng.
Liên kết an ninh
Dịch vụ bảo mật quan hệ giữa hai hay nhiều thực thế để thỏa thuận truyền thông an
toàn được gọi là liên kết an ninh SA (Security Association).
Liên kết an ninh là một kết nối đơn công, nghĩa là với mỗi cặp truyền thông A và B
nào đó có ít nhất hai SA (một từ A tới B và một từ B tới A). Khi lưu lượng cần truyền trực
tiếp hai chiều qua VPN, giao thức trao đổi khóa IKE thiết lập một cặp SA trực tiếp và sau đó
có thể thiết lập thêm nhiều SA khác, mỗi SA có một thời gian sống riêng. SA được nhận dạng
duy nhất bởi bộ ba gồm có:
29
-
Chỉ số thông số an ninh SPI (Security Parameters Index)
-
Địa chỉ IP đích
-
Chỉ thị giao thức an ninh (AH hay ESP)
Về nguyên tắc, địa chỉ IP đích có thể là một địa chỉ đơn hướng (Unicast), địa chỉ
quảng bá (Broadcast) hoặc địa chỉ nhóm (Multicast). Tuy nhiên, cơ chế quản lý SA của IPSec
hiện nay chỉ được định nghĩa cho những SA đơn hướng.
Liên kết an ninh cũng có hai kiểu là truyền tải (Transport) và đường hầm (Tunnel),
phụ thuộc vào giao thức sử dụng. SA kiểu truyền tải là một liên kết an ninh giữa hai trạm
hoặc được yêu cầu giữa hai hệ thống trung gian dọc trên đường truyền. Trong trường hợp
khác, kiểu truyền tải cũng có thể được sử dụng để hỗ trợ IP-in-IP hay đường hầm GRE qua
các SA kiểu truyền tải. SA kiểu đường hầm là một SA cơ bản được ứng dụng tới một đường
hầm IP. SA giữa hai cổng an ninh là một SA kiểu đường hầm điển hình, giống như một SA
giữa một trạm và một cổng an ninh. Tuy nhiên, trong những trường hợp mà lưu lượng đã
được định hình từ trước như những lệnh SNMP, cổng an ninh làm nhiệm vụ như trạm và kiểu
truyền tải được cho phép.
Cơ sở dữ liệu liên kết an ninh
Có hai cơ sở dữ liệu liên quan đến an ninh là:
-
CSDL chính sách an ninh SPD (Security Policy Database)
CSDL liên kết an ninh SAD (Security Association Database)
SPD chỉnh ra những dịch vụ an ninh được đề nghị cho lưu lượng IP, phụ thuộc vào
những yếu tố như nguồn, đích, chiều đi ra hay đi vào. Nó chứa đựng một danh sách những lối
vào chính sách tồn tại riêng rẽ cho lưu lượng đi vào và đi ra. Các lối vào này có thể xác định
một vài lưu lượng không qua xử lý IPSec, một vài phải được loại bỏ và còn lại thì được xử lý
bởi IPSec. Các lối vào này là tương tự cho firewall hay bộ lọc gói.
SAD chứa thông số về mỗi SA, giống như các tính toán và khóa AH hay ESP, số trình
tự, kiểu giao thức và thời gian sống của SA. Đối với xử lý đi ra, một lối vào SPD trỏ tới một
lối vào trong SAD và SAD sẽ quyết định SA nào được sử dụng cho gói. Đối với xử lý đi vào,
SAD được tham khảo để quyết định gói được xử lý như thế nào.
Hoạt động trao đổi khóa IKE
Kết nối IPSec chỉ được hình thành khi SA đã được thiết lập. Tuy nhiên, bản thân
IPSec không có cơ chế để thiết lập liên kết an ninh. Chính vì vậy, IETF đã chọn phương án
chia quá trình thiết lập kết nối IPSec ra thành hai phần:
-
IPSec cung cấp việc xử lý ở mức gói.
-
IKMP (Internet Key Management Protocol) chịu trách nhiệm thoả thuận các liên
kết an ninh.
Sau khi cân nhắc một số phương án, trong đó có IKE, SKIP (Simple Key Internet
Protocol) và Photuis, IETF đã quyết định chọn IKE là chuẩn để cấu hình SA cho IPSec.
30
Một đường hầm IPSec-VPN được thiết lập giữa hai bên qua các bước sau đây:
-
Bước 1: Quyết định lưu lượng nào cần được quan tâm bảo vệ tại một giao diện yêu
cầu thiết lập phiên thông tin IPSec.
-
Bước 2: Thương lượng chế độ chính (Main mode) hoặc chế độ linh hoạt
(Aggressive modem) sử dụng IKE, kết quả là tạo ra liên kết an ninh IKE (IKE SA)
giữa các bên IPSec.
-
Bước 3: Thương lượng chế độ nhanh (Quick mode) sử dụng IKE, kết quả là tạo ra
hai IPSec SA giữa các bên IPSec.
-
Bước 4: Dữ liệu bắt đầu truyền qua đường hầm mã hóa sử dụng kỹ thuật đóng gói
ESP hay AH hoặc cả hai.
-
Bước 5: Kết thúc đường hầm IPSec-VPN (nguyên nhân có thể là do IPSec SA kết
thúc, hết hạn hoặc bị xóa).
2.2.5. Các vấn đề còn tồn tại trong IPSec
Mặc dù IPSec đã sẵn sàng đưa ra các đặc tính cần thiết để đảm bảo thiết lập kết
nối VPN an toàn thông qua Internet, tuy nhiên nó vẫn còn trong giai đoạn phát triển để
hướng tới sự hoàn thiện. Sau đây là một số vấn đề đặt ra mà IPSec cần phải giải quyết
để hỗ trợ tốt hơn cho việc thực hiện VPN:
-
Tất cả các gói được xử lý theo IPSec sẽ bị tăng kích thước do phải thêm vào
các tiêu đề khác nhau, điều này làm cho thông lượng hiệu dụng của mạng
giảm xuống. Vấn đề này có thể được khắc phục bằng cách nén dữ liệu trước
khi mã hóa, song các kỹ thuật như vậy vẫn còn đang được nghiên cứu và chưa
được chuẩn hóa.
-
Giao thức trao đổi khóa IKE vẫn là công nghệ chưa thực sự khẳng định được
khả năng mình. Phương thức chuyển khóa thủ công lại không thích hợp cho
mạng có số lượng lớn các đối tượng di động.
-
IPSec được thiết kế chỉ để hỗ trợ bảo mật cho lưu lượng IP, không hỗ trợ các
dạng lưu lượng khác.
-
Việc tính toán nhiều giải thuật phức tạp trong IPSec vẫn còn là một vấn đề khó đối
với các trạm làm việc và máy PC năng lực yếu.
-
Việc phân phối phần cứng và phần mềm mật mã vẫn còn bị hạn chế đối với chính
phủ của một số quốc gia.
31
THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT
ACK
AH
ATM
CA
DES
ESP
GRE
ID
IKE
IP
IPX
L2F
L2TP
LAC
LAN
LNS
NAS
NetBEIU
Acknowledgment
Authentication Header
Asynchronous Transfer Mode
Certificate Authority
Data Encryption Standard
Encapsulation Security Payload
Generic Routing Encapsulation
Identity
Internet Key Exchange
Internet Protocol
Internet Packet Exchange
Layer 2 Forwarding
Layer 2 Tunneling Protocol
L2TP Access Concentrator
Local Area Network
L2TP Network Server
Network Access Server
NetBIOS Enhanced User
Interface
OSI
Open Systems Interconnection
PPP
Point to Point Protocol
PPTP
Point to Point Tunnel Protocol
PSTN
Public Switched Telephone
Network
QoS
Quality of Service
RADIUS Remote Authentication Dial-In
User Service
RSA
Chữ cái đầu của 3 tác giả là
Rivest, Shamir, Adleman
SA
Security Association
SHA
Secure Hash Algorithm
SPI
Security Parameters Index
TACACS Terminal Access Controller
Access Control System
TCP
Transmission Control Protocol
UDP
User Datagram Protocol
VPN
Virtual Private Network
WAN
Wide Area Network
Tin báo nhận
Tiêu đề xác thực
Chế độ truyền tải không đồng bộ
Dịch vụ cấp quyền chứng nhận.
Chuẩn mã hoá dữ liệu
Đóng gói tải tin an toàn
Giao thức đóng gói định tuyến chung
Nhận dạng
Giao thức trao đổi khóa Internet
Giao thức Internet
Giao thức trao đổi gói Internet
Giao thức chuyển tiếp lớp 2
Giao thức định đường hầm lớp 2
Bộ tập trung truy nhập giao thức L2TP
Mạng cục bộ
Máy chủ phục vụ L2TP
Máy chủ truy cập mạng
Giao thức người dùng mở rộng trong
NetBIOS
Mô hình liên kết các hệ thống mở
Giao thức điểm - nối - điểm
Giao thức đường hầm điểm - nối - điểm
Mạng điện thoại chuyển mạch công
cộng
Chất lượng dịch vụ
Dịch vụ người sử dụng quay số xác thực
từ xa
Thuật toán mã hóa công khai
Liên kết an ninh
Thuật toán phân tách bảo mật
Chỉ số thông số an ninh
Hệ thống điều khiển truy nhập của bộ
điều khiển truy nhập đầu cuối
Giao thức điều khiển truyền thông
Giao thức dữ liệu đồ người sử dụng
Mạng riêng ảo
Mạng diện rộng
32
TÀI LIỆU THAM KHẢO
1. Giáo trình MẠNG RIÊNG ẢO – TS. Nguyễn Tiến Ban, ThS. Hoàng Trọng Minh,
Học Viện công nghệ Bưu chính - Viễn thông, 2007.
2. Giáo trình MẠNG MÁY TÍNH – TS. Phạm Thế Quế, Học Viện công nghệ Bưu chính
- Viễn thông, 2006.
3. VPNs Illustrated: Tunnels, VPNs, and IPSec - By Jon C. Snader, 10/2005.
4. Network, Telecom Dictionary & Encyclopedia, http://www.networkdictionary.com
33
[...]... mỗi giao thức đều có ưu và nhược điểm khác nhau khi triển khai vào mạng VPN, việc quan trọng là người thiết kế phải kết hợp các giao thức một cách mềm dẻo 2.1 Các giao thức đường hầm Các giao thức đường hầm là nền tảng của công nghệ VPN, có nhiều giao thức đường hầm khác nhau, việc sử dụng giao thức nào liên quan đến các phương pháp xác thực và mã hóa đi kèm Như đã giới thiệu ở trên, các giao thức. .. Protocol VPN Virtual Private Network WAN Wide Area Network Tin báo nhận Tiêu đề xác thực Chế độ truyền tải không đồng bộ Dịch vụ cấp quyền chứng nhận Chuẩn mã hoá dữ liệu Đóng gói tải tin an toàn Giao thức đóng gói định tuyến chung Nhận dạng Giao thức trao đổi khóa Internet Giao thức Internet Giao thức trao đổi gói Internet Giao thức chuyển tiếp lớp 2 Giao thức định đường hầm lớp 2 Bộ tập trung truy nhập giao. .. là giao thức lớp 4 Nếu giao thức lớp 4 là TCP thì trường giao thức trong IP là 6, giao thức lớp 4 là UDP thì trường giao thức IP là 17 Mỗi ESP Trailer chứa một giá trị Next Header - Authentication Data: Trường này chứa giá trị kiểm tra tính toàn vẹn ICV (Integrity Check Value) cho gói tin ESP Hình 2.13 – Một ví dụ mẫu của ESP Header 25 Quá trình mã hoá và hoạt động của giao thức ESP ESP sử dụng mật. .. các tập giao thức chuẩn mở rộng được thiết kế để cung cấp tính xác thực và toàn vẹn dữ liệu Giao thức IPSec làm việc tại tầng 3 của mô hình OSI Các giao thức bảo mật trên Internet khác như SSL, TLS và SSH được thực hiện từ tầng Transport trở lên (tầng 4 đến tầng 7 của mô hình OSI) Điều này tạo ra tính mềm dẻo cho IPSec Giao thức này có thể hoạt động tại tầng 4 với TCP, UDP và hầu hết các giao thức sử... không được mã hoá, trường giao thức IP trong Header vẫn phát hiện được giao thức dùng cho Payload (trong trường hợp này là ESP) 2.2.4.2 Giao thức chứng thực đầu mục AH Trong hệ thống IPSec có một đầu mục đặc biệt, đầu mục chứng thực AH được thiết kế để cung cấp hầu hết dịch vụ chứng thực cho dữ liệu IP AH là một trong những giao thức bảo mật IPSec đảm bảo tính toàn vẹn cho tiêu đề gói và dữ liệu cũng... dụng các phương thức cung cấp mật mã (cryptographic) nhằm bảo mật gói tin (packet) trong quá trình truyền tải, phương thức xác thực và thiết lập các thông số mã hoá IPSec xây dựng khái niệm về bảo mật trên nền tảng IP Một sự kết hợp bảo mật đơn giản khi kết hợp các thuật toán và các thông số (ví dụ như các khoá) là nền tảng trong việc mã 22 hoá và xác thực một chiều Tuy nhiên, trong các giao tiếp hai... tin AH Header Tiêu đề AH bao gồm các trường sau đây: Hình 2.17 – Các trường trong AH Header - Next Header: Trường này dài 8 bits, chứa chỉ số giao thức IP Trong chế độ Tunnel, Payload là gói tin IP, giá trị Next Header được cài đặt là 4 Trong chế độ Transport, Payload luôn là giao thức ở Transport Layer Nếu giao thức lớp Transport là TCP thì trường giao thức trong IP là 6 Nếu giao thức lớp transport... quyết vấn đề tạo và duy trì các đường hầm VPN trên các mạng công cộng dựa vào TCP/IP bằng cách sử dụng PPP PPTP sử dụng giao thức đóng gói định tuyến chung (GRE) được mô tả lại để đóng và tách gói PPP Giao thức này cho phép PPTP xử lý các giao thức khác không phải IP như IPX, NetBEUI một cách mềm dẻo 14 Hình 2.4 – Mô hình kết nối PPTP 2.1.2.1 Khái quát hoạt động của PPTP PPP đã trở thành giao thức truy...Chương 2 CÁC GIAO THỨC TRONG VPN Trong VPN có 4 giao thức chính để thiết lập một “mạng riêng ảo” hoàn chỉnh đó là: L2F - Layer 2 Forwarding Protocol PPTP - Point-to-Point Tunneling Protocol L2TP - Layer 2 Tunneling Protocol IPSec - IP Security Ngoài ra còn một số giao thức khác, tuy nhiên những giao thức này ít được sử dụng bởi sự bất cập của nó đã được... khi tìm hiểu về các giao thức AH và ESP 2.2.3.1 Chế độ truyền tải (Transport Mode) Trong chế độ này, vấn đề an ninh được cung cấp bởi các giao thức lớp cao trong mô hình OSI (từ lớp 4 trở lên) Chế độ này bảo vệ phần tải tin của gói nhưng vẫn để phần tiêu đề IP ban đầu ở dạng gốc như trong nguyên bản Địa chỉ IP ban đầu này được sử dụng để định tuyến gọi qua Internet AH – chế độ truyền tải Tiêu đề gốc