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ệnnay, nó làm việc ở lớp liên kết dữ liệu Datalink Layer trong mô hình OSI, PPPba
Trang 1NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Tp.HCM, ngày…… tháng …… năm 2018 Giáo viên hướng dẫn
Trang 2Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, trường Đại Học Công Nghiệp Tp.HCM đã tạo điều kiện tốt cho chúng em thực hiện đề tài này.
Chúng em xin chân thành cảm ơn thầy Võ Công Minh =, là người đã tận tình hướng dẫn, chỉ bảo chúng em trong suốt thời gian thực hiện đề tài.
Chúng em cũng xin gửi lời cảm ơn sâu sắc đến quý Thầy Cô trong Khoa đã tận tình giảng dạy, trang bị cho chúng em những kiến thức quí báu trong những năm học vừa qua Chúng em xin gửi lòng biết ơn sâu sắc đến ba, mẹ, các anh chị và bạn bè đã ủng hộ, giúp đỡ và động viên chúng em trong những lúc khó khăn cũng như trong suốt thời gian học tập và nghiên cứu.
Mặc dù chúng em đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép, nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong sự cảm thông và tận tình chỉ bảo của quý Thầy Cô và các bạn.
Nhóm Thực Hiện
Lê Hoàng Lâm Phạm Minh Hải Âu
LỜI CẢM ƠN
Trang 3ĐỀ CƯƠNG CHI TIẾT
SINH VIÊN THỰC HIỆN:
Lê Hoàng Lâm-12033621
Phạm Minh Hải Âu -12035071
LOẠI ĐỀ TÀI:
Tìm hiểu VPN (Virtual Private Network).
Tìm hiểu Hoạt động VPN.
Tìm hiểu Cơ chế bảo mật.
Xây dựng một mô hình dựa trên phương pháp bảo mật.
TÓM TẮT ĐỀ TÀI:
Giới thiệu :
Giới thiệu chung về VPN.
Phạm vi và mục tiêu nghiên cứu:
a Phạm vi:
- Tìm hiểu VPN.
- Tìm hiểu cơ chế bảo mật.
- Xây dựng một mô hình mô phỏng mạng dùng VPN để bảo mật.
Trang 4- Tìm hiểu cách thức hoạt động của VPN hiện nay.
- Tìm hiểu các cơ chế bảo mật của VPN.
Thử nghiệm:
- Demo trên !@#$%^&*()
KẾ HOẠCH THỰC HIỆN:
Tuần 1:Tìm hiểu khái niệm, nguồn gốc, môi trường của VPN.
Tuần 2: Tìm hiểu cách thức hoạt đọng của VPN.
Tuần 3: Tìm hiểu cơ chế bảo mật của VPN
Tuần 4:Chọn một loại bảo mật và triển khai
Tuần 5,6:Hiện thực trên máy ảo.
Tuần 7,8,9,10:Báo cáo bổ sung
Tuần 11,12: Bổ sung, chỉnh sửa- báo cáo GVHD
Xác nhận của GVHD Ngày … tháng … năm 2016
Sinh viên thực hiện
Trang 5MỤC LỤC
MỤC LỤC 5
CHƯƠNG I – GIỚI THIỆU ĐỀ TÀI 7
1.1 Tổng quan đề tài 7
1.2 Cấu trúc báo cáo 8
CHƯƠNG II – GIỚITHIỆU VIRTUAL PRIVATE NETWORK 9
2.1 Giới thiệu VPN 9
2.2 Tổng quan mạng riêng ảo 10
2.2.1 Mạng riêng ảo là gì? 10
2.2.2 Khái niệm mạng riêng ảo 11
2.2.3 Sự thuận lợi và bất lợi của VPNs 11
2.2.4 Phân loại mạng riêng ảo 12
2.2.5 Yêu cầu của VPN 12
2.2.6 Phân lọai VPN 13
2.2.7 Thành phần của VPN 14
2.2.8 Cấu trúc của VPN 14
CHƯƠNG III– CÁCH THỨC HOẠT ĐỘNG VÀ BẢO MẬT TRONG VPN 18
3.1 Sơ lược về các giao thức trong VPN 18
3.2 Các giao thức đường hầm 18
3.2.1 Giao thức chuyển tiếp lớp 2 (L2F-Layer 2 Forwarding Protocol) 19
3.2.1.1 Cấu trúc gói L2F 20
3.2.1.2 Ý nghĩa của các trường trong L2F như sau 21
3.2.1.3 Hoạt động của L2F 21
3.2.1.4 Ưu và nhược điểm L2F 23
3.2.2 Giao thức PPTP (Point-to-Point Tunneling Protocol) 24
3.2.2.1 Khái quát hoạt động của PPTP 25
3.2.2.2 Duy trì đường hầm bằng kết nối điều khiển PPTP 26
Trang 63.2.2.3 Đóng gói dữ liệu đường hầm PPTP 27
3.2.2.3.1 Đóng gói khung PPP và GRE 27
3.2.2.3.2 Đóng gói IP 28
3.2.2.3.3 Đóng gói lớp lien kết dữ liệu 28
3.2.2.3.4 Xử lí dữ liệu tại đầu cuối đường hầm PPTP 28
3.2.2.4 Ưu và nhược điểm của PPTP 28
3.2.3 Giao thức định đường hầm lớp 2 (L2TP - Layer 2 Tunneling Protocol) 29
3.2.3.1 Duy trì đường hầm bằng bản tin điều khiển L2TP 30
3.2.3.2 Đóng gói dữ liệu đường hầm L2TP 31
3.2.3.3 Xử lý dữ liệu tại đầu cuối đường hầm L2TP trên nền IPSec 32
3.2.3.4 Các thành phần của hệ thống VPN dựa trên L2TP 33
3.2.3.4.1 Máy chủ L2TP 33
3.2.3.4.2 Phần mềm client L2TP 34
3.2.3.4.3 Bộ tập trung truy cập mạng 34
3.2.3.5 Ưu và nhược điểm của L2TP 34
3.3 Bộ giao thức IPSEC (IP Sercurity Protocol) 35
3.3.1 Cấu trúc bảo mật 36
3.3.2 Hiện trạng 36
3.3.2.1 Chế độ làm việc của IPSec 36
3.3.2.2 Chế độ truyền tải (Transport Mode) 37
3.3.2.3 Chế độ đường hầm (Tunnel Mode) 37
3.3.2.4 Các thành phần bên trong IPSec 38
3.3.2.4.1 Giao thức đóng gói tải tin an toàn ESP 38
3.3.2.4.1.1 Các trường ESP 38
3.3.2.4.1.2 Quá trình mã hóa và hoạt động của giao thức ESP 40
3.3.2.4.2 Giao thức chứng thực đầu mục AH 42
3.3.2.4.2.1 AH header 43
3.3.2.4.2.2 AH Version 3 44
Trang 73.3.2.4.2.3 Giao thức trao đổi chìa khóa internet (IKE) 44
3.3.2.4.2.4 Liên kết an ninh 45
3.3.2.4.2.5 Cơ sở dữ liệu lien kết an ninh 46
3.3.2.4.2.6 Hoạt động trao đổi khóa IKE 47
3.3.2.5 Các vấn đề trong IPSec 48
CHƯƠNG IV–MỘT SỐ GIAO THỨC CHUYỂN MẠCH TRONG VPN 49
4.1 Giao thức HDLC(High Level Data Link Control 49
4.1.1 Các đặc tính giao thức của HDLC 49
4.1.1.1 Ba loại trạm trong HDLC 49
4.1.1.2 Hai cấu hình đường nối kết 49
4.1.1.3 Có ba chế độ truyền tải 49
4.1.2 Cấu trúc khung 50
4.2 Bảo mật trong VPN 50
4.3 Giao thức bảo mật giao thức Internet(ÍPsec) 50
4.4 Một số giao thức cho VPN 50
CHƯƠNG V– TRIỂN KHAI 51
CHƯƠNG VI– KẾT LUẬN 52
THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT 53
TƯ LIỆU THAM KHẢO 55
CHƯƠNG I – GIỚI THIỆU ĐỀ TÀI
Chương I trình bày khái quát về ý nghĩa và nội dung của đề tài.
1.1 Tổng quan đề tài
Trang 8Hiện nay nền kinh tế nước ta đang trên con đường phát triển mạnh,các doanh nghiệp, công ty có xu hướng mở chi nhánh phân bố các nơikhác nhau Điều đó đã thu của các doanh nghiệp một khoản chi phíkhông nhỏ Vì thế một vấn đề cấp thiết đặt ra là phải thiết kế một mạngmáy tính có khả năng tăng cường thông tin từ xa trên địa bàn hoạt độngrộng (trên toàn quốc hay toàn cầu) ngoài ra tài nguyên ở trung tâm có thểkết nối đến từ nhiều nguồn để tiết kiệm được chi phí và thời gian VPN rađời đáp ứng tất cả các yêu cầu trên
Cụm từ Virtual Private Network gọi là mạng riêng ảo- VPN đượckhởi sự năm 1997
Mục đích mong muốn của công nghệ VPN là việc sử dụng Internet vàtính phổ cập của nó Tuy nhiên, do Internet là nguồn thông tin công cộngnên có thể được truy cập từ bất kỳ ai, bất kỳ lúc nào, bất kỳ nơi đâu, việctrao đổi thông tin có thể bị nghe trộm dễ dàng, sự truy cập bất hợp pháp
và phá hoại dữ liệu khi trao đổi dữ liệu
Mục đích chính của VPN là cung cấp bảo mật, tính hiệu quả và độ tin cậytrong mạng trong khi vẫn đảm bảo cân bằng giá thành cho toàn bộ quátrình xây dựng mạng
VPN là một mạng riêng sử dụng hệ thống mạng công cộng (thường làInternet) để kết nối các địa điểm hoặc người sử dụng từ xa với một mạngLAN ở trụ sở trung tâm Thay vì dùng kết nối thật khá phức tạp nhưđường dây thuê bao số, VPN tạo ra các liên kết ảo được truyền quaInternet giữa mạng riêng của một tổ chức với địa điểm hoặc người sửdụng ở xa
Do đó VPN có một vị trí quan trọng trong nền kinh tế hiện nay vàtrong tương lai Tuy nhiên nó lại chưa được bi ết đến đầy đủ và chi tiết, vìvậy nhóm em quyết định chon đề tài về VPN
Vpn được chúng tôi nghiên cứu trong một thời gian không dài Tuy nhiên
ưu việt của nó cũng được thể hiện phần nào
1.2 Cấu trúc báo cáo
Trang 9Báo cáo được tổ chức thành từng chương với các nội dung như sau:
Chương I: Giới thiệu đề tài.
Chương II:Giới thiệu về VPN
Chương III: Cách thức hoạt động và cơ chế bảo mật trong VPN
Chương IV:Mọt số công nghệ chuyển mạch dung trong VPN.
Chương V:Triển khai.
Chương VI:Kết luận.
CHƯƠNG II – GIỚITHIỆU VIRTUAL PRIVATE NETWORK
Chương II:giới thiệu tổng quan về Virtual Private Network.
Trang 102.1 Giới thiệu VPN
Virtual Private Network (mạng riêng ảo) thường được gọi tắt là VPN làmột kỹ thuật đã xuất hiện từ lâu, tuy nhiên nó thực sự bùng nổ và trở nên cạnhtranh khi xuất hiện công nghệ mạng thông minh với đà phát triển mạnh mẽ củaInternet Trong thực tế, người ta thường nói tới hai khái niệm VPN đó là: mạngriêng ảo kiểu tin tưởng (Trusted VPN) và mạng riêng ảo an toàn (Secure VPN) Mạng riêng ảo kiểu tin tưởng được xem như một số mạch thuê của mộtnhà cung cấp dịch vụ viễn thông Mỗi mạch thuê riêng hoạt động như mộtđường dây trong một mạng cục bộ Tính riêng tư của trusted VPN thể hiện ởchỗ nhà cung cấp dịch vụ sẽ đảm bảo không có một ai sử dụng cùng mạch thuêriêng đó Khách hàng của mạng riêng ảo loại này tin tưởng vào nhà cung cấpdịch vụ để duy trì tính toàn vẹn và bảo mật của dữ liệu truyền trên mạng Cácmạng riêng xây dựng trên các đường dây thuê thuộc dạng “trusted VPN”
Mạng riêng ảo an toàn là các mạng riêng ảo có sử dụng mật mã để bảomật dữ liệu Dữ liệu ở đầu ra của một mạng được mật mã rồi chuyển vào mạngcông cộng (ví dụ: mạng Internet) như các dữ liệu khác để truyền tới đích vàsau đó được giải mã dữ liệu tại phía thu Dữ liệu đã mật mã có thể coi nhưđược truyền trong một đường hầm (tunnel) bảo mật từ nguồn tới đích Cho dùmột kẻ tấn công có thể nhìn thấy dữ liệu đó trên đường truyền thì cũng không
có khả năng đọc được vì dữ liệu đã được mật mã
Mạng riêng ảo xây dựng dựa trên Internet là mạng riêng ảo kiểu an toàn,
sử dụng cơ sở hạ tầng mở và phân tán của Internet cho việc truyền dữ liệu giữacác site của các công ty Trọng tâm chính của đồ án tốt nghiệp này bàn về VPN
Trang 11dựa trên Internet Khi nói đến mạng riêng ảo VPN phải hiểu là mạng riêng ảodựa trên Internet.
2.2 Tổng quan mạng riêng ảo
2.2.1 Mạng riêng ảo là gì?
2.2.2 Khái niệm mạng riêng ảo
Mạng riêng ảo là phương pháp làm cho một mạng công cộng hoạtđộng như một mạng cục bộ kết hợp với các giải pháp bảo mật trên đường truyền.Vpn cho phép thành lập các kết nối riêng với người dùng ở xa, các văn phòng chinhánh của công ty và các đối tác của công ty đang sử dụng chung một mạng côngcộng
Kh ái ni ệm định đường h ầm (tunneling ):
Là cơ chế dùng cho việc đóng gói một giao thức trong một giao thứckhác Định đường hầm cho phép che dấu giao thức lớp mạng nguyên thuỷ bằngcách mã hoá vào trong một vỏ bọc IP
Kh ái ni ệm v ề ch ất l ượng d ịch v ụ :
Trang 12 Vpn còn cung cấp các thoả thuận về chất lượng dịch vụ (QoS), nhữngthoả thuận bao gồm định ra một giới hạn trên cho phép về độ trễ trung bình của góitrong mạng.
Vpn= định đường hầm + bảo mật + các thoả thuận QoS.
2.2.3 Sự thuận lợi và bất lợi của VPNs
Giảm chi phí đường truyền: Vpn cho phép tiết kiệm đến 60% chi phí
so với thuê bao đường truyền và giảm đáng kể tiền cước
Giảm chi phí đầu tư: Vpn không tốn chi phí đầu tư cho máy chủ, bộđịnh tuyến, các bộ chuyển mạch như khi đầu tư cho một mạng WAN của công ty(có thể thuê của các nhà cung cấp dịch vụ)
Giảm chi phí quản lý và hỗ trợ: với quy mô kinh tế của mình các nhàcung cấp dịch vụ có thể mang lại cho công ty những tiết kiệm có giá trị so với việc
tự quản lý mạng
Truy cập mọi lúc mọi nơi Vpn không làm ảnh hưởng đến bất kì mộtdịch vụ truyền thống nào của internet
Cải thiện kết nối
An toàn trong giao dịch
Hiệu quả về băng thông
Enhanced scalability
Bất lợi :
Phụ thuộc trong môi trường Internet
Thiếu sự hổ trợ cho một số giao thức kế thừa.
2.2.4 Phân loại mạng riêng ảo
Trang 132.2.5 Yêu cầu của VPN
VPNs nhằm hướng vào 3 yêu cầu cơ bản sau đây :
Có thể truy cập bất cứ lúc nào bằng điều khiển từ xa, bằng điện thoại cầmtay, và việc liên lạc giữa các nhân viên của một tổ chức tới các tài nguyên mạng
Nối kết thông tin liên lạc giữa các chi nhánh văn phòng từ xa
Ðược điều khiển truy nhập tài nguyên mạng khi cần thiết của khách hàng,nhà cung cấp và những đối tượng quan trọng của công ty nhằm hợp tác kinhdoanh
2.2.6 Phân lọai VPN
Dựa trên những nhu cầu cơ bản trên, ngày nay VPNs đã phát triển vàphân chia ra làm 2 phân loại chính sau :
Remote Access VPNs ( VPN truy cập từ xa)
Site – to – site VPNs (VPN điểm nối điểm)
Trang 14 VPN truy cập từ xa còn được gọi là mạng Dial-up riêng ảo (VPDN), làmột kết nối người dùng-đến-LAN, thường là nhu cầu của một tổ chức có nhiềunhân viên cần liên hệ với mạng riêng của mình từ rất nhiều địa điểm ở xa Ví dụnhư công ty muốn thiết lập một VPN lớn phải cần đến một nhà cung cấp dịch vụdoanh nghiệp (ESP) ESP này tạo ra một máy chủ truy cập mạng (NAS) và cungcấp cho những người sử dụng từ xa một phần mềm máy khách cho máy tính của
họ Sau đó, người sử dụng có thể gọi một số miễn phí để liên hệ với NAS và dùngphần mềm VPN máy khách để truy cập vào mạng riêng của công ty Loại VPN nàycho phép các kết nối an toàn, có mật mã
Hổ trợ cho những người có nhiệm vụ cấu hình, bảo trì và quản lý RAS và
hổ trợ truy cập từ xa bởi người dùng
Bằng việc triển khai Remote Access VPNs, những người dùng từ xa hoặccác chi nhánh văn phòng chỉ cần cài đặt một kết nối cục bộ đến nhà cung cấp dịch
vụ ISP hoặc ISP’s POP và kết nối đến tài nguyên thông qua Internet
Mô hình Intẻnet VPNs
2.2.7 Thành phần của VPN
Trang 15HA ( Home Agent ) Bề mặt chung của chương trình là thường
cư trú tại các nút mạng (router) trong mạng đích Ngoài ra, một nút đích, nhưDial-up Server có thể làm máy chủ HA HA nhận và xác nhận những yêu cầugửi đến để xác thực chúng từ những host đã được ủy quyền Khi xác nhậnthành công bộ máy khởi tạo, HA cho phép thiết lập tunnel
FA ( Foreign Agent ) Giao diện trương trình thường cư trú tạicác nút khởi tạo hoặc ở nút truy cập mạng (router) của hệ thống mạng Các nútkhởi tạo dùng FA để yêu cầu một phiên VPN từ HA ở mạng đích
Để có thể thiết lập hoàn chỉnh một tunnel giữa hai nút thông tin đầu cuối,tunneling đưa ra 4 thành phần yêu cầu sau :
Mạng đích (Target network): Là mạng trong đó chứa các dữliệu tài nguyên mà người dùng từ xa cần truy cập để sử dụng, là những ngườikhởi tạo ra phiên yêu cầu VPN (mạng đích cũng được hiểu như là mạng giađình (home network) trong một số tài liệu về VPN)
Nút khởi tạo (Initiator node): Người dùng khách hoặc máy chủkhởi tạo phiên VPN Nút khởi tạo có thể là một phần của mạng cục bộ hoặc có
thể là người dùng mobile sử dụng laptop
2.2.8 Cấu trúc của VPN
Tính tương thích :
- Hỗ trợ nhiều chuẩn giao thức
Tính bảo mật:
- Password cho người dùng trong mạng
- Mã hoá dữ liệu khi truyền
- Đơn giản trong quản lý sử dụng
Trang 16Nhằm mục đích dễ hiểu hơn quá trình hoạt động của công nghệ tunnelingđược chia làm 2 giai đoạn:
Giai đoạn 1 : Nút khởi tạo (hoặc người dùng từ xa) yêu cầu một phiên làmviệc VPN và được xác nhận HA tương ứng
Giai đoạn 2: dữ liệu được thực sự chuyển qua mạng thông qua tunnel Trong giai đoạn I, một kết nối yêu cầu được khởi tạo và những tham sốphiên được đàm phán (Giai đoạn này cũng có thể được xem như là giai đoạn thiếtlập tunnel) Nếu yêu cầu được chấp nhận và tham số phiên được đàm phán thànhcông, một tunnel được thiết lập giữa hai nút thông tin đầu cuối
Điều này xảy ra qua những việc chính sau :
1 Nút khởi tạo gửi yêu cầu kết nối đến vị trí FA trong mạng
2 FA xác nhận yêu cầu bằng cách thông qua tên truy cập và mật khẩu đượccung cấp bởi người dùng
3 Nếu tên truy cập và mật khẩu cung cấp bởi người dùng không hợp lệ, yêucầu phiên làm việc VPN bị từ chối Ngược lại, nếu quá trình xác nhận sự thốngnhất của FA thành công, nó sẽ chuyễn yêu cầu đến mạng đích HA
Trong quá trình nhận thông tin mã hóa, HA cởi bỏ tunnel header và headercủa giao thức định tuyến, đưa gói dữ liệu trở về dạng nguyên bản của nó
Dữ liệu nguyên gốc sau đó được chuyển hướng đến nút mong muốn cầnđến trong mạng
Figure 4-3: The process of transferring data across a tunnel
Trang 17Ghi chú :
Nếu 2 điểm đầu cuối không sử dụng cùng giao thức tunneling, một sốtham biến cấu hình tunnel như mã hóa, tham số nén, và cơ chế duy trì tunnel cũngđược đàm phán
Với việc thiết lập tunnel, giai đoạn I được xem như đã xong và giai đoạn
II, hay giai đoạn chuyển giao dữ liệu, bắt đầu Quá trình giao dịch trong giai đoạn
II này thực hiện qua các bước sau:
1 Nút khởi tạo bắt đầu chuyển hướng các gói dữ liệu đến FA
2 FA tạo tunnel header và chèn nó vào từng gói dữ liệu Thông tin headercủa giao thức định tuyến (được đàm phán trong giai đoạn I) sau đó được gắn vàogói dữ liệu
3 FA chuyển hướng các gói dữ liệu đã mã hóa đến HA bằng cách sử dụngtunnel number đã được cung cấp
4 Nếu yêu cầu được HA chấp nhận, FA gửi login ID đã được mã hóa vàmật khẩu tương ứng đến nó
5 HA kiểm chứng thông tin đã được cung cấp Nếu quá trình kiểm chứngthành công, HA gửi những Register Reply, phụ thuộc vào một số tunnel đến FA
6 Một tunnel được thiết lập khi FA nhận Register Reply và số tunnel
* Định dạng gói dữ liệu VPN
Như đã được mô tả ở phần trước, trước khi gói dữ liệu nguyên gốc được phânphát đến mạng đích thông qua tunnel, nó đã được mã hóa bởi FA Gói dữ liệu mãhóa này được đề cập như một tunneled packet Định dạng của một tunneled packetđược mô tả theo hình bên dưới
Trang 18Figure 4-4: The format of a tunneled packet
Như đã thấy ở hình 4-4, một tunneled packet bao gồm 3 phần, bao gồm :
Header of the routable protocol Phần đầu chứa địa chỉ nguồn (FA) vàđích (HA) Bởi vì quá trình giao dịch thông qua Internet chủ yếu là dựa trên cơ sở
IP, phần đầu này là phần IP header chuẩn phổ biến và chứa địa chỉ IP của FA, HA tham gia trong quá trình giao dịch Tunnel packet header Phần đầu này chứa 5phần:
- Protocol type Trường này chỉ ra loại giao thức của gói dữ liệunguyên gốc (hoặc pay-load)
- Kiểm tra tổng (Checksum) Phần này chứa thông tin kiểm tra tổngquát liệu gói dữ liệu có bị mất mát trong suốt qua trình giao dịch Thông tin nàytùy chọn
- Khóa (Key) Thông tin này được dùng để nhận dạng hoặc xác nhận nguồnthực của dữ liệu (bộ khởi tạo)
- Số tuần tự (Sequence number): Trường này chứa đựng 1 con số chỉ ra
số tuần tự của gói dữ liệu trong một loạt các gói dữ liệu đã và đang trao đổi
- Source routing: Trường này chứa đựng thêm thông tin định tuyến, phầnnày tuỳ chọn
Payload Gói dữ liệu nguyên gốc được gửi đến FA bởi bộ khởi tạo Nócũng chứa đựng phần đầu nguyên gốc
CHƯƠNG III– CÁCH THỨC HOẠT ĐỘNG VÀ BẢO MẬT TRONG VPN
Chhương III:Hiện nay VPN hoạt động và bảo mật thông qua một đường ống(tunnel)
Trang 19Chương III: Giới thiệu về các giao thức tunnel
3.1 Sơ lược về 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ểnkhai 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
3.2 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 giaothức đường hầm khác nhau, việc sử dụng giao thức nào liên quan đến các phươngpháp xác thực và mã hóa đi kèm Như đã giới thiệu ở trên, các giao thức đườnghầm phổ biến hiện nay là:
L2F - Layer 2 Forwarding Protocol
PPTP - Point-to-Point Tunneling Protocol
L2TP - Layer 2 Tunneling Protocol
3.2.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 trongcác hệ thống mạng của Cisco dựa trên giao thức PPP - Point to Point Protocol
Trang 20ngườ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 ramộ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ộcvà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
PSTN
Internet Service Provider
Eterprise Customer
L2F Tunnel Laptop
Trang 21kết nối VPN có thể được tạo ra và sử dụng, nó là một giải pháp khá mềmdẻo và đáng tin cậy.
3.2.1.1 Cấu trúc gói L2F
1bi
t
1bit 1bit 1bit 8bit 1bit 3 bit 8 bit 8bit
F K P S Reserved C Version Protocol Sequence
Multiplex IP Client ID
Key Data Checksum
Hình 2.2 – Khuôn dạng gói của L2F
3.2.1.2 Ý nghĩa của các trường trong L2F như sau
- F : chỉ định trường Offset có mặt
- K : chỉ định trường Key có mặt
- P : thiết lập độ ưu tiên (Priority) cho gói
- S : chỉ định trường Sequence có mặt
- Reserved : luôn được đặt là 00000000
- Version : phiên bản của L2F
- Protocol : xác định giao thức đóng gói L2F
- Sequence : số chuỗi được đưa ra nếu trong tiêu đề L2F có bit S = 1
- Multiplex ID: nhận dạng một kết nối riêng trong một đường hầm
- Client ID : giúp tách đường hầm tại những điểm cuối
- Length : chiều dài của gói (tính bằng byte) không bao gồm phần
checksum
- Offset : xác định số byte cách tiêu đề L2F, tại đó dữ liệu tải tin được bắt đầu
Trang 22- Key : là một phần của quá trình xác thực (có mặt khi bit K = 1)
- Checksum : tổng kiểm tra của gói (có mặt khi bit C = 1)
- 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, trongtrườ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ênlàm việc Các bước cụ thể như sau:
Trang 23- 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ớiISP.
- 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ếtLCP (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ựcRADIUS để 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
- 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éodài phiên PPP từ người sử dụng ở xa tới Home Gateway Kết nối này đượcthiế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ácthự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
- 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 đườnghầm và kết nối
3.2.1.4 Ưu và nhược điểm L2F
Trang 24 Ư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 dung
- Không có điều khiển luồng cho đường hầm
3.2.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à cungcấp thiết bị mạng như 3Com, Ascend Communications, ECI Telematics và U.SRobotics Ban đầu, những công ty này thành lập PPTP Forum và đưa ra cácthông số kỹ thuật mô tả PPTP và sau đó được gửi đến IETF để được xem xétnhư 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ấpdịch vụ Internet ở địa phương là có thể tạo đường hầm bảo mật tới mạng riêngcủa họ
Tương tự giao thức L2F, giao thức PPTP (Point-to-Point TunnelingProtocol) 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ằngcá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
Trang 25Server Server
Internet
Network Access Server (ISP POP) PPTP
Server
PPP Connection PPTP Connection (VPN)
Hình 2.4 – Mô hình kết nối PPTP
3.2.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ệnnay, nó làm việc ở lớp liên kết dữ liệu (Datalink Layer) trong mô hình OSI, PPPbao 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ênkế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ênbả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
Trang 26PPTP giả định tồn tại một mạng IP giữa PPTP client và PPTP server PPTPclient 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ậpmạ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ườidù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 (cleartext), không có bảo mật CHAP là một giao thức xác thực mạnh hơn sử dụngphương thức bắt tay 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ềndẫ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ã đầucuối đến đầu cuối thì có thể sử dụng IPSec để mật mã lưu lượng IP giữa các đầucuố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áckê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
Trang 27Cá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.
3.2.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ổngTCP được cấp phát ngẫu nhiên) và địa chỉ IP của máy chủ PPTP (sử dụng cổngmặ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ồmPPTP echo-request và PPTP echo-reply định kỳ để phát hiện các lỗi kết nốigiữ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 baogồm tiêu đề IP, tiêu đề TCP, bản tin điều khiển PPTP và tiêu đề, phần đuôi củalớ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ểnPPTP
Phần đuôiliên kết dữliệu
Hình 2.5 – Gói dữ liệu kết nối điều khiển PPTP
3.2.2.3 Đóng gói dữ liệu đường hầm PPTP
3.2.2.3.1 Đó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:
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ôiliên kết dữliệu
Trang 28Hì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ênbả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 để địnhtuyế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ácnhậ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
3.2.2.3.2 Đóng gói IP
Phần tải PPP (đã được mật mã) và các tiêu đề GRE sau đó được đóng góivớ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áytrạm và máy chủ PPTP
3.2.2.3.3 Đóng gói lớp lien 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 đónggó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ầntiê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
3.2.2.3.4 Xử lí dữ liệu tại đầu cuối đường hầm PPTP
Trang 29Khi 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
3.2.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 IPSecchạ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 đườ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ạnhơn là cho VPN kết nối LAN-LAN Một vấn đề của PPTP là xử lý xác thựcngườ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
3.2.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ùngtồ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áctrường hợp ứng dụng của hai giao thức này
Trang 30Mộ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 đườnghầm của riêng nó tùy thuộc vào phương tiện truyền chứ không dùng GRE.
Máy chủ mạng L2TP
Máy chủ mạng L2TP
Client
di động
NAS
Client di động
Kết nối LAN - Client
Bộ tập trung truy nhập L2TP của ISP
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, FrameRelay hoặc ATM, tuy nhiên hiện nay mới chỉ có L2TP trên mạng IP được địnhnghĩa Khi truyền qua mạng IP, các khung L2TP được đóng gói như các bảntin UDP L2TP có thể được sử dụng như một giao thức định đường hầm thôngqua Internet hoặc các mạng riêng Intranet L2TP dùng các bản tin UDP quamạ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 trongcá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 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
Trang 31L2TP giả định tồn tại mạng IP giữa máy trạm (VPN client dùng giaothứ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ántiếp thông qua việc dial-up tới NAS (máy chủ truy nhập mạng) để thiết lập kếtnố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 giaodiệ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 trongL2TP để đảm bảo việc phân phối, trong khi các bản tin dữ liệu không được gửilại khi bị mất trên đường truyền
3.2.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ệnthô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ộcgọ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óiUDP 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 đềIPSecESP
TiêuđềUDP
Bản tinL2TP
PhầnđuôiIPSecESP
Phầnđuôi xácthựcIPSecESP
Phầnđuôi liênkết
dữ liệu
Trang 32Hì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 để đảmbảo việc truyền các bản tin L2TP Trong bản tin điều khiển L2TP, trườngNext-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-Receivedcũ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ềukhiển L2TP và phần tiêu đề L2TP của dữ liệu đường hầm có một mã số đườnghầm (Tunnel ID) để xác định đường hầm và một mã nhận dạng cuộc gọi (CallID) để xác định cuộc gọi trong đường hầm đó
3.2.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 IPSecAuthentication
Đóng gói IP: Gói IPSec được đóng gói với tiêu đề IP chứa địa chỉ IPnguồ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ềnLAN 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
Trang 33truyề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 L2TPtrên nền IPSec
TiêuđềUDP
TiêuđềL2TP
TiêuđềPPP
Tải PPP(IP, IPX,NetBEUI)
PhầnđuôiIPSecESP
PhầnđuôinhậnthựcIPSecESP
Phầnđuôiliênkếtdữliệu
Hình 2.9 – Đóng gói dữ liệu đường hầm L2TP
3.2.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áychủ 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ể
- 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ý
Được mã hóa Được xác thực
Trang 343.2.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 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 hayngượ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ủ L2TPkhô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ởitườ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ườnglử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ộtcổ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ứcUDP 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
3.2.3.4.2 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ầncứ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à đủ Tuynhiê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à:
Trang 35- Tương thích với các thành phần khác của IPSec như máy chủ mã hóa, giaothứ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
3.2.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à cungcấ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ăngchạy trên các mạng Frame Relay hoặc ATM, điều này làm cho nó càng thêmphổ biến L2TP cho phép một lượng lớn khách hàng từ xa được kết nối vàoVPN 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
Trang 36dù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.
3.3 Bộ giao thức IPSEC (IP Sercurity 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ạitầ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ầngnà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 điqua mạng IP công cộng IPSec định nghĩa hai loại tiêu đề cho gói IP điều khiểnquá 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ànvẹn cho tiêu đề gói và dữ liệu Trong khi đó đóng gói tải tin an toàn ESP thựchiệ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 (InternetKey Exchange) để thỏa thuận liên kết bảo mật SA (Security Association) giữahai thực thể và trao đổi các thông tin khóa IKE cần được sử dụng phần lớntrong 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ệnrộng
3.3.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á.
Trang 37IPSec 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ã 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.
3.3.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.
3.3.2.1 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.
3.3.2.2 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 caotrong 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ưngvẫ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
Trang 38gốc AH
Tiêu đềgốc
Tiêu đề
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ạngnhì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 thông tin cụ thể bên tronggó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
3.3.2.3 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 đề đượcxác thực hoặc mã hóa, sau đó được đóng gói với một tiêu đề IP mới Địa chỉ IPbê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)
AH – chế độ đường
hầm
Tiêu đềmới
Tiêu đềAH
Được xác thực
Trang 39ESP – chế độ đường
hầm
Tiêu đềmới
Tiêu đềESP
Tiêu đề
Hình 2.11 – Xử lý gói tin IP ở chế độ đường hầm
3.3.2.4 Các thành phần bên trong IPSec
3.3.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
3.3.2.4.1.1 Các trường 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
Được xác thực Được mã hóa
Trang 40Hì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íanhận sử dụng giá trị SPI với địa chỉ IP đích và giao thức IPSec để xác địnhchí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óitin 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óitin
Pad Length: Chiều dài của Padding
Next Header: Trong tunnel mode, Payload là gói tin IP, giá trị NextHeader được cài đặt là 4 cho IP-in-IP Trong Transport mode, Payloadluôn là giao thức lớp 4 Nếu giao thức lớp 4 là TCP thì trường giao thứctrong IP là 6, giao thức lớp 4 là UDP thì trường giao thức IP là 17 MỗiESP Trailer chứa một giá trị Next Header