Sử dụng L2TP

Một phần của tài liệu CÁC GIAO THỨC ĐƯỜNG HẦM.doc (Trang 25 - 33)

f) Quản lý khoá

2.3.2Sử dụng L2TP

Bởi vì chức năng chính của L2TP là quay số truy cập VPN thông qua Internet nên các thành phần của L2TP bao gồm: bộ tập trung truy cập mạng, máy chủ L2TP, và các L2TP client. Thành phần quan trọng nhất của L2TP là định nghĩa điểm kết thúc một đường hầm, LAC và LNS. LNS có thể cài đặt ngay tại công ty và điều hành bởi một nhóm làm việc của công ty còn LAC thì thường được hỗ trợ của ISP. Các thành phần cơ bản của L2TP như hình vẽ:

Internet

Client L 2TP

Computer

Computer

Computer

Computer Computer Computer

Máy chủ mạng L 2TP Máy chủ mạng L 2TP Mạng riêng được bảo vệ Mạng riêng được bảo vệ Kết nối LAN -LAN Client L 2TP Client L 2TP Bộ tập trung truy cập mạng L 2TP Kết nối Client -LAN Hình 2.19: Các thành phần cơ bản của L2TP a) Máy chủ mạng L2TP

Máy chủ L2TP có hai chức năng chính là: đóng vai trò là điểm kết thúc của đường hầm PPTP và chuyển các gói đến từ đường hầm đến mạng LAN riêng và ngược lại. Máy chủ chuyển các gói đến máy tính đí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 giố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 tích hợp máy chủ mạng 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ể tuỳ 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 đã biết trong khi cổng đó có thể đã thay đổi.

- Luồng dữ liệu và thông tin điều khiển được truyền trên cùng một 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ợ GRE nên chúng tương thích với L2TP hơn là với PPTP.

b) 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 phần cứng hay phần mềm nào cho các client, chỉ cần kết nối chuẩn PPP là đủ. Tuy nhiên, với các thiết lập trên thì không sử dụng được mã hoá của IPSec. Do vậy ta nên sử dụng các client tương thích L2TP cho L2TP VPN.

Một số đặc điểm của phần mềm client L2TP

- Tương thích với các thành phần khác của IPSec như: máy chủ mã hoá, giao

thức chuyển khoá, giải thuật mã hoá,…

- Đưa ra một chỉ báo rõ ràng khi IPSec đang hoat động.

- Hỗ trợ tải SA về.

- Hàm băm (hashing) xử lý được các địa chỉ IP động.

- Có cơ chế bảo mật khoá (mã hoá khoá với mật khẩu).

- Có cơ chế chuyển đổi mã hoá một cách tự động và định kỳ.

-Chặn hoàn toàn các lưu lượng không IPSec.

c) Các bộ tập trung truy cập mạng

Một ISP cung cấp dịch vụ L2TP cần phải cài một NAS cho phép L2TP để hỗ trợ cho các client L2TP chạy trên các nền khác nhau như Unix, Windows, Macintosh.

Các ISP có thể cung cấp các dịch vụ L2TP mà không cần phải thêm các thiết bị hỗ trợ L2TP vào máy chủ truy cập của họ, điều này đói hỏi tất cả người dùng phải có client L2TP tại máy của họ. Điều này cho phép người dùng có thể sử dụng dịch vụ của nhiều ISP khi mà mô hình mạng của họ rộng lớn về mặt địa lý.

2.3.3 Khả năng áp dụng trong thực tế của L2TP

Việc lựa chọn một nhà cung cấp dịch vụ L2TP có thể thay đổi tuỳ theo yêu cầu thiết kế mạng. Nếu thiết kế một VPN đòi hỏi mã hoá đầu cuối-đầu cuối thì cần cài các client tương thích L2TP tại các host từ xa và thoả thuận với ISP là sẽ xử lý mã hoá từ máy đầu xa đến tận máy chủ của mạng VPN. Nếu xây dựng một

muốn bảo mật dữ liệu khi nó đi trong đường hầm trên Inernet thì thoả thuận với ISP để họ hỗ trợ LAC và mã hoá dữ liệu chỉ từ đoạn LAC đến LNS của mạng riêng.

