Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
1,24 MB
Nội dung
BÁO CÁO THỰC TẬP TỐT NGHIỆP Đề tài: Tìm hiểu giải pháp mã nguồn mở OpenVPN Linux Lời cảm ơn Em xin chân thành cảm ơn thầy cô giáo môn Kỹ thuật hệ thống mạng máy tính,những người dạy dỗ, trang bị cho em kiến thức bổ ích suối năm học tập Em xin bày tỏ lòng cảm ơn sâu sắc với thầy Bùi Thanh Phong, thầy tận tình giúp đỡ,hướng dẫn cho em lời khuyên quý báu trình thực tập Mục lục I Lời cảm ơn II Mục lục III Danh mục từ viết tắt VPN : Virtual private network IV Lời mở đầu V Tổng quan VPN .6 Định nghĩa VPN Tại phải sử dụng VPN Kiến trúc VPN Các giao thức VPN 10 Hệ thống mạng VPN 17 5.1 Remote Access VPNs 17 5.2 Site to Site (Lan to Lan) 19 5.3 Quá trình thiết lập kết nối Client Server 22 VI Giải pháp mã nguồn mở OpenVPN Linux 24 Lịch sử OpenVPN 24 OpenVPN gì? 25 Ưu điểm OpenVPN 26 Cài đặt OpenVPN Linux .27 5.1 Những hiểu biết hệ điều hành Linux CentOS .27 5.1.1 Linux 27 5.1.2 CentOS 29 5.2 7.1 Cài đặt OpenVPN CentOS 6.5 x64 30 Cấu hình VPN 34 Cấu hình OpenVPN server Linux 34 7.2 Cấu hình OpenVPN client MacOS với Tunnelblick 41 7.3 Cấu hình OpenVPN client Windows XP SP3 45 Thử nghiệm sử dụng OpenVPN máy ảo 46 Giám sát xử lý cố 47 9.1 Trên Server .47 9.2 Trên Client .47 VII Kết luận 48 VIII Tài liệu tham khảo 49 IX Ý kiến giảng viên hướng dẫn 50 Danh mục từ viết tắt VPN : Virtual private network ISP : Internet service provider SSL : Secure Sockets Layer NAS : Network-attached storage OSI : Open Systems Interconnection Reference Model IETF : Internet Engineering Task Force GNU : General Public License KDE: Desktop Environment GNOME: GNU Network Object Model Environment HTTPS : Hypertext Transfer Protocol Secure TCP : Transmission Control Protocol UDP : User Datagram Protocol NAT : Network address translation SSH : Secure Shell LDAP : Lightweight Directory Access Protocol IPsec : Internet Protocol Security DNS : Domain Name System Lời mở đầu Hiện nay,Internet phát triển mạnh mẽ mặt mơ hình lẫn tổ chức, đáp ứng đầy đủ nhu cầu người sử dựng Internet thiết kế để kết nối nhiều mạng với cho phép thông tin chuyển đến người sử dụng cách tự nhanh chóng.Để làm điều người ta sử dụng hệ thống thiết bị định tuyến để kết nối LAN WAN với nhau.Các máy tính kết nối vào Internet thông qua nhà cung cấp dịch vụ ISP Với Internet, dịch vụ đào tạo từ xa, mua hàng trực tuyến, tư vấn lĩnh vực nhiều điều khác trở thành thực Tuy nhiên Internet có phạm vi tồn cầu khơng tổ chức, phủ cụ thể quản lý nên khó khăn việc bảo mật an toàn liệu, việc quản lý dịch vụ Các doanh nghiệp có chỗi chi nhánh, cửa hàng ngày trở nên phổ biến.Không vậy, nhiều doanh nghiệp triển khai đội ngũ bán hàng đến tận người dùng.Do đó, để kiểm sốt, quản lý, tận dụng tốt nghuồn tài nguyên, nhiều doanh nghiệp triển khai giải pháp phần mềm quản lý nguồn tài nguyên có khả hỗ trợ truy cập, truy xuất thông tin từ xa Tuy nhiên, việc truy xuất sở liệu từ xa ln địi hỏi cao vấn đề an toàn, bảo mật Để giải vấn đề trên, nhiều doanh nghiệp chọn giải pháp mô hình mạng riêng ảo VPN Với mơ hình này,người ta đầu tư thêm nhiều sở hạ tầng mà tính bảo mật dộ tin cậy bảo đảm, đồng thời quản lý riêng hoạt động magj VPN cho phép người sử dụng làm việc nhà riêng , đường văn phòng chi nhánh kết nối an tồn tới máy chủ tổ chức sở hạ tầng cung cấp mạng công cộng Nhưng thông thường, triển khai phần mềm VPN phần cứng tốn nhiều thời gian chi phí , OpenVPN giải pháp mã nguồn mở VPN hồn tồn miễn phí hiệu cho doanh nghiệp Nội dung báo cáo trình bày theo phần chính: 1.Những tìm hiểu VPN 2.Tìm hiểu OpenVPN triển khai mơ hình máy ảo Tổng quan VPN Định nghĩa VPN Trước công ty,tổ chức muốn kết nối văn phòng,chinh nhánh với họ phải thuê riêng kênh đường truyền leased line từ ISP.Ngày với phát triển nhanh chóng phổ biến internet,việc th kênh riêng trở nên khơng hiệu quả,ngồi chi phí cho việc thuê kênh riêng cao.Để đáp ứng hai yêu cầu hiệu chi phí VPN đời,đưa đến cho doanh nghiệp giải pháp để kết nối văn phịng chi nhánh.Vậy VPN gì? Có nhiều định nghĩa VPN,em xin đưa vài ví dụ cụ thể : “Mạng riêng ảo hay VPN (viết tắt cho Virtual Private Network) mạng dành riêng để kết nối máy tính cơng ty,tập đồn hay tổ chức với thông qua mạng Internet cơng cộng.” nguồn: Wikipedia “Một mạng VPN hiểu thiết lập logic vật lý bảo mật thực phần mềm đặc biệt.Thiết lập riêng tư việc bảo vệ kết nối điểm cuối” nguồn: OpenVPN-Markus Feiler Nhưng có lẽ định nghĩa đơn giản dành cho VPN là: “Bản chất VPN kết nối bảo mật hai nhiều điểm mạng công cộng” nguồn: SSL VPN-Joseph Steinberg & Timothy Speed Hình 1: Mơ Hình mạng riêng ảo (VPN) Tại phải sử dụng VPN VPN đời từ nhu cầu kết nối công ty mẹ với cơng ty chi nhánh.Chính vậy,cho tới cơng ty,tổ chức đối tượng sử dụng VPN.Đặc biệt cơng ty có nhu cầu cao việc trao đổi thơng tin,dữ liệu văn phịng khơng địi hỏi u cầu q cao tính bảo mật,cũng liệu.Vì doanh nghiệp,những lý sau khiến đơn vị,tổ chức,công ty sử dụng VPN: Giảm chi phí thường xuyên Tiết kiệm 60% chi phí thuê đường truyền,cũng chi phí gọi đường dài văn phòng xa.Với nhân viên di động việc đăng nhập vào mạng VPN chung công ty thông qua POP địa điểm Giảm chi phí đầu tư So với việc phải đầu tư từ đầu trước chi phí máy chủ,đường truyền,bộ định tuyến,bộ chuyển mạch … Các cơng ty th chúng từ đơn vị cung cấp dịch vụ.Như vừa giảm chi phí đầu tư trang thiết bị Giảm chi phí trì nơi hệ thống bảo trì Thuận tiện cho việc nâng cấp hay bảo trì trình sử dụng công ty cung cấp dịch vụ chịu trách nhiệm bảo trì hệ thống họ cung cấp nâng cấp theo nhu cầu khách hàng Truy cập lúc nơi Mọi nhân viên sử dụng hạ tầng,dịch vụ bên cung cấp điều kiện cho phép để kết nối vào mạng VPN công ty.Điều đặc biệt quan trọng thời kỳ nay,khi mà thơng tin khơng cịn đánh giá độ xác mà cịn tính tức thời Kiến trúc VPN Một hệ thống VPN xây dựng lên thành phần (Tunneling) đường hầm kết nối (Secure services) dịch vụ bảo mật cho kết nối đó.Tunneling thành phần “Virtual” Sercure services thành phần “Private” mạng riêng ảo VPN(Virtual Private Network) Đường hầm kết nối (Tunneling) Khác với việc thuê đường truyền riêng kết nối việc sử dụng cách tạo đường hầm khơng liên tục,mà xác lập có u cầu kết nối.Do khơng cịn sử dụng kết nối huỷ,giải phóng băng thông,tài nguyên mạng cho yêu cầu khác.Điều cho thấy ưu điểm lớn VPN so với việc thuê đường truyền riêng linh hoạt Cấu trúc logic mạng thiết lập dành cho thiết bị mạng tương ứng mạng mà khơng cần quan tâm đến hạ tầng mạng có đặc điểm “ảo” khác VPN.Các thiết bị phần cứng mạng trở nên tàng hình với người dùng thiết bị mạng VPN.Chính trình tạo đường hầm,những kết nối hình thành nên mạng riêng ảo khơng có tính chất vật lý với kết nối cố định mạng Lan thơng thường Tạo đường hầm hình thành kết nối đặc biệt hai điểm cuối mạng.Các gói tin IP trước chuyển phải đóng gói,mã hố gói tin gốc thêm IP header mới.Sau gói tin giải mã,tách bỏ phần tiêu đề gateway điểm đến,trướ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 suốt với người sử dụng Có hai loại đường hầm kết nối thường trực tạm thời.Tính hiệu tối ưu đường hầm kết nối thường trực khơng cao.Do đường hầm tạm thời thường sử dụng tính linh động hữu dụng cho VPN Có hai kiểu kết nối hình thành hai đầu kết nối đường hầm Lan to Lan Client to Lan (i) Lan to Lan Kết nối lan to lan hình thành văn phịng chi nhánh chi nhánh với cơng ty.Các nhân viên văn phòng chi nhánh sử dụng đường hầm để trao đổi liệu (ii) Client to lan Kiểu kết nối client to lan dành cho kết nối di động nhân viên xa đến công ty hay chi nhánh.Để thực điều này,các máy client phải chạy phần mềm đặc biệt cho phép kết nối với gateway công ty hay chinh nhánh.Khi kết nối thực xác lập đường hầm kết nối công ty nhân viên xa b) Dịch vụ bảo mật (secure services) Nếu thực tạo đường hầm kết nối đến chi nhánh hay nhân viên xa mà chế bảo vệ cho liệu di chuyển việc ngân hàng chuyển tiền mà khơng có lực lượng bảo vệ vậy.Tất liệu khơng bảo vệ,hồn tồn bị đánh cắp,thay đổi q trình vận chuyển cách dễ dàng.Chính chế bảo mật cho VPN xương sống giải pháp Một mạng VPN cần cung cấp chức bảo mật cho liệu: • Xác thực(Authentication): Đảm bảo liệu đến từ nguồn quy định • Điều khiển truy cập (Access control) : hạn chế quyền từ người dùng bất hợp pháp • Tin cậy (Confidentiality): Ngăn chặn việc theo dõi hay chép liệu q trình vận chuyển mạng • Tính tồn vẹn (Data integrity): đảm bảo liệu khơng bị thay đổi,được bảo toàn từ đầu gửi đến đầu nhận Các dịch vụ bảo mật cung cấp lớp (Data link) lớp (Network) mô hình lớp OSI.Các dịch vụ bảo mật triển khai lớp thấp mơ hình OSI làm giảm tác động đến người dùng.Việc bảo mật thực đầu cuối (end to end) nút (node to node) Bảo mật điểm đầu cuối hình thức bảo mật có độ tin cậy cao,ví dụ máy tính đầu cuối.Tuy hình thức bảo mật đầu cuối hay client to client lại có nhược điểm làm tang phức tạp cho người dùng,khó khăn cho việc quản lý 10 53: dev tun 78: ca /etc/openvpn/easy-rsa/keys/ca.crt 79: cert /etc/openvpn/easy-rsa/keys/openvpnserver.crt 80: key /etc/openvpn/easy-rsa/keys/openvpnserver.key 87: dh /etc/openvpn/easy-rsa/keys/dh1024.pem 96: server 10.8.0.0 255.255.255.0 (khai báo dãy IP cần cấp cho VPN Client, mặc định VPN Server lấy IP – 10.8.0.1) 103: ;ifconfig-pool-persist ipp.txt (dùng VPN Client lấy lại IP trước bị đứt kết nối với VPN server, dùng IP tĩnh nên không sử dụng thông số này) 124: push “route 172.16.0.0 255.255.255.0” 125: ;push “route 192.168.1.200 255.255.255.0” 138: client-config-dir ccd (dùng để khai báo cấp IP tĩnh cho VPN Client) 196: client-to-client (cho phép VPN client nhìn thấy nhau, mặc định client thấy server) 181 ;push “redirect-gateway” 187, 188: push “dhcp-option DNS (WINS) 10.8.0.1” Khởi động dịch vụ OpenVPN Cấu trúc lệnh: service openvpn start 10 44 Khởi động dịch vụ IP_FORWARD Cấu trúc lệnh: nano /etc/sysctl.conf net.ipv4.ip_forward = Thay đổi giá trị ip_forward =1 hình để server cho phép chức forwarding,sử dụng chủ yếu định tuyến mạng Lan Sau thay đổi xong ta thực lệnh sysctl –p để áp dụng thay đổi server 45 11 Đăng ký tài khoản client Cấu trúc lệnh: /build-key username Thiết lập cấu hình cho user “kuti” 46 Dưới danh sách số loại chứng nhận key OpenVPN: 12 Định tuyến iptables Cấu trúc lệnh: iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -t nat -A POSTROUTING -o venet0 -j SNAT to-source “địa ip server ” 47 iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT to-source “địa ip server” Cấu hình OpenVPN client MacOS với Tunnelblick Ứng dụng client cho giải pháp OpenVPN hệ điều hành MacOS có Tunnelblick.Đây ứng dụng mã nguồn mở cung cấp miễn phí địa https://code.google.com/p/tunnelblick/ Cấu hình cho Tunnelblick: Tạo thư mục hình hệ điều hành MacOS với tên gọi trùng với tên server muốn kết nối Tinh file cấu hình client với thơng số cần thiết để kết nối đến server.File cấu hình có tên config.ovpn 48 49 Sao chép tất chứng nhận,key liên quan đến user vào thư mục Đổi tên phần mở rộng thư mục thành tblk Nhấp đôi chuột để thực việc cài đặt 50 Sau thực xong ta tệp tin cài đặt với định dạng tblk tunnelblik.Việc cài đặt thực thành công tunnelblick copy “thư mục cấu hình” ta vừa tạo đến vùng khác máy tính.Để bảo đảm an tồn cho cấu hình client 51 Cấu hình OpenVPN client Windows XP SP3 Việc cấu hình client windows dễ dàng ta thực thành cơng việc cấu hình hệ điều hành MacOS Hiện có hai ứng dụng OpenVPN client dành cho Windows cung cấp miễn phí OpenVPN client OpenVPN GUI Nhưng để dễ dàng cho việc thực hành em lựa chọn cài đặt ứng dụng OpenVPN GUI Windows XP SP3 52 Giao diện OpenVPN GUI OpenVPN GUI cung cấp sẵn cho ta thư mục config để chứa tệp tin cấu hình.Do dậy việc thực cấu hình cho client hồn tồn dễ dàng ta việc chép tệp tin xác thực key vào thư mục với file cấu hình có phần mở rộng ovpn Thư mục chứa file cấu hình OpenVPN GUI Thử nghiệm sử dụng OpenVPN máy ảo Sau cấu hình thành công cho client ta thực kết nối tới máy chủ Việc kết nối thực máy chủ (CentOS x64) hai máy trạm chạy hệ điều hành Windows XP3 ( sử dụng cấu hình u2) hệ điều hành MacOS X (sử dụng cấu hình u1) 53 Quá trình kết nối tới máy chủ thực (MacOS) Quá trình kết nối tới máy chủ Windows XP SP3 Giám sát xử lý cố 1 Trên Server Không khởi động dịch vụ OpenVPN Giải pháp: Tắt dịch vụ selinux tường 54 Trở ngại thao tác với server Giải pháp: đăng nhập server với quyền cao giúp thao tác tốt không bị hạn chế cài đặt thiết lập cấu hình hệ thống 1 Trên Client Không kết nối với server Giải pháp : Việc không kết nối tới server nhiều nguyên nhân (sử dụng mạng wifi,cấu hình client chưa xác…) để đạt hiệu tối đa : Thiết lập IP tĩnh máy client Tắt tường lửa Tường lửa hầu hét nguyên nhân chủ yếu dẫn đến việc kết nối đến server Hầu hết hệ điều hành cài sẵn tường lửa Kết luận Trong môi trường cạnh tranh hội nhập nay, để tồn phát triển CNTT vũ khí thiếu doanh nghiệp Vấn đề lợi nhuận, giá thành cho trang thiết bị phục vụ công tác quản trị, hiệu quả, suất công việc, doanh nghiệp đặt lên hàng đầu Với mơ hình kết nối sử dụng máy chủ Linux CentOS phần mềm OpenVPN giúp doanh nghiệp đặc biệt người quản trị mạng quản lý, làm việc từ xa thơng qua kết nối với giao thức bảo mật L2TP, PPTP, IPSec, Người dùng truy cập nhà văn phòng chi nhánh công ty để truy cập kết nối tới công ty làm việc.Với giải pháp mã nguồn mở việc sử dụng máy chủ Linux, giúp doanh nghiệp giảm tải gánh nặng tìa chính, trang thiết bị liên quan, đồng thời tăng cường khả bảo mật cho doanh nghiệp 55 Kết đạt Lý thuyết: Nắm kiến thức liên quan đến VPN,các phiên Linux Redhat,CentOS,Free BSD,Ubuntu hay OpenSUSE, Đặc biệt giải pháp mã nguồn mở OpenVPN Thực hành: Triển khai thành công ứng dụng phần mềm OpenVPN server CentOS với mơ hình Client to Server môi trường máy ảo Hạn chế Do thời gian có hạn,nên tìm hiểu cịn hạn chế,chưa triển khai kết nối dạng site to site Hướng phát triển: Tiếp tục triển khai kết nối Site to Site, kết hợp tìm hiểu sâu giải pháp bảo mật cho kêt nối VPN Tài liệu tham khảo Tài liệu tiếng Việt Nhập môn Linux phần mềm mã nguồn mở- Th.s Hà Quốc Trung,Lê Xuân Thành Giáo trình hệ điều hành Linux-Th.s Đặng Quang Hiển Kỹ thuật mạng riêng ảo VPN- Th.s Trần Công Hùng 56 57 Tài liệu tiếng Anh Beginning linux programming 2nd Edition - Alan Cox OpenVPN Cookbook- Jan Just Keijser Virtual Private Networks 2nd Edition - Charlie Scott,Paul Wolfe,Mike Erwin Beginning OpenVPN 2.0.9 - Markus Feiler, Norbert Graf SSL VPN - Joseph Steinberg, Timothy Speed OpenVPN - Markus Feilner Internet Google.com Quantrimang.com.vn Ý kiến giảng viên hướng dẫn 58 ... VI Giải pháp mã nguồn mở OpenVPN Linux 24 Lịch sử OpenVPN 24 OpenVPN gì? 25 Ưu điểm OpenVPN 26 Cài đặt OpenVPN Linux .27 5.1 Những hiểu biết hệ điều hành Linux. .. thời gian chi phí , OpenVPN giải pháp mã nguồn mở VPN hoàn toàn miễn phí hiệu cho doanh nghiệp Nội dung báo cáo trình bày theo phần chính: 1.Những tìm hiểu VPN 2 .Tìm hiểu OpenVPN triển khai mơ... sẵn 27 Linux) OpenSSL để xác thực, mã hoá giải mã nhận đường truyền hai bên thành chung mạng James Yonan cha đẻ OpenVPN OpenVPN gì? Logo OpenVPN OpenVPN phần mềm mạng riêng ảo mã nguồn mở dành