Lịch sử hình thành và phát triển:Sự xuất hiện mạng chuyên dụng ảo, còn gọi là mạng riêng ảo VPN, bắt nguồn từ yêu cầu của khách hàng client, mong muốn có thể kết nối một cách có hiệu quả
Trang 1TRƯỜNG KHOA HỌC MÁY TÍNH
KHOA KỸ THUẬT MMT & TRUYỀN THÔNG
🕮🕮
✍
ĐỒ ÁN CÁ NHÂN / NHÓM
Đề Tài: TÌM HIỂU VỀ VPN Môn Học: HỆ ĐIỀU HÀNH LINUX-UNIX
GIẢNG VIÊN : ThS HOÀNG PHI CƯỜNG
Trang 33.2:CÁC BƯỚC ĐỂ CÀI ĐẶT OPENVPN TRÊN LINUX: 21
PHẦN 1:TỔNG QUAN VỀ LINUX VÀ DỊCH VỤ VPN1.1 TỔNG QUAN VỀ LINUX:
1.1.1 Lịch sử ra đời Unix & Linux:
✔ Khái niệm
Hình 1.1:Linh vật của hệ điều hành Linux
Linux là một HĐH dạng UNIX (Unix-like Operating System) chạy trên máy PCvới bộ điều khiển trung tâm (CPU) Intel 80386 trở lên, hay các bộ vi xử lý trung tâmtương thích AMD, Cyrix
Linux ngày nay còn có thể chạy trên các máy Macintosh hoặc SUN Sparc.Một đặc điểm nổi bật của Linux là một hệ điều hành miễn phí và mã nguồn mở
✔ Lịch sử ra đời
Giữa năm 1960, AT&T Bell Laboratories và một số trung tâm khác tham gia tạo
ra một HĐH mới được đặt tên là Multics (Multiplexed Information and ComputingService)Đến năm 1969, chương trình Multics bị bãi bỏ vì đó là một dự án quá nhiềutham vọng.Ken Thompson, Dennis Ritchie và một số đồng nghiệp của Bell Labs đã
2
Trang 4không bỏ cuộc Thay vì xây dựng một HĐH làm nhiều việc một lúc, họ phát triển mộtHĐH đơn giản -chỉ làm tốt một việc là chạy chương trình Peter Neumann đặt tên choHĐH đơn giản này là Unix
Năm 1973, sử dụng ngôn ngữ C của Ritchie, Thompson đã viết lại toàn bộ hệđiều hành Unix và đây là một thay đổi quan trọng của Unix.Nhờ đó Unix từ chỗ là hệđiều hành cho một máy PDP-xx trở thành hệ điều hành có thể chạy trên nhiều loại máytính khác nhau Khoảng 1977 bản quyền của UNIX được giải phóng và hệ điều hànhUNIX trở thành một thương phẩm
Năm 1991, Linus Torvalds , sinh viên của đại học tổng hợp Helsinki, Phần Lan,bắt đầu xem xét Minix với mục đích nghiên cứu cách tạo ra một HĐH Unix chạy trênmáy PC với bộ vi xử lý Intel 80386 Ngày 25/8/1991, Linus cho ra version 0.01 vàthông báo trên comp.os.minix của Internet về dự án của mình Ngày 1/1992, Linus cho
ra version 0.12 với shell và C compiler Linus đặt tên HĐH của mình là Linux.Năm 1994, phiên bản chính thức 1.0 được phát hành
Linux được viết lại toàn bộ từ con số không, tức là không sử dụng một dòng lệnhnào của Unix, để tránh vấn đề bản quyền của Unix Tuy nhiên hoạt động của Linuxhoàn toàn dựa trên nguyên tắc của hệ điều hành Unix Vì vậy nếu một người nắm đượcLinux, thì sẽ nắm được UNIX Quá trình phát triển của Linux được tăng tốc bởi sự hỗtrợ của chương trình GNU (GNU’s Not Unix)
Linux có một linh vật chính thức –Linux penguin, gọi là Tux
1.1.2 Các đặc trưng của Unix & Linux:
Linux là miễn phí (free) và Mã nguồn mở (Open Source):Bao gồm cả kernel,
drivers, các công cụ phát triển,…
Tính ổn định: Linux có tính ổn định cao, ít bị lỗi khi sử dụng so với các HĐH
khác Linux có thể chạy nhiều năm, không cần reboot
Tính bảo mật: Linux cung cấp các mức bảo mật khác nhau cho người sử dụng.
Mỗi người dùng chỉ làm việc trên một không gian dành riêng
Multi-Tasking Multi-Threading, : Là khả năng mà HĐH gán cho từng tiến trìnhhoặc chiếm quyền sử dụng CPU trong một khoảng thời gian nhất định
3
Trang 5Multi-User: Là khả năng cho phép nhiều người dùng đồng thời truy cập vào
cùng một máy
Multi-flatform: Chạy trên nhiều nền tảng phần cứng khác nhau.
Multi-Standard Compliant: Tương thích với hầu hết các hệ POSIX, System V,
và BSD
Hỗ trợ nhiều hệ thống tập tin: Minix-1, MS-DOS, VFAT, FAT32, ISO 9660
(CD-ROMS), … Hệ thống tập tin chính của Linux là ext2, ext3, & ext4
Multiple Networking Protocols: Các giao thức nền tảng được hỗ trợ bởi Kernel
như TCP, IPv4, IPv6, X.25, IPX, Appletalk, Netrom, …
1.1.3 Các thành phần trong một bản Linux:
● Hệ lõi (kernel-nhân): Xác lập nhiều chương trình cấp thấp và tương tác trựctiếp với CPU, điều khiển thiết bị phần cứng và điều khiển việc thực hiệnchương trình
● Cấu trúc hệ thống tập tin: Là hệ thống lưu trữ các thông tin trên thiết bị lưutrữ
● Hệ vỏ (shell): Là cách người dùng tương tác gián tiếp với phần cứng thôngqua kernel Hệ vỏ ngầm định là bash Các hệ vỏ khác như tcsh , ksh, zsh
● Các tiện ích: Có chức năng chính là thực hiện các công việc dịch vụ của hệđiều hành
Trang 6Các ứng dụng mạng và Internet:
● WebServer, FTP Server, Mail Server, …
● WebBrowser, Instant Messenger: Firefox, GIMP,…
5
Trang 71.2.TỔNG QUAN VỀ DỊCH VỤ VPN:
1.2.1 Lịch sử hình thành và phát triển:
Sự xuất hiện mạng chuyên dụng ảo, còn gọi là mạng riêng ảo (VPN), bắt nguồn
từ yêu cầu của khách hàng (client), mong muốn có thể kết nối một cách có hiệu quảvới các tổng đài thuê bao (PBX) liên với nhau thông qua mạng diện rộng (WAN).Trước kia, hệ thống điện thoại nhóm hoặc mạng cục bộ (LAN) trước kia sử dụngcác đường thuê riêng cho việc tổ chức mạng chuyên dùng để thực hiện việc thông tinvới nhau Các mốc đánh dấu sự phát triển của VPN:
- Năm 1975, France Telecom đưa ra dịch vụ Colisee, cung cấp dịch vụ dâychuyên dùng cho các khách hàng lớn Colisee có thể cung cấp phương thức gọi sốchuyên dùng cho khách hàng Dịch vụ này căn cứ vào lượng dịch vụ mà đưa ra cướcphí và nhiều tính năng quản lý khác
- Năm 1985, Sprint đưa ra VPN, AT&T đưa ra dịch vụ VPN có tên riêng là mạngđược định nghĩa bằng phần mềm SDN
- Năm 1986, Sprint đưa ra Vnet, Telefonica Tây Ban Nha đưa ra Ibercom
- Năm 1988, nổ ra đại chiến cước phí dịch vụ VPN ở Mỹ, làm cho một số kháchhàng lớn chịu nổi cước phí sử dụng VPN và có thể tiết kiệm gần 30% chi phí, đã kíchthích sự phát triển nhanh chóng dịch vụ này tại Mỹ
- Năm 1989, AT&T đưa ra dịch vụ quốc tế I VPN là GSDN
- Năm 1990, MCI và Sprint đưa ra dịch vụ VPN quốc tế VPN; Telstra của xtrây-li-a đưa ra dịch vụ VPN rộng nước đầu tiên ở khu vực châu Á - Thái BìnhDương
Ô Năm 1992, Viễn thông Hà Lan và Telia Thuỵ Điển thành lập công ty hợp tácđầu tư Unisource, cung cấp dịch vụ VPN
- Năm 1993, AT&T, KDD và viễn thông Singapore tuyên bố thành lập Liênminh toàn cầu World Partners, cung cấp hàng loạt dịch vụ quốc tế, trong đó có dịch vụVPN
6
Trang 8- Năm 1994, BT và MCI thành lập công ty hợp tác đầu tư Concert, cung cấp dịch
vụ VPN, dịch vụ chuyển tiếp khung (Frame relay)
- Năm 1995, ITU-T đưa ra khuyến nghị F16 về dịch vụ VPN toàn cầu (GPS)
- Năm 1996, Sprint và viễn thông Đức (Deutsch Telecom), Viễn thông Pháp(French Telecom) kết thành liên minh Global One
- Năm 1997 có thể coi là một năm quan trọng đối với công nghệ VPN, công nghệnày có mặt trên khắp các tạp chí khoa học công nghệ, các cuộc hội thảo Các mạngVPN xây dựng trên cơ sở hạ tầng mạng Internet công cộng đã mang lại một khả năngmới, một cái nhìn mới cho VPN Công nghệ VPN là giải pháp thông tin tối ưu cho cáccông ty, tổ chức có nhiều văn phòng, chi nhánh ở xa Ngày nay, với sự phát triển củacông nghệ, cơ sở hạ tầng mạng IP (Internet) ngày một hoàn thiện đã làm cho khả năngcủa VPN ngày một hoàn thiện Hiện nay, VPN không chỉ dùng cho dịch vụ thoại màcòn dùng cho các dịch vụ dữ liệu, hình ảnh và các dịch vụ đa phương tiện
Trang 9máy chủ trong mạng riêng đó từ một điểm bên ngoài của mạng đó, và không làm ảnhhưởng đến an ninh bảo mật của mạng đó.
Trong thực tế, VPN là 1 mạng dành riêng để kết nối các máy tính với nhau thôngqua (thường là) đường truyền Internet, là 1 dịch vụ mạng ảo được triển khai trên Cơ sở
hạ tầng của hệ thống mạng công cộng (Internet) VPN được dùng để kết nối các vănphòng, chi nhánh, người dùng làm việc ở xa trụ sở chính Máy tính thông qua mạngriêng ảo (VPN) sẽ nhìn thấy nhau như 1 mạng LAN
VPN có thể được sử dụng để gửi bất kì loại dữ liệu nào như voice, video, data.VPN sử dụng kỹ thuật Tunneling Protocols - Đây là kỹ thuật đóng gói một gói tin
dữ liệu bên trong một gói tin khác để tạo ra một kênh truyền an toàn Để cung cấp kếtnối giữa các máy tính, các gói thông tin được bao bọc bằng một header có chứa nhữngthông tin định tuyến, cho phép dữ liệu có thể gửi từ máy truyền qua môi trường mạngchia sẻ và đến được máy nhận, như truyền trên các đường ống riêng được gọi làtunnel Để bảo đảm tính riêng tư và bảo mật trên môi trường chia sẻ này, các gói tinđược mã hóa và chỉ có thể giải mã với những khóa thích hợp, ngăn ngừa trường hợp
"trộm" gói tin trên đường truyền
1.2.3 Phân loại:
VPN là khái niệm chung cho việc thiết lập kênh truyền ảo, nhưng còn tùy thuộcvào mô hình mạng và nhu cầu sử dụng mà chọn loại thiết kế cho phù hợp Công nghệVPN có thể được phân thành 2 loại cơ bản: Site-to-Site VPN và Remote Access VPN
Site-to-Site VPN: là mô hình dùng để kết nối các hệ thống mạng ở các nơi khác
nhau tạo thành một hệ thống mạng thống nhất Ở loại kết nối này thì việc chứng thựcban đầu phụ thuộc vào thiết bị đầu cuối ở các Site, các thiết bị này hoạt động nhưGateway và đây là nơi đặt nhiều chính sách bảo mật nhằm truyền dữ liệu một cách antoàn giữa các Site
Site-to-Site VPN hay còn gọi là LAN-to-LAN VPN sử dụng kết nối dạng tunnelmode giữa các Gateway Gateway có thể là các Router hay Firewall router hỗ trợVPN
Remote Access VPN: Loại này thường áp dụng cho nhân viên làm việc lưu động
hay làm việc ở nhà muốn kết nối vào mạng công ty một cách an toàn Cũng có thể ápdụng cho văn phòng nhỏ ở xa kết nối vào Văn phòng trung tâm của công ty RemoteAccess VPN còn được xem như là dạng User-to-LAN, cho phép người dùng ở xa dùngphần mềm VPN Client kết nối với VPN Server
8
Trang 10VPN là giải pháp thiết kế mạng khá hay, VPN hoạt động nhờ vào sự kết hợp vớicác giao thức đóng gói: PPTP, L2TP, IPSec, GRE, MPLS, SSL, TLS.
9
Trang 11- Tính mở rộng và linh động: VPN đã xóa bỏ rào cản về mặt địa lý cho hệ thốngmạng, sẵn sàng kết nối các mạng riêng lại với nhau một cách dễ dàng thông qua môitrường Internet.
10
Trang 12Đường hầm kết nối (Tunneling)
Khác với việc thuê một đường truyền riêng các kết nối bằng việc sử dụng cáchtạo đường hầm không liên tục mà chỉ được xác lập khi có yêu cầu kết nối Do vậy khikhông còn được sử dụng các kết nối này sẽ được hủy giải phóng băng thông tàinguyên mạng cho các yêu cầu khác Điều này cho thấy một ưu điểm rất lớn của VPN
so với việc thuê đường truyền riêng đó là sự linh hoạt
Cấu trúc logic của mạng được thiết lập dành cho thiết bị mạng tưởng ứng củamạng đỏ mà không cần quan tâm đến hạ tầng mạng hiện có là một đặc điểm "áo" kháccủa VPN Các thiết bị phần cứng của mạng đều trở nền tảng hình với người dùng vàthiết bị của mạng VPN Chính vì thế trong quá trình tạo ra đường hầm những kết nốihình thành nên mạng riêng áo không có cùng tỉnh chất vật lý với những kết nối cố địnhtrong mạng Lan thông thường
Tạo đường hàm chính là hình thành 2 kết nối đặc biệt giữa hai điểm cuối trênmạng Các gói tin IP trước khi chuyển đi phải được đóng gói mã hoa gói tin gốc vàthêm IP header mới Sau đó các gói tin sẽ được giải mã tách bỏ phần tiêu để tạigateway của điểm đến trước khi được chuyển đến điểm đến đầu cuối
Đường hãm kết nối khiến việc định tuyến trở nên dễ dàng hơn hoàn toàn trongsuốt với người sử dụng
Có hai loại đường hầm kết nối thường trực và tạm thời Tính hiệu quả và tối ưucủa một đường hầm kết nối thưởng trực là không cao Do đó đường hầm tạm thờithường được sử dụng hơn vì tính linh động và hữu dụng hơn cho VPN
Có hai kiểu kết nối hình thành giữa hai đầu kết nối của mỗi đường hầm là Lan toLan và Client to Lan
(i) Lan to Lan
Kết nối lan to lan được hình thành giữa 2 văn phòng chi nhánh hoặc chỉ nhánhvới công ty Các nhân viên tại những văn phòng và chi nhánh đều có thể sử dụngđường hầm để trao đổi dữ liệu
11
Trang 13(ii) Client to lan
Kiểu kết nối client to lan dành cho các kết nối di động của các nhân viên ở xa đếncông ty hay chỉ nhánh Để thực hiện được điều này các máy client phải chạy một phầnmềm đặc biệt cho phép kết nối với gateway của công ty hay chỉnh nhánh Khi kết nốinày được thực hiện thì đã xác lập một đường hầm kết nối giữa công ty và nhân viên ởxa
Dịch vụ bảo mật (secure services)
Nếu chỉ thực hiện tạo ra một đường hầm kết nối đến chi nhánh hay nhân viên ở
xa mà không hề có cơ chế bảo vệ cho các dữ liệu di chuyển trên nó thì cũng như việccác ngân hàng chuyển tiền mà không có lực lượng bảo vệ, hoàn toàn có thể bị đánhcắp, thay đổi trên quá trình vận chuyển một cách dễ dàng Chính vì vậy các cơ chế bảomật cho VPN chình là xương sống của giải pháp này
Một mạng VPN cần cung cấp 4 chức năng bảo mật cho dữ liệu:
o Xác thực(Authentication): Đảm bảo dữ liệu đến từ một nguồn quy định
o Điều khiển truy cập (Access control) : hạn chế quyền từ những ngườidùng bất hợp pháp
o Tin cậy (Confidentiality): Ngăn chặn việc theo dõi hay sao chép dữ liệutrong quá trình vận chuyển trên mạng
o Tính toàn vẹn (Data integrity): đảm bảo dữ liệu không bị thay đổi, đượcbảo toàn từ đầu gửi đến đầu nhận
Các dịch vụ bảo mật trên được cung cấp tại lớp 2 (Data nk) và lớp 3 (Network)trong mô hình 7 lớp OSI.Các dịch vụ bảo mật đều được triển khai tại các lớp thấp của
mô hình OSI làm giảm sự tác động đến người dùng Việc bảo mật có thể thực hiện tạicác đầu cuối (end to end) hoặc giữa các nút (node to node)
Bảo mật tại các điểm đầu cuối là hình thức bảo mật có được độ tin cậy cao ,ví dụnhư tại 2 máy tính đầu cuối Tuy vậy nhưng hình thức bảo mật đầu cuối hay client toclient lại có nhược điểm làm tang sự phức tạp cho người dùng khó khăn cho việc quảnlý
12
Trang 14Có 2 dạng chứng thực kiểu này: Pre-shared key, Digital signature hoặc certificate.
o Pre-shared key được sử dụng trong các môi trường VPN nhỏ Một hay nhiềukhóa được cấu hình và dùng để chứng thực để nhận dạng một thiết bị
o Digital signature (digital certificate) được sử dụng để chứng thực thiết bịtrong các môi trường triển khai VPN lớn
Chứng thực người dùng:
Chứng thực người dùng trong hệ thống VPN là gì, tức là chỉ cho phép người dùng hợp
lệ kết nối và truy cập vào hệ thống Người dùng phải cung cấp username và password
2.1.3 Các loại VPN
Có 2 loại VPN thông dụng:
● Site-to-site VPN
13
Trang 15
● Remote Access VPN
Một số giao thức được sử đụng trong VPN: PPTP, L2TP, IPsec, …
2.1.4 Ưu điểm & Nhược điểm OpenVPN
Khả năng bảo mật tốt OpenVPN
giúp các thông tin dữ liệu được truyền dẫn
một cách an toàn Mọi dữ liệu cũng được
truyền tải đầy đủ
Tốc độ chậm khá chậm trongquá trình truyền tải
Khả năng mã hóa rất tốt Trước mọi
mục tiêu tấn công thì dữ liệu sẽ được vô
hiệu hóa
OpenVPN được thiết lập thủcông, khá phức tạp Người sử dụngphải am hiểu chuyên môn vềOpenVPN là gì
Tương thích với mọi hệ điều hành
Giúp các đơn vị sử dụng giao thức sử dụng
Trang 162.2.CHỨC NĂNG:
2.2.1 Công dụng của OpenVPN
1 Bảo mật dữ liệu: OpenVPN sử dụng mã hóa mạnh mẽ để bảo vệ dữ liệu truyền
qua mạng, ngăn chặn người khác theo dõi hoạt động trực tuyến của bạn
2 Truy cập từ xa an toàn: OpenVPN cho phép bạn kết nối mạng riêng ảo từ xa,
giúp bạn truy cập tài nguyên mạng trong một môi trường an toàn, như vănphòng từ xa hoặc qua Internet
3 Bypass kiểm duyệt và hạn chế địa lý: Bằng cách kết nối vào máy chủ VPN
đặt ở các quốc gia khác nhau, bạn có thể tránh kiểm duyệt Internet và các hạnchế địa lý, cho phép truy cập nội dung trên toàn thế giới
4 Mạng riêng ảo cho doanh nghiệp: OpenVPN thường được sử dụng bởi các tổ
chức và doanh nghiệp để tạo ra mạng riêng ảo bảo mật cho nhân viên, giúp họtruy cập tài nguyên nội bộ từ xa một cách an toàn
5 Tích hợp với ứng dụng và dịch vụ khác: OpenVPN có thể tích hợp dễ dàng
với nhiều ứng dụng và dịch vụ khác nhau như firewalls, quản lý danh sách truycập, và nhiều giải pháp bảo mật khác
6 Tùy chỉnh linh hoạt: OpenVPN cho phép bạn tùy chỉnh cấu hình mạng VPN
của mình theo cách phù hợp với nhu cầu cụ thể của bạn
7 Hỗ trợ đa nền tảng: OpenVPN có sẵn cho nhiều hệ điều hành khác nhau, bao
gồm Windows, Linux, macOS, Android và iOS
8 Theo dõi và quản lý: OpenVPN cung cấp công cụ giám sát và quản lý để theo
dõi hoạt động mạng VPN và quản lý người dùng
9 Chế độ cầu nối (Bridge Mode): OpenVPN cũng hỗ trợ chế độ cầu nối, cho
phép bạn kết nối hai mạng LAN với nhau qua mạng công cộng hoặc Internet
2.2.2 Nhiệm vụ/Vai trò của OpenVPN
Cho phép các bên xác thực lẫn nhau thông qua pre-shared key
Cho phép xác nhận tên người dùng/mật khẩu đăng nhập,
Cho phép server phát hành chứng thư xác thực cho mỗi client trong cấu hìnhMulti Client-server
Sử dụng thư viện mã hóa Openssl hoặc Tls
15