L2TP là một thế hệ giao thức quay số truy cập mới của VPN. Nó 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 L2TP hoặc sẽ giới thiệu sau này. (adsbygoogle = window.adsbygoogle || []).push({});

Mặc dù L2TP chủ yếu chạy trên mạng IP, nhưng khả năng chạy trên các mạng khác như Frame Relay, ATM đã làm cho nó thêm phổ biến. L2TP cho phép một lượng lớn client từ xa được kết nối vào VPN hay cho các kết nối LAN-LAN có dung lượng lớn. L2TP có cơ chế điều khiển luồng để làm giảm tắc nghẽn trên đường hầm L2TP.

L2TP cho phép thiết lập nhiều đường hầm với cùng LAC và LNS. 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 các người dùng và gán cho các môi trường khác nhau tuỳ theo thuộc tính chất lượng phục vụ QoS của người dùng.

2.4 Giao thức bảo mật IP - IPSEC

Các giao thức nguyên thuỷ TCP/IP không bao gồm các đặc tính bảo mật vốn có. Trong giai đoạn đầu của Internet khi mà người dùng thuộc các trường đại học và các viện nghiên cứu thì vấn đề bảo mật dữ liệu không phải là vấn đề quan trọng như bây giờ khi mà Internet trở nên phổ biến, các ứng dụng thương mại có mặt khắp nơi trên Internet và đối tượng sử dụng Internet rộng hơn bao gồm cả các Hacker.

Để thiết lập tính bảo mật trong IP ở cấp độ gói, IETF đã đưa ra họ giao thức IPSec. Họ giao thức IPSec đầu tiên đựoc dung cho xác thực, mã hoá các gói dữ liệu IP, được chuẩn hoá thành các RFC từ 1825 đến 1829 vào năm 1995. Họ giao thức này mô tả kiến trúc cơ bản của IPSec bao gồm hai loại tiêu đề được sử dụng trong gói IP, gói IP là đơn vị dữ kiệu cơ sở trong mạng IP. IPSec định nghĩa 2 loại tiêu đề cho các gói IP để điều khiển quá trình xác thực và mã hoá: một là xác thực tiêu đề IP – AH (IP Authentication Header) điều khiển việc xác thực và hai là đóng gói tải tin an toàn ESP (Encapsulation Security Payload) cho mục đích mã hoá.

IPSec không phải là một giao thức. Nó là một khung của các tập giao thức chuẩn mở cho phép những nhà quản trị mạng lựa chọn thuật toán, các khoá và

phương pháp nhận thực để cung cấp sự xác thực dữ liệu, tính toàn vẹn dữ liệu, và sự tin cậy dữ liệu. IPSec là sự lựa chọn cho bảo mật tổng thể các VPN, là phương án tối ưu cho mạng của công ty. Nó đảm bảo truyền thông tin cậy trên mạng IP công cộng đối với các ứng dụng.

IPsec tạo những đường hầm bảo mật xuyên qua mạng Internet để truyền những luồng dữ liệu. Mỗi đường hầm bảo mật là một cặp những kết hợp an ninh để bảo vệ luồng dữ liệu giữa hai Host.

IPSec được phát triển nhắm vào họ giao thức IP kế tiếp là IPv6, nhưng do việc triển khai IPv6 còn chậm và sự cần thiết phải bảo mật các gói IP nên IPSec đã được thay đổi cho phù hợp với IPv4. Việc hỗ trợ cho IPSec chỉ là tuỳ chọn của IPv4 nhưng đối với IPv6 thì có sẵn IPSec.

2.4.1 Khung giao thức IPSec

IPSec là khung của các chuẩn mở, được phát triển bởi IETF.

Hình 2.20: Khung giao thức được sử dụng trong IPSec

Một số giao thức chính được khuyến khích sử dụng khi làm việc với IPSec.

- Giao thức bảo mật IP (IPSec)

+ AH (Authentication Header)

+ ESP (Encapsulation Security Payload)

- Mã hoá bản tin

+ DES (Data Encryption Standard) + 3 DES (Triple DES)

- Các chức năng toàn vẹn bản tin

