ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN ANH ĐOÀN
NGHIÊN CỨU XÂY DỰNG GIẢI PHÁP BẢO MẬT MẠNG RIÊNG ẢO VPN DỰA TRÊN
CÔNG NGHỆ MỞ
Ngành:Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và Mạng máy tính
Mã số: 60 48 15
TÓM TẮT LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
HÀ NỘI – 2012
1
MỤC LỤC
MỤC LỤC ........................................................................................................................... 5
BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT ........................................................................ 8
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ ................................................................... 9
CHƯƠNG 1. TỔNG QUAN ............................................................................................ 12
1.1
Tổng quan về an toàn bảo mật thông tin .......................................................... 12
1.1.1
Giới thiệu về bảo mật thông tin .................................................................. 12
1.1.2
Một số giải pháp an toàn thông tin ............................................................. 12
1.2
Tổng quan về mạng riêng ảo VPN .................................................................... 15
1.2.1
Định nghĩa về mạng riêng ảo....................................................................... 15
1.2.2
Lợi ích của mạng riêng ảo ........................................................................... 15
1.2.3
Mô hình mạng riêng ảo thông dụng ........................................................... 16
1.2.4
Một số giao thức mạng riêng ảo .................................................................. 20
1.3
Công nghệ mã nguồn mở .................................................................................... 23
1.3.1
Phần mềm mã nguồn mở là gì? ................................................................... 23
1.3.3
Đánh giá ........................................................................................................ 24
1.4
Tổng kết ............................................................................................................... 25
CHƯƠNG 2. BẢO MẬT MẠNG RIÊNG ẢO ............................................................... 27
2.1
Những vấn đề bảo mật trong mạng riêng ảo .................................................... 27
2.1.1
Tấn công các thành phần mạng riêng ảo ................................................... 27
2.1.2
Tấn công giao thức mạng riêng ảo.............................................................. 29
2.1.3
Tấn công mật mã .......................................................................................... 31
2.1.4
Tấn công từ chối dịch vụ ............................................................................. 34
2.2
Công nghệ bảo mật mạng riêng ảo .................................................................... 38
2.2.1
Tính xác thực ................................................................................................ 38
5
2.2.2
Tính toàn vẹn ................................................................................................ 42
2.2.3
Tính bảo mật ................................................................................................. 50
2.2.4
Hạ tầng PKI .................................................................................................. 58
2.2.5
Một số công nghệ bảo mật bổ xung ............................................................ 62
2.3
Tổng kết ............................................................................................................... 66
CHƯƠNG 3. ĐỀ XUẤT GIẢI PHÁP VÀ TRIỂN KHAI ỨNG DỤNG ...................... 67
3.1
Nghiên cứu đề xuất giải pháp ............................................................................ 67
3.1.1
Hiện trạng ..................................................................................................... 67
3.1.2
Yêu cầu .......................................................................................................... 68
3.2
3.2.1
Đề xuất giải pháp ................................................................................................ 69
Giải pháp phần mềm VPN mã nguồn mở ..................................................... 69
3.2.1.1 Giải pháp kernel space................................................................................. 69
3.2.1.2 Giải pháp user space .................................................................................... 70
3.2.1.3 Đánh giá và lựa chọn.................................................................................... 74
3.2.2
Kiến trúc Openvpn .......................................................................................... 75
3.2.2.3 Các mô hình bảo mật OpenVPN ................................................................ 76
3.2.2.4 Các kênh dữ liệu OpenVPN ........................................................................ 77
3.2.2.5 Ping và giao thức OCC ................................................................................ 80
3.2.2.6 Kênh điều khiển............................................................................................ 81
3.2.2.7 OpenVPN và các ứng dụng ......................................................................... 86
3.2.3
Giải pháp bảo mật ........................................................................................... 86
3.2.3.3 Tích hợp PKI ................................................................................................ 86
3.2.3.4 Sử dụng xác thực 2 thành tố........................................................................ 87
3.2.3.5 Tích hợp tường lửa ....................................................................................... 87
3.2.4
Giải pháp quản trị ........................................................................................... 87
6
3.2.5
3.3
Mô hình triển khai ........................................................................................... 88
Triển khai ứng dụng ........................................................................................... 89
3.3.1
Mô hình site to site ....................................................................................... 89
3.3.2
Triển khai mô hình remote access .............................................................. 99
3.3.3
Triển khai phần mềm quản trị .................................................................. 106
3.4
Tổng kết ............................................................................................................. 108
CHƯƠNG 4. KẾT LUẬN .............................................................................................. 109
TÀI LIỆU THAM KHẢO.............................................................................................. 110
7
BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT
Ký hiệu
Định nghĩa
AH (Authentication Header )
Xác thực tiêu đề
DH (DH Diffie-Hellman)
Thuật toán trao đổi khóa DH
ESP (Encapsulation Security Payload)
Giao thức đóng gói an toàn tải tin
HMAC (Hashed-keyed Message
Authenticaiton Code)
Mã nhận thực bản tin băm
IKE (Internet Key Exchange)
Giao thức trao đổi khóa
L2F (Layer 2 Forwarding)
Giao thức chuyển tiếp lớp 2
L2TP ( Layer 2 Tunneling Protocol)
Giao thức đường ngầm lớp 2
MAC (Message Authentication Code)
Mã xác thực thông điệp
OSI (Open Systems Interconnection )
Mô hình liên kết các hệ thống mở
PAP (Password Authentication Protocol)
Giao thức xác thực mật mã
PKI (Public Key Infastructure)
Hạ tầng khóa công khai
PPTP( Point To Point Tunneling Protocol)
Giao thức đường hầm điểm – điểm
QoS (Quanlity of Service)
Chất lượng dịch vụ
Tunneling
Đường hầm
VPN (Virtual Private Network)
Mạng riêng ảo
8
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ
Hình 1. 1: Thiết lập truy cập từ xa không có VPN ............................................................. 17
Hình 1. 2: Thiết lập VPN truy cập từ xa............................................................................. 17
Hình 1. 3: Thiết lập VPN dựa trên VPN ............................................................................ 18
Hình 1. 4: Mạng Extranet dựa trên VPN ............................................................................ 19
Hình 2. 1: Các yếu tố của một thiết lập dựa trên VPN ....................................................... 27
Hình 2. 2: Sự giả mạo của một ISP trong việc truyền dữ liệu có hại cho mạng nội bộ của
một tổ chức. ........................................................................................................................ 28
Hình 2. 3: Bộ định tuyến được cấu hình với mục đích kiểm duyệt dữ liệu trên kênh
truyền. ................................................................................................................................. 29
Hình 2. 4: Tin tặc gây nghẽn mạng. ................................................................................... 34
Hình 2. 5: Quá trình bắt tay 3 bước .................................................................................... 36
Hình 2. 6: Máy chủ chờ SYN/ACK .................................................................................. 36
Hình 2. 7: Hệ thống đáp ứng thách thức người dùng ......................................................... 39
Hình 2. 8: Xác thực mẫu tin MAC ..................................................................................... 43
Hình 2. 9: Mô hình hàm Hash ............................................................................................ 45
Hình 2. 10: Mã hoá khoá bí mật hay đối xứng ................................................................... 50
Hình 2. 11: Chế độ chính sách mã điện tử ECB ................................................................. 51
Hình 2. 12: Thuật toán mật mã khối ở chế độ CBC ........................................................... 52
Hình 2. 13: Sơ đồ thuật toán DES ...................................................................................... 53
Hình 2. 14: Mạng Fiesel ..................................................................................................... 54
Hình 2. 15: Thuật toán mã hoá khoá công cộng ................................................................. 55
Hình 2. 16: Các thành phần PKI ......................................................................................... 59
Hình 2. 17: SSL – So sánh giữa chuẩn và phiên SSL ........................................................ 63
9
Hình 2. 18: Các đường hầm mật mã dựa trên SSL............................................................. 64
Hình 3. 1: Mô hình lưu khóa sử dụng Openvpn ................................................................. 77
Hình 3. 2: Các OpenVPN kênh dữ liệu Đóng gói .............................................................. 78
Hình 3. 3: The OpenVPN Packet Header ........................................................................... 78
Hình 3. 4: Giá trị OpenVPN Op Codes .............................................................................. 79
Hình 3. 5: The OpenVPN Data Packet ............................................................................... 79
Hình 3. 6: Định dạng thông điệp OpenVPN OCC ............................................................. 81
Hình 3. 7: OCC giao thức Op Mã(OCC Protocol Op Codes) ............................................ 81
Hình 3. 8: Gói điều khiển kênh OpenVPN ......................................................................... 82
Hình 3. 9: Thông điệp trao đổi khóa OpenVpn-Phương thức khóa 1 ................................ 83
Hình 3. 10: Thông điệp trao đổi hóa OpenVPN-Phương pháp khóa 2 .............................. 84
Hình 3. 11: Mô hình triển khai ........................................................................................... 88
Hình 3. 12: Mô hình VPN site to site ................................................................................. 89
Hình 3. 13: Định dạng thiết bị epass3003 .......................................................................... 95
Hình 3. 14: Lưu khóa vào thiết bị epass3003 ..................................................................... 97
Hình 3. 15: Sử dụng thiết bị epass3003 .............................................................................. 98
Hình 3. 16: Mô hình remote access .................................................................................... 99
Hình 3. 17: Mô hình phần mềm quản trị .......................................................................... 106
Hình 3. 18: Giao diện chương trình quản trị .................................................................... 107
10
MỞ ĐẦU
Cùng với sự phát triển của công nghệ thông tin, công nghệ mạng máy tính và đặc
biệt là mạng Internet ngày càng phát triển đa dạng và phong phú. Các dịch vụ trên mạng
Internet đã xâm nhập vào hầu hết các lĩnh vực trong đời sống xã hội. Các thông tin trao
đổi trên Internet cũng đa dạng cả về nội dung và hình thức, trong đó có rất nhiều thông tin
cần bảo mật cao bởi tính kinh tế, tính chính xác và tin cậy của nó.
Bên cạnh đó, những dịch vụ mạng ngày càng có giá trị, yêu cầu phải đảm bảo tính
ổn định và an toàn cao. Tuy nhiên, các hình thức phá hoại mạng cũng trở nên tinh vi và
phức tạp hơn, do đó đối với mỗi hệ thống, nhiệm vụ bảo mật đặt ra cho người quản trị là
hết sức quan trọng và cần thiết.
Xuất phát từ những thực tế nêu trên, hiện nay trên thế giới đã xuất hiện rất nhiều
công nghệ liên quan đến bảo mật hệ thống và mạng máy tính, việc nắm bắt những công
nghệ này là hết sức cần thiết.
Chính vì vậy, thông qua việc nghiên cứu một cách tổng quan về bảo mật hệ thống
và một công nghệ cụ thể liên quan đến bảo mật hệ thống, đó là công nghệ Mạng Riêng Ảo
(VPN-Virtual Private Network) trong luận văn này tập trung vào nghiên cứu, đánh giá các
vấn đề bảo mật của công nghệ VPN, công nghệ bảo mật VPN. Trên cơ sở đánh giá lựa
chọn xây dựng giải pháp VPN dựa trên công nghệ mã nguồn mở. Giải pháp đảm bảo các
yêu cầu bảo mật, khả năng triển khai. Xuất phát từ yêu cầu thực tế và triển khai tại Bộ
Ngoại giao.
Nội dụng luận văn được chia thành 4 chương:
Chương 1: Nghiên cứu tổng quan về an ninh bảo mật thông tin; một số khái niệm,
mô hình, giao thức của VPN; Tìm hiểu về công nghệ mã nguồn mở.
Chương 2: Nghiên cứu, đánh giá một số vấn đề bảo mật của các giao thức VPN
hiện nay; Tìm hiểu một số công nghệ bảo mật VPN.
Chương 3: Nghiên cứu, đề xuất giải pháp VPN mã nguồn mở trên nền tảng
Openvpn. Giải pháp triển khai thực tế cho mô hình kết nối của Bộ Ngoại giao.
Chương 4: Kết luận.
11
CHƯƠNG 1. TỔNG QUAN
1.1 Tổng quan về an toàn bảo mật thông tin
1.1.1 Giới thiệu về bảo mật thông tin
Khi nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng, các tiến bộ về
công nghệ thông tin không ngừng được phát triển ứng dụng để nâng cao chất lượng và
lưu lượng truyền tin thì các quan niệm ý tưởng và biện pháp bảo vệ thông tin dữ liệu cũng
được đổi mới. Bảo vệ an toàn thông tin dữ liệu là một chủ đề rộng, có liên quan đến nhiều
lĩnh vực và trong thực tế có thể có rất nhiều phương pháp được thực hiện để bảo vệ an
toàn thông tin dữ liệu. Các phương pháp bảo vệ an toàn thông tin dữ liệu có thể được quy
tụ vào ba nhóm sau:
+ Bảo vệ an toàn thông tin bằng các biện pháp hành chính.
+ Bảo vệ an toàn thông tin bằng các biện pháp kỹ thuật (phần cứng).
+ Bảo vệ an toàn thông tin bằng các biện pháp thuật toán (phần mềm).
Ba nhóm trên có thể được ứng dụng riêng rẽ hoặc phối kết hợp. Môi trường khó
bảo vệ an toàn thông tin nhất và cũng là môi trường đối phương dễ xâm nhập nhất đó là
môi trường mạng và truyền tin. Biện pháp hiệu quả nhất và kinh tế nhất hiện nay trên
mạng truyền tin và mạng máy tính là biện pháp thuật toán.
An toàn thông tin bao gồm các nội dung sau:
+ Tính bí mật: tính kín đáo riêng tư của thông tin.
+ Tính xác thực của thông tin, bao gồm xác thực đối tác, xác thực thông tin trao
đổi.
+ Tính trách nhiệm: đảm bảo người gửi thông tin không thể thoái thác trách nhiệm
về thông tin mà mình đã gửi.
Để đảm bảo an toàn thông tin dữ liệu trên đường truyền tin và trên mạng máy tính
có hiệu quả thì điều trước tiên là phải lường trước hoặc dự đoán trước các khả năng không
an toàn, khả năng xâm phạm, các sự cố rủi ro có thể xảy ra đối với thông tin dữ liệu được
lưu trữ và trao đổi trên đường truyền tin cũng như trên mạng. Xác định càng chính xác
các nguy cơ nói trên thì càng quyết định được tốt các giải pháp để giảm thiểu các thiệt
hại.
1.1.2 Một số giải pháp an toàn thông tin
Các chiến lượt an toàn hệ thống:
Giới hạn quyền hạn tối thiểu: Đây là chiến lược cơ bản nhất theo nguyên tắc này
bất kỳ một đối tượng nào cùng chỉ có những quyền hạn nhất định đối với tài nguyên
12
mạng, khi thâm nhập vào mạng đối tượng đó chỉ được sử dụng một số tài nguyên nhất
định.
Bảo vệ theo chiều sâu: Nguyên tắc này nhắc nhở chúng ta không nên dựa vào một
chế độ an toàn nào dù cho chúng rất mạnh, mà nên tạo nhiều cơ chế an toàn để tương hỗ
lẫn nhau.
Nút thắt: Tạo ra một “cửa khẩu” hẹp, và chỉ cho phép thông tin đi vào hệ thống của
mình bằng con đường duy nhất chính là “cửa khẩu” này, phải tổ chức một cơ cấu kiểm
soát và điều khiển thông tin đi qua cửa này.
Điểm nối yếu nhất: Kẻ phá hoại thường tìm những chỗ yếu nhất của hệ thống để
tấn công, do đó ta cần phải gia cố các yếu điểm của hệ thống. Thông thường chúng ta chỉ
quan tâm đến kẻ tấn công trên mạng hơn là kẻ tiếp cận hệ thống, do đó an toàn vật lý
được coi là yếu điểm nhất trong hệ thống của chúng ta.
Tính toàn cục: Các hệ thống an toàn đòi hỏi phải có tính toàn cục của các hệ thống
cục bộ. Nếu có một kẻ nào đó có thể bẻ gãy một cơ chế an toàn thì chúng có thể thành
công bằng cách tấn công hệ thống tự do của ai đó và sau đó tấn công hệ thống từ nội bộ
bên trong.
Tính đa dạng bảo vệ :Cần phải sử dụng nhiều biện pháp bảo vệ khác nhau cho hệ
thống khác nhau, nếu không có kẻ tấn công vào được một hệ thống thì chúng cũng dễ
dàng tấn công vào các hệ thống khác.
Các mức bảo vệ trên mạng:
Vì không thể có một giải pháp an toàn tuyệt đối nên người ta thường phải sử dụng
đồng thời nhiều mức bảo vệ khác nhau tạo thành nhiều hàng rào chắn đối với các hoạt
động xâm phạm. Việc bảo vệ thông tin trên mạng chủ yếu là bảo vệ thông tin cất giữ
trong máy tính, đặc biệt là các máy chủ trên mạng. Bởi thế ngoài một số biện pháp nhằm
chống thất thoát thông tin trên đường truyền mọi cố gắng tập trung vào việc xây dựng các
mức rào chắn từ ngoài vào trong cho các hệ thống kết nối vào mạng. Thông thường bao
gồm các mức bảo vệ sau:
Quyền truy nhập: Lớp bảo vệ trong cùng là quyền truy nhập nhằm kiểm soát các tài
nguyên của mạng và quyền hạn trên tài nguyên đó. Dĩ nhiên là kiểm soát được các cấu
trúc dữ liệu càng chi tiết càng tốt. Hiện tại việc kiểm soát thường ở mức tệp.
Đăng ký tên / mật khẩu: Thực ra đây cũng là kiểm soát quyền truy nhập, nhưng
không phải truy nhập ở mức thông tin mà ở mức hệ thống. Đây là phương pháp bảo vệ
phổ biến nhất vì nó đơn giản ít phí tổn và cũng rất hiệu quả. Mỗi người sử dụng muốn
được tham gia vào mạng để sử dụng tài nguyên đều phải có đăng ký tên và mật khẩu
13
trước. Người quản trị mạng có trách nhiệm quản lý, kiểm soát mọi hoạt động của mạng và
xác định quyền truy nhập của những người sử dụng khác theo thời gian và không gian.
Mã hoá dữ liệu: Để bảo mật thông tin trên đường truyền người ta sử dụng các
phương pháp mã hoá. Dữ liệu bị biến đổi từ dạng nhận thức được sang dạng không nhận
thức được theo một thuật toán nào đó và sẽ được biến đổi ngược lại ở trạm nhận (giải
mã). Đây là lớp bảo vệ thông tin rất quan trọng.
Bảo vệ vật lý: Ngăn cản các truy nhập vật lý vào hệ thống. Thường dùng các biện
pháp truyền thống như ngăn cấm tuyệt đối người không phận sự vào phòng đặt máy
mạng, dùng ổ khoá trên máy tính hoặc các máy trạm không có ổ mềm.
Tường lửa: Ngăn chặn thâm nhập trái phép và lọc bỏ các gói tin không muốn gửi
hoặc nhận vì các lý do nào đó để bảo vệ một máy tính hoặc cả mạng nội bộ
Quản trị mạng: Trong thời đại phát triển của công nghệ thông tin, mạng máy tính
quyết định toàn bộ hoạt động của một tổ chức. Vì vậy việc bảo đảm cho hệ thống mạng
máy tính hoạt động một cách an toàn, không xảy ra sự cố là một công việc cấp thiết hàng
đầu.
An toàn thông tin bằng mật mã:
Mật mã là một ngành khoa học chuyên nghiên cứu các phương pháp truyền tin bí
mật. Mật mã bao gồm: lập mã và phá mã. Lập mã bao gồm hai quá trình: mã hóa và giải
mã.
Để bảo vệ thông tin trên đường truyền người ta thường biến đổi nó từ dạng nhận
thức được sang dạng không nhận thức được trước khi truyền đi trên mạng, quá trình này
được gọi là mã hoá thông tin (encryption), ở trạm nhận phải thực hiện quá trình ngược lại,
tức là biến đổi thông tin từ dạng không nhận thức được (dữ liệu đã được mã hoá) về dạng
nhận thức được (dạng gốc), quá trình này được gọi là giải mã. Đây là một lớp bảo vệ
thông tin rất quan trọng và được sử dụng rộng rãi trong môi trường mạng.
Để bảo vệ thông tin bằng mật mã người ta thường tiếp cận theo hai hướng:
+ Theo đường truyền (Link_Oriented_Security).
+ Từ nút đến nút (End_to_End).
Theo cách thứ nhất thông tin được mã hoá để bảo vệ trên đường truyền giữa hai nút
mà không quan tâm đến nguồn và đích của thông tin đó. Ở đây ta lưu ý rằng thông tin chỉ
được bảo vệ trên đường truyền, tức là ở mỗi nút đều có quá trình giải mã sau đó mã hoá
để truyền đi tiếp, do đó các nút cần phải được bảo vệ tốt.
14
Ngược lại theo cách thứ hai thông tin trên mạng được bảo vệ trên toàn đường
truyền từ nguồn đến đích. Thông tin sẽ được mã hoá ngay sau khi mới tạo ra và chỉ được
giải mã khi về đến đích. Cách này mắc phải nhược điểm là chỉ có dữ liệu của người dùng
thì mới có thể mã hóa được còn dữ liệu điều khiển thì giữ nguyên để có thể xử lý tại các
nút.
1.2 Tổng quan về mạng riêng ảo VPN
1.2.1 Định nghĩa về mạng riêng ảo
Mạng riêng ảo, có tên tiếng Anh là Virtual Private Network, viết tắt là VPN. Theo
VPN Consortium, VPN là mạng sử dụng mạng công cộng làm cơ sở hạ tầng để truyền
thông tin nhưng vẫn đảm bảo là một mạng riêng và kiểm soát được truy nhập. Nói cách
khác, VPN được định nghĩa là liên kết của khách hàng được triển khai trên một hạ tầng
công cộng với các chính sách như là trong một mạng riêng. Hạ tầng công cộng này có thể
là mạng IP, Frame Relay, ATM hay Internet.
1.2.2 Lợi ích của mạng riêng ảo
VPN mang lại nhiều lợi ích, những lợi ích này bao gồm:
Giảm chi phí thực thi: Việc sử dụng một VPN sẽ giúp các tổ chức giảm được chi
phí đầu tư và chi phí thường xuyên. Tổng giá thành của việc sở hữu một mạng VPN sẽ
được thu nhỏ, do chỉ phải trả ít hơn cho việc thuê băng thông đường truyền, các thiết bị
mạng đường trục và duy trì hoạt động của hệ thống. Giá thành cho việc kết nối LAN-toLAN giảm từ 20 tới 30% so với việc sử dụng đường thuê riêng truyền thống. Còn đối với
việc truy cập từ xa giảm từ 60 tới 80%.
Nâng cao khả năng kết nối: VPN tận dụng Internet để kết nối giữa các phần tử ở xa
của một Intranet. Vì Internet có thể được truy cập toàn cầu, nên hầu hết các nhánh văn
phòng, người dùng, người dùng di động từ xa đều có thể dễ dàng kết nối tới Intranet của
tổ chức của mình.
Bảo mật các giao dịch: VPN dùng công nghệ đường hầm để truyền dữ liệu qua
mạng công cộng không an toàn. Dữ liệu đang truyền được bảo mật ở một mức độ nhất
định, Thêm vào đó, công nghệ đường hầm sử dụng các biện pháp bảo mật như: Mã hoá,
xác thực và cấp quyền để bảo đảm an toàn, tính tin cậy, tính xác thực của dữ liệu được
truyền, Kết quả là VPN mang lại mức độ bảo mật cao cho việc truyền tin.
Sử dụng hiệu quả băng thông: Trong kết nối Internet dựa trên đường Lease-Line,
băng thông hoàn toàn không được sử dụng trong một kết nối Internet không hoạt động.
Các VPN, chỉ tạo các đường hầm logic đề truyền dữ liệu khi được yêu cầu, kết quả là
băng thông mạng chỉ được sử dụng khi có một kết nối Internet hoạt động. Vì vậy làm
giảm đáng kể nguy cơ lãng phí băng thông mạng.
15
Nâng cao khả năng mở rộng: Vì VPN dựa trên Internet, nên cho phép Intranet của
một công ty có thể mở rộng và phát triển khi công việc kinh doanh cần phải thay đổi với
phí tổn tối thiểu cho việc thêm các phương tiện, thiết bị. Điều này làm cho Intranet dựa
trên VPN có khả năng mở rộng cao và dễ dàng tương thích với sự phát triển trong tương
lai.
Trên đây là một số lợi ích cơ bản mà giải pháp VPN mang lại. Tuy nhiên bên cạnh
đó, nó cũng không tránh khỏi một số bất lợi như: Phụ thuộc nhiều vào Internet. Sự thực
thi của một mạng dựa trên VPN phụ thuộc nhiều vào sự thực thi của Internet.
1.2.3 Mô hình mạng riêng ảo thông dụng
Mục tiêu của công nghệ VPN là quan tâm đến ba yêu cầu cơ bản sau:
+ Các nhân viên liên lạc từ xa, người dùng di động, người dùng từ xa của một
Công ty có thể truy cập vào tài nguyên mạng của công ty họ bất cứ lúc nào.
+ Có khả năng kết nối từ xa giữa các nhánh văn phòng.
+ Kiểm soát được truy cập của các khách hàng, nhà cung cấp là đối tác quan trọng
đối với giao dịch thương mại của công ty.
Với các yêu cầu cơ bản như trên, ngày nay, VPN được phát triển và phân thành 2
loại như sau: VPN truy cập từ xa (Remote Access VPN), VPN Site – to – Site (Bao gồm 2
mô hình: VPN Cục bộ (Intranet VPN), VPN mở rộng (Extranet VPN)).
VPN truy cập từ xa (Remote Access VPN):
Cung cấp các dịch vụ truy nhập VPN từ xa đến một mạng Intranet hay Extranet của
một tổ chức trên nền hạ tầng mạng công cộng. Dịch vụ này cho phép người dùng truy
xuất tài nguyên mạng của Công ty họ như là họ đang kết nối trực tiếp vào mạng đó.
Giống như tên gọi của nó, VPN truy cập từ xa cho phép người dùng từ xa, người
dùng di động của một tổ chức có thể truy cập tới các tài nguyên mạng của tổng công ty.
Điển hình, các yêu cầu truy cập từ xa này được đưa ra bởi người dùng đang di chuyển
hoặc các nhánh văn phòng từ xa mà không có một kết nối cố định tới Intranet của tổng
công ty.
16
Hình 1. 1: Thiết lập truy cập từ xa không có VPN
Bằng việc thực thi giải pháp VPN truy cập từ xa, các nhánh văn phòng và người
dùng từ xa chỉ cần thiết lập kết nối Dial-up cục bộ tới ISP và thông qua đó để kết nối tới
mạng của công ty qua Internet. Thiết lập VPN truy cập từ xa tương ứng được mô tả như
trong hình 1.2.
Hình 1. 2: Thiết lập VPN truy cập từ xa
17
VPN Cục bộ (Intranet VPN):
Intranet VPN mở rộng các dịch vụ của mạng nội bộ tới các trụ sở ở xa, đây là một
mô hình liên mạng hướng phi kết nối qua một mạng WAN dùng chung. Yêu cầu ở đây là
phải thực hiện được tất cả các dịch vụ mạng đã được thực hiện ở mạng trung tâm, bao
gồm các dịch vụ về an ninh, VoIP, chất lượng dịch vụ cũng như các dịch vụ đa phương
tiện (Multimedia). Mục đích của Intranet VPN là giảm thời gian cũng như chi phí lắp đặt,
hỗ trợ các đường dây thuê riêng theo các cách kết nối WAN truyền thống.
Intranet VPN thường được dùng để kết nối các nhánh Văn phòng từ xa của một tổ
chức với Intranet trung tâm của tổ chức đó, nên còn được gọi là mạng riêng ảo chi nhánh.
Một giải pháp Intranet VPN điển hình được mô tả như trong hình 1.3.
Hình 1. 3: Thiết lập VPN dựa trên VPN
Ưu điểm của việc thiếp lập dựa trên VPN như trong hình là:
+ Vì Internet hoạt động như một phương tiện kết nối, nó dễ dàng cung cấp các liên
kết ngang hàng mới.
+ Với việc loại trừ các dịch vụ đường dài giúp cho tổ chức giảm được chi phí của
hoạt động Intranet.
Tuy nhiên cũng có một số nhược điểm:
18
+ Vì dữ liệu được định đường hầm qua một mạng chia sẽ công cộng nên các tấn
công mạng như: từ chối dịch vụ vẫn đe doạ nghiêm trọng đến an ninh mạng.
+ Khả năng mất các gói dữ liệu khi truyền vẫn còn cao.
+ Vì sự hiện diện của kết nối Internet sự thực thi có thể bị gián đoạn và QoS có thể
không được đảm bảo.
Mạng riêng ảo mở rộng (Extranet VPN):
Liên kết các khách hàng, các nhà cung cấp, hay cộng đồng người sử dụng vào
mạng Intranet của một tổ chức trên nền hạ tầng mạng công cộng sử dụng các đường
truyền thuê bao. Giải pháp này cũng cung cấp các chính sách như trong mạng riêng của
một tổ chức như đảm bảo tính bảo mật, tính ổn định. Tương tự như Intranet VPN,
Extranet VPN cũng có kiến trúc tương tự, tuy nhiên điểm khác biệt giữa chúng là phạm vi
các ứng dụng cho phép các đối tác Extranet VPN sử dụng. So với Intranet VPN thì vấn đề
tiết kiệm chi phí không rõ bằng nhưng điều quan trọng là khả năng cộng tác với các đối
tác, khách hàng hay các nhà cung cấp sản phẩm. Việc để cho khách hàng nhập trực tiếp
dữ liệu về các hợp đồng vào hệ thống sẽ tiết kiệm được rất nhiều thời gian cũng như các
lỗi không đáng có, tuy nhiên việc này rất khó thực hiện với công nghệ WAN truyền
thống. Extranet VPN thường sử dụng các kết nối dành riêng và thêm vào các lớp bảo mật
để xác thực và giới hạn truy nhập trên hệ thống.
Thực thi giải pháp VPN làm cho công việc thiết lập một Extranet trở nên dễ dàng
và giảm chi phí đáng kể.
Hình 1. 4: Mạng Extranet dựa trên VPN
19
Ưu điểm chính của Extranet VPN là:
+ Chi phí rất nhỏ so với cách thức truyền thống.
+ Dễ thực thi, duy trì và dễ thay đổi.
+ Dưới sự hiện diện của Internet, ta có thể chọn các đại lý lớn.
+ Vì một phần kết nối Internet được duy trì bởi ISP nên số lượng nhân viên hỗ trợ
có thể giảm xuống.
Tuy nhiên cũng có một số nhược điểm:
+ Các nguy cơ an ninh như tấn công DOS vẫn còn tồn tại.
+ Tăng rủi ro vì các xâm nhập vào Intranet của tổ chức.
+ Độ trễ truyền thông vẫn lớn và thông lượng bị giảm xuống rất thấp với các ứng
dụng Multimedia.
+ Sự thực thi có thể bị gián đoạn và QoS cũng có thể không được bảo đảm.
Tuy có một số nhược điểm như đã mô tả, nhưng các ưu điểm của giải pháp VPN
vẫn vượt trội, “Mạng riêng ảo - ưu thế của công nghệ, chi phí và bảo mật”.
1.2.4 Một số giao thức mạng riêng ảo
Tính bảo mật trong VPN đạt được thông qua "đường hầm" (tunneling) bằng cách
đóng gói thông tin trong một gói IP khi truyền qua Internet. Thông tin sẽ được giải mã tại
đích đến bằng cách loại bỏ gói IP để lấy ra thông tin ban đầu.
Có bốn giao thức đường hầm (tunneling protocols) phổ biến thường được sử dụng
trong VPN, mỗi một trong chúng có ưu điểm và nhược điểm riêng. Chúng ta sẽ xem xét
và so sánh chúng dựa trên mục đích sử dụng.
+ Point-to-Point Tunneling Protocol (PPTP)
+ Layer2 Tunneling Protocol (L2TP)
+ Secure Socket Layer (SSL)
+ Internet Protocol Security (IPSec)
PPTP (Point-to-Point Tunneling):
Giao thức PPTP được phát triển bởi Microsoft và một số công ty công nghệ khác,
là phương pháp VPN được hỗ trợ rộng rãi nhất giữa các máy trạm chạy Windows. PPTP
là sự mở rộng của giao thức Internet chuẩn Point-to-Point (PPP) và sử dụng cùng kiểu xác
thực như PPP (PAP, SPAP, CHAP, MS-CHAP, EAP).
20
PPTP thiết lập đường hầm (tunnel) nhưng không mã hóa. Nó sử dụng cùng với
giao thức Microsoft Point-to-Point Encryption (MPPE) để tạo ra VPN bảo mật. PPTP
cũng chạy nhanh hơn các phương pháp kết nối VPN khác.
Do phần mềm kết nỗ hỗ trợ PPTP được tích hợp trong hầu hết các hệ điều hành,
triển khai PPTP Server trở nên dễ dàng hơn vì không phải cài đặt phần mềm hỗ trợ trên
máy trạm. PPTP client cũng sẵn dùng trên Linux, Macintosh. Các PPTP VPN cũng được
hỗ trợ bởi các thiết bị phần cứng hoặc phần mềm tường lửa, bao gồm ISA Server, Cisco
PIX, SonicWall và một vài model của WatchGuard.
PPTP đã từng bị chỉ trích nhiều vì nhiều khiếm khuyết về bảo mật và rất nhiều các
lỗi này đã được chỉ ra trong các phiên bản hiện thời của giao thức này. Sử dụng xác thực
EAP sẽ tăng cường đáng kể khả năng bảo mật của PPTP VPN vì EAP sử dụng chứng chỉ
số (digital certificates) để xác thực lẫn nhau giữa máy khách và máy chủ. Một trong các
ưu điểm của sử dụng PPTP là nó không yêu cầu hạ tầng mã khóa công cộng (Public Key
Infrastructure).
L2TP (Layer 2 Tunneling Protocol):
Giao thức L2TP được cộng tác cùng phát triển bởi Cisco và Microsoft, kết hợp các
đặc điểm của cả PPTP và giao thức Layer 2 Forwarding (L2F) thuộc sở hữu của Cisco.
Một trong các ưu việt của L2TP so với PPTP là có có thể sử dụng trên các mạng non-IP
networks ví dụ như ATM, frame relay và X.25. Giống như PPTP, L2TP hoạt động tại lớp
liên kết dữ liệu (data link layer) của mô hình mạng OSI. L2TP VPN được hỗ trợ bởi rất
nhiều các hãng sản xuất thiết bị phần cứng và phần mềm tường lửa như ISA Server,
CheckPoint, Cisco PIX và WatchGuard. Chương trình L2TP VPN client được tích hợp
trong các phiên bản từ Windows 2000, XP and 2003 trở đi.
Giao thức IP Security (IPSec) và một giao thức đặc biệt của nó là Encapsulating
Security Payload (ESP) protocol, cung cấp khả năng mã hóa cho L2TP tunnels.
L2TP yêu cầu sử dụng chứng chỉ số (digital certificates). Xác thực người dùng có
thể được thực hiện thông qua cùng cơ chế xác thực PPP tương tự như PPTP, nhưng L2TP
cũng cung cấp cách xác thực máy tính (computer authentication). Điều này bổ sung thêm
mức độ bảo mật cho L2TP.
L2TP có một vài ưu điểm so với PPTP. PPTP cho bạn khả năng bảo mật dữ liệu,
nhưng L2TP còn tiến xa hơn khi cung cấp thêm khả năng đảm bảo tính toàn vẹn dữ liệu
(bảo vệ chống lại việc sửa đổi dữ liệu trong khoảng thời gian nó di chuyển từ người gửi
đến người nhận, khả năng xác thực nguồn gốc (xác định người dùng đã gửi dữ liệu có
thực sự đúng người), và khả năng bảo vệ chống gửi lại – replay protection (chống lại việc
hacker chặn dữ liệu đã được gửi, ví dụ thông tin quyền đăng nhập (credentials), rồi sau đó
21
gửi lại (replay) chính thông tin đó để bẫy máy chủ. Mặt khác, do liên quan đến cung cấp
các khả năng bảo mật mở rộng làm cho L2TP chạy chậm hơn chút ít so với PPTP.
IPSec:
Các quản trị mạng Windows thường biết đến IPsec như là một giao thức sử dụng
để mã hóa sử dụng cùng với giao thức L2TP. Tuy nhiên, IPsec bản thân nó cũng có thể
được sử dụng như là một giao thức đường hầm độc lập, và trên thực tế nó được tích hợp
trong rất nhiều giải pháp VPN "tiêu chuẩn", đặc biệt trong các giải pháp VPN gateway-togateway (site-to-site) để nối 2 mạng LAN với nhau. IPsec hoạt động tại network layer
(Layer 3) trong mô hình OSI.
Rất nhiều thiết bị phần cứng VPN sử dụng IPsec. Ví dụ, Cisco's VPN
Concentrators và PIX firewalls hỗ trợ IPSec, cũng như các thiết bị của NetScreen,
SonicWall, và WatchGuard. Các phần mềm tường lửa như ISA Server, CheckPoint và
Symantec Enterprise Firewall cũng hỗ trợ IPSec VPN.
IPSec trong chế độ đường hầm bảo mật các gói tin trao đổi giữa hai gateway hoặc
giữa máy tính trạm và gateway. Như tên của nó, IPsec chỉ hoạt động với các mạng và ứng
dụng dựa trên nền tảng IP (IP-based network). Giống như PPTP và L2TP, IPsec yêu cầu
các máy tính trạm VPN phải được cài đặt sẵn phần mềm VPN client.
Việc xác thực được thực hiện thông qua giao thức Internet Key Exchange (IKE)
hoặc với chứng chỉ số (digital certificates) đây là phương thức bảo mật hơn hoặc thông
qua khóa mã chia sẻ (preshared key). IPSec VPN có thể bảo vệ chống lại hầu hết các
phương pháp tấn công thông dụng bao gồm Denial of Service (DoS), replay, và "man-inthe-middle".
Hỗ trợ IPSec được tích hợp trong Windows 2000/XP/20 trở đi. Cisco and
CheckPoint cũng cung cấp các phần mềm máy khách cho các sản phẩm IPSec-based VPN
của họ. Chú ý rằng có thể bạn sẽ cần phải mua bản quyền cho các phần mềm máy khách
này.
SSL:
Một công nghệ VPN đang phát triển nhanh chóng và trở nên phổ biến là Secure
Sockets Layer (SSL) VPN. Một tiện lợi đáng kể của SSL VPN là nó không yêu cầu phần
mềm VPN client trên các máy khách VPN. Điều đó bởi vì SSL VPN sử dụng trình duyệt
web như là ứng dụng máy khách. Do đó, SSL VPN còn được gọi là giải pháp "clientless".
Điều này cũng có nghĩa là các giao thức có thể được xử lý bởi SSL VPN sẽ bị hạn chế
nhiều hơn. Dù sao, điều này cũng đem lại một lợi thế về bảo mật. Với SSL VPN, thay vì
cho phép VPN client truy xuất vào toàn bộ mạng hoặc một mạng con (subnet) như với
IPsec, có thể hạn chế chỉ cho phép truy xuất tới một số ứng dụng cụ thể. Nếu một ứng
22
dụng mà bạn muốn họ truy cập không phải là là loại ứng dụng dựa trên trình duyệt
(browser-based), thì cần phải tạo ra một plug-ins Java hoặc Active-X để làm cho ứng
dụng đó có thể truy xuất được qua trình duyệt. Việc này lại phát sinh một bất tiện khác là
để sử dụng các plug-ins đó, thiết lập trên trình duyệt của người dùng phải cho phép cài đặt
chúng - khiến cho trình duyệt có thể khi khai thác bởi các applets nguy hiểm. Để giảm
nguy cơ, người dùng phải thiết lập chặn các nội dung động chưa được chứng nhận và chỉ
cho phép các plug-ins đã được chứng nhận số.
SSL VPN hoạt động ở session layer – cao hơn IPsec trong mô hình OSI. Điều này
cho nó khả năng điều khiển truy cập theo khối tốt hơn. SSL VPN sử dụng chứng chỉ số
(digital certificates) để xác thực server. Mặc dù các phương pháp khác cũng có thể áp
dụng, nhưng sử dụng chứng chỉ số được ưa chuộng vì khả năng bảo mật cao nhất.
1.3 Công nghệ mã nguồn mở
1.3.1 Phần mềm mã nguồn mở là gì?
Phần mềm nguồn mở (PMNM) là phần mềm với mã nguồn được công bố và sử
dụng một giấy phép nguồn mở. Giấy phép này cho phép bất cứ ai cũng có thể nghiên cứu,
thay đổi và cải tiến phần mềm, và phân phối phần mềm ở dạng chưa thay đổi hoặc đã thay
đổi.
1.3.2 Phương pháp xây dựng phần mềm mã nguồn mở
Mô hình xây dựng phần mềm nguồn mở là một mô hình độc đáo và nó được hiện
thực hoá chỉ với sự ra đời của Internet và sự bùng nổ thông tin do Internet mang lại. việc
xây dựng phần mềm nguồn mở khởi đầu một cách rất phi cấu trúc. Những người lập trình
đầu tiên chỉ đưa ra với công chúng một số mã chức năng tối thiểu, rồi chỉnh sửa dần trên
cơ sở các ý kiến phản hồi. Rồi có thể có thêm những nhà lập trình khác tới, thay đổi hoặc
xây thêm trên cơ sở những mã nguồn có sẵn. Cứ thế theo thời gian, cả một hệ điều hành
hay bộ ứng dụng sẽ định hình và không ngừng phát triển.
Phương thức xây dựng phần mềm mã nguồn mở trên đã chứng tỏ tính ưu việt của
mình trên một số khía cạnh sau:
Giảm sự trùng lặp nguồn lực: Bằng cách công bố sớm phần mềm và trao cho
người sử dụng quyền chỉnh sửa cũng như lưu hành mã nguồn, các nhà lập trình sẽ được
sử dụng kết quả làm việc của đồng sự. Tính kinh tế của quy mô trở nên rất lớn. Thay vì
việc năm nhà lập trình ở mỗi trong số 10 công ty cùng viết một ứng dụng mạng, triển
vọng là sẽ kết hợp được công sức của cả 50 người. Việc giảm sự trùng lặp trong phân bổ
nguồn lực cho phép quá trình xây dựng một phần mềm đạt tới quy mô đại chúng chưa
từng có trong lịch sử, liên kết hàng ngàn nhà lập trình trên toàn thế giới.
23
- Xem thêm -