+ HMAC (Hash – ased Message Authentication Code) + MD5 (Message Digest 5)

+ SHA-1 (Secure Hash Algorithm -1)

- Nhận thực đối tác (peer Authentication)

+ Rivest, Shamir, and Adelman (RSA) Digital Signatures + RSA Encrypted Nonces

- Quản lý khoá

+ DH (Diffie- Hellman) + CA (Certificate Authority)

- Kết hợp an ninh

+ IKE (Internet Key Exchange)

+ ISAKMP (Internet Security Association and Key Management Protocol)

IPSec là tập hợp những tiêu chuẩn mở làm việc cùng nhau để thiết lập tính bảo mật, toàn vẹn dữ liệu và nhận thực giữa các thiết bị ngang hàng. Những điểm ngang hàng có thể là những cặp Host hay những cặp cổng nối bảo mật (những bộ định tuyến, những tường lửa, những bộ tập trung VPN …) hay có thể giữa một host và một cổng nối bảo mật, như trong VPN truy cập từ xa.

Hai giao thức chính của IPSec là AH (Authentication Header) và ESP (Encapsulation Security Payload ). (adsbygoogle = window.adsbygoogle || []).push({});

- AH: Cho phép xác thực và kiểm tra tính toàn vẹn dữ liệu của các gói IP

truyền giữa hai hệ thống. Nó là một phương tiện để kiểm tra xem dữ liệu có bị thay đổi trong khi truyền không. Do AH không cung cấp khả năng mật mã dữ liệu nên các dữ liệu đều được truyền dưới dạng bản rõ.

- ESP: Là một giao thức an toàn cho phép mật mã dữ liệu, xác thực nguồn

gốc dữ liệu, kiểm tra tính toàn vẹn dữ liệu. ESP đảm bảo tính bí mật của thông tin thông qua việc mật mã ở lớp IP. Tất cả các lưu lượng ESP đều được mật mã giữa hai hệ thống.

a) Giao thức AH khuôn dạng AH

Next Header Payload Length Reserved

Security Parameters Index (SPI) Sequence Number

Authentication Data 32 bits

8 bits 8 bits 16 bits

Hình 2.21: Khuôn dạng gói AH

+ Next header (8bit): Xác định kiểu dữ liệu của phần Payload tiếp sau AH. Giá trị của trường này được lựa chọn từ tập các giá trị số giao thức IP được định nghĩa bởi IANA (TCP_6; UDP_ 17).

+ Payload length (8bit): Xác định độ dài của AH theo đơn vị 32bit (4 Byte). + Reserved (16 bit): trường này dùng để dự trữ sử dụng trong tương lai. Giá trị của trường này có thể đặt bằng 0 và có tham gia trong việc tính Authentication Data.

+ Security Parameter Index (SPI):

- SPI là một số 32 bit bất kỳ, cùng với địa chỉ IP đích và giao thức an ninh

ESP cho phép nhận dạng duy nhất SA cho gói dữ liệu này. Các giá trị SPI từ 1÷255 được dành riêng để sử dụng trong tương lai. SPI thường được lựa chọn bởi phía thu khi thiết lập SA. SPI là trường bắt buộc.

- Giá trị SPI 0 được sử dụng cục bộ. Có thẻ sử dụng giá trị này để chỉ ra

chưa có SA nào tồn tại. + Sequence number (SN):

- Trường 32 bit không dấu chứa một giá trị đếm tăng dần. SN là trưòng bắt

buộc cho dù phía thu không thực hiện dịch vụ chống trùng lặp cho một SA cụ thể nào. việc xử lý SN tuỳ thuộc phía thu, nghĩa là phía phát luôn phải truyền trường này, còn phía thu có thể không cần phải xử lý nó.

- Bộ đếm của phía phát và phía thu đều được khởi tạo 0 khi một SA được

thiết lập (gói đầu tiên được truyền đi sử dụng SA sẽ có SN=1). Nếu dịch vụ anti-replay được lựa chọn thì được phát đi sẽ không được lặp lại (bằng

cách thiết lập một SA mới, và do đó là một khoá mới) trước khi truyền

gói thứ 232 của một SA.

+ Authentication Data:

Trường này có độ dài biến đổi chứa một một giá trị kiểm tra tính toàn vẹn ICV (integrity Check Value) cho gói tin. Độ dài của trường này bằng số nguyên lần 32 bit (hay 4 Byte).

Trường này có thể chứa một phần dữ liệu đệm kiểu tường minh (Explicit padding) để đảm bảo độ dài của AH header là số nguyên lần 32 bit (đối với IPv4) hoặc 64 bit (đối với IPv6).

b) Giao thức ESP

Khuôn dạng ESP

(adsbygoogle = window.adsbygoogle || []).push({});

Hình 2.22: Khuôn dạng gói ESP Trong đó:

+ Security Parameter Index (SPI):

- SPI là một số 32 bit bất kỳ, cùng với địa chỉ IP đích và giao thức an ninh

ESP cho phép nhận dạng duy nhất SA cho gói dữ liệu này. Các giá trị SPI từ 1÷255 được dành riêng để sử dụng trong tương lai. SPI thường được lựa chọn bởi phía thu khi thiết lập SA. SPI là trường bắt buộc.

- Giá trị SPI 0 được sử dụng cục bộ. Có thẻ sử dụng giá trị này để chỉ ra

chưa có SA nào tồn tại. + Sequence number (SN):

- Trường 32 bit không dấu chứa một giá trị đếm tăng dần (SN). SN là trưòng bắt buộc cho dù phía thu không thực hiện dịch vụ chống trùng lặp cho một SA cụ thể nào. việc xử lý SN tuỳ thuộc phía thu, nghĩa là phía phát luôn phải truyền trường này, còn phía thu có thể không cần phải xử lý nó.

- Bộ đếm của phía phát và phía thu đều được khởi tạo 0 khi một SA được

thiết lập (gói đầu tiên được truyền đi sử dụng SA sẽ có SN=1). Nếu dịch vụ anti-replay được lựa chọn thì được phát đi sẽ không được lặp lại (bằng cách thiết lập một SA mới, và do đó là một khoá mới) trước khi truyền

gói thứ 232 của một SA.

+ Payload Data

Trường này có độ dài biến đổi chứa dữ liệu mô tả trong Next header. Payload Data là trường bắt buộc và có độ dài bằng số nguyên lần Byte.

+ Padding

Nếu thuật toán mật mã được sử dụng yêu cầu bản rõ (cleartext hay plaintext) phải là số nguyên lần khối các Byte (trong mật mã khối) thì Padding field được sử dụng để thêm vào Plaintext để có kích thước yêu cầu.

Padding cần thiết để đảm bảo phần dữ liệu mật mã sẽ kết thúc ở biên giới 4 Byte để phân biệt rõ ràng với trường Authentication Data.

Ngoài ra padding còn có thể được sử dụng để che dấu độ dài thực của Payload, tuy nhiên mục dích này phải được cân nhắc vì nó ảnh hưởng tói băng tần truyền dẫn. Bên gửi có thể thêm 0÷255 Padding Byte.

+ Pad length

Trường này xácđịnh số padding Byte đã thêm vào. Các giá trị hợp lệ là 0÷255. Pad length là trường bắt buộc.

+ Next header (8bit)

Là một trường bắt buộc. Next header xác định kiểu dữ liệu chứa trong Payload Data. Giá trị của trường này được lựa chọn từ tập cácgiá trị IP Protocol Numbers định nghĩa bởi IANA..

+ Authentication Data

Trường có độ dài biến đổi chứa một giá trị kiểm tra tính toàn ven ICV (integrity Check Value) tính trên dữ liệu của toàn bộ gói ESP trừ trường Authentication Data. Độ dài của trường phụ thuộc vào hàm xác thực được lựa

chọn. trường này là tuỳ chọn, và chỉ được thêm vào nếu dịch vụ authentication được lựa chọn cho SA đang xét. Thuật toán xác thực phải chỉ ra độ dài của ICV và các bước xử lý cũng như các luật so sánh cần thực hiện để kiểm tra tính toàn vẹn của gói tin.

Một phần của tài liệu CÁC GIAO THỨC ĐƯỜNG HẦM.doc (Trang 25 - 33)