ĐẶT VẤN ĐỀ Với sự phổ biến của Internet ngày nay hầu như mọi người sống, làm việc, học tập đều không thể thiếu Internet, nhưng chính vì nó quá phổ biến và con người ngày càng phụ thuộc vào nó nên trong học tập, làm việc đã lạm dụng để phục vụ cho nhu cầu riêng ảnh hưởng đến năng suất học tập và lao động. Từ đó nhu cầu quản lý việc truy cập Internet từ trong cơ quan làm việc xuất hiện nhằm hạn chế khả năng truy cập Internet của nhân viên trong giờ làm việc. Hầu hết các tổ chức, doanh nghiệp cỡ vừa và nhỏ đều có nhu cầu giới hạn truy cập Internet cho một số người dùng và tiết kiệm băng thông Internet. Nhưng để quản lý điều đó thì không hề dễ dàng vì không phải lúc nào ta cũng giám sát được các hoạt động của nhân viên.
Lúc này ta cần một giải pháp tối ưu hơn để quản lý nhưng không phải là quản lý người dùng mà là quản lý ở cấp độ hệ thống, hệ thống sẽ quan sát hành vi của người dùng nếu vi phạm các chính sách mà người quản trị hệ thống đã đưa ra ngay lập tức hành vi đó sẽ bị chặn lại, vì vậy giúp chúng ta quản lý một cách dễ dàng và tổng quan hơn. Một trong những giải pháp rất hiệu quả hiện nay là sử dụng Proxy Server để làm cầu nối trung gian giữa các máy tính trong mạng LAN và Internet.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ Để xây dựng một giải pháp hạn chế truy cập của người dùng nhằm nâng cao hiệu suất và bảo mật hệ thống thì có nhiều phương pháp khác nhau bao gồm cả phần cứng lẫn phần mềm.1 Giải pháp phần cứng Trước hết ta đề cập đến giải pháp phần cứng, hầu hết các doanh nghiệp đều ứng dụng giải pháp này vào hệ thống mạng nội bộ của mình nhằm đảm bảo hiệu suất kết nối và bảo mật thông tin nội bộ. Trong số đó ta cần phải biết đến các Router của Cisco, Draytek. Các Router này đảm nhiệm chức năng chuyển đổi các gói dữ liệu qua một liên mạng và đến các đầu cuối thông qua một tiến trình được gọi là định tuyến.
Định Trang 1 tuyến xảy ra ở tầng 3 của mô hình OSI. [16] Hình 1: Mô hình OSI Router đưa vào bảng định tuyến để tìm đường đi cho gói dữ liệu. Bảng định tuyến được quản trị mạng cấu hình tĩnh, nghĩa là thường do quản trị mạng nhập bằng tay, hoặc động, nghĩa là bảng tự học đường đi và nội dung tự động thay đổi theo sự thay đổi của tô pô mạng. Hình 2: Các kiểu định tuyến Trang 2 Hình 3: Mô hình hoạt động của Router 1.1 Router Cisco Nó cho phép ta cấu hình danh sách các điều khiển truy cập (ACLs) để áp dụng vào các cổng interface.
Danh sách này chỉ ra cho router gói tin (packet) nào được phép đi qua (permit), hay gói tin nào bị hủy bỏ (deny). Sự chấp nhận hay hủy bỏ này có thể dựa trên địa chỉ nguồn (source address), địa chỉ đích (destination address), chỉ số cổng (socket). Tại sao phải sử dụng Access List trên router Quản lý traffic qua cổng router. Hỗ trợ mức độ cơ bản về bảo mật cho các truy cập mạng, thể hiện ở tính năng lọc gói tin qua router.
Access-list trên router chia làm hai loại chính: Standard ACLs và Extended ACLs Standard ALCs: là loại ACLs đơn giản, hoạt động lọc gói tin dựa vào địa chỉ nguồn của gói tin Trang 3 Extended ACLs: hoạt động lọc gói tin ngoài dựa vào địa chỉ nguồn còn có thể dựa vào địa chỉ đích, chỉ số cổng, chỉ số cổng đích của gói tin. Vì vậy Extended ALCs có thể lọc gói tin linh hoạt hơn.2 Router Draytek Nó cung cấp tính năng hỗ trợ giới hạn truy cập của router. Điển hình là tính năng Session Limit, tính năng này cho phép ta giải quyết vấn đề download theo kiểu chia sẻ mạng ngang hàng P2P vốn chiếm quá nhiều session. Nhưng với việc download bằng FTP và HTTP thì chức năng Session Limit không giải quyết được (do download bằng FTP và HTTP chỉ chiếm một session ).
Vì vậy, nó cần phải kết hợp với tính năng Bandwidth Limit - Giới hạn băng thông người dùng, được tích hợp trong router Draytek nhằm giới hạn tốc độ download và upload của các máy trong mạng. Đây cũng là nhược điểm của router Draytek.2 Giải pháp phần mềm Ngoài việc sử dụng router để giới hạn truy cập Internet thì còn có một giải pháp khác đó là sử dụng phần mềm để quản lý. Hiện nay có rất nhiều phần mềm đảm nhiệm công việc quản lý truy cập nhằm nâng giảm tải đường truyền và tăng độ bảo mật như ISA Server của Microsoft, gói phần mềm nguồn mở Squid.1 Microsoft ISA Server ISA có hai tính năng chính là Firewall [10] và Web Proxy. Ở đây ta sẽ đề cập đến tính năng Web Proxy (W3Proxy) [11].
Web Proxy là một dịch vụ Windows 2000, hỗ trợ các yêu cầu từ bất cứ trình duyệt nào mà nó tuân theo các tiêu chuẩn của Conseil Europeen pour la Recherch Nucleair (CERN) Dịch vụ Web Proxy cho phép các kết nối Web tới gần như tất cả các hệ điều hành desktop, bao gồm Windows NT, Windows 95, Windows 98, Windows 2000, Macintosh, và UNIX. Dịch vụ Web Proxy làm việc ở mức ứng dụng, và sẽ thay mặt cho một HTTP Client yêu cầu lấy về một đối tượng Internet thông qua một trong các giao thức được hỗ trợ bởi dịch vụ Web Proxy: FTP, HTTP, HTTPS, và Gopher. Web Proxy sẽ bảo vệ tất cả các kết nối của các Web browser. Dịch vụ Web Proxy hoạt động với một Web Proxy Client, là bất kỳ một máy tính nào mà nó sử dụng các ứng dụng theo chuẩn Trang 4 CERN và được cấu hình để sử dụng dịch vụ Web Proxy của ISA Server.2 Gói phần mềm nguồn mở Squid Squid là một gói phần mềm nguồn mở dùng để xây dựng Proxy Server, khả năng của Squid là tiết kiệm băng thông (bandwidth), cải tiến về bảo mật, tăng tốc độ truy cập web cho người sử dụng và trở thành một trong những Proxy Server được nhiều người sử dụng.
Hiện nay, trên thị trường có rất nhiều chương trình Proxy Server nhưng chúng lại có hai nhược điểm, thứ nhất là phải trả tiền để sử dụng, thứ hai là hầu hết không hỗ trợ ICP (ICP được sử dụng để cập nhật những thay đổi về nội dung của những URL sẵn có trong caches - là nơi lưu trữ những trang web mà bạn đã từng đi qua). Squid là sự lựa chọn tốt nhất cho một Proxy - Cache Server, Squid đáp ứng hai yêu cầu mà chúng ta là sử dụng miễn phí và có thể sử dụng đặc trưng ICP. [12] Squid đưa ra kỹ thuật lưu trữ ở cấp độ cao của các web Client, đồng thời hỗ trợ các dịch vụ thông thường như FTP, Gopher và HTTP. Squid lưu trữ thông tin mới nhất của các dịch vụ trên RAM, quản lý một cơ sở dữ liệu lớn của các thông tin trên đĩa, có một kỹ thuật điều khiển phức tạp , hỗ trợ giao thức SSL cho các kết nối bảo mật thông qua Proxy.
Hơn nữa, Squid có thể liên kết với các cache của các Proxy Server khác trong việc sắp xếp lưu trữ các trang web một cách hợp lý, đây là tính năng vô cùng mạnh mẽ của Squid. Nhận xét Với việc sử dụng Router và các phần mềm thương mại trong việc quản lý hệ thống tuy đem lại hiệu quả cao nhưng đối với các doanh nghiệp vừa và nhỏ thì đây là một vấn đề khá lớn về kinh phí đầu tư cho thiết bị và chi phí bản quyền phần mềm vì những giải pháp sử dụng router và phần mềm ISA server đều yêu cầu đơn vị sử dụng phải trả phí tương đối cao. Vì thế, với giải pháp sử dụng gói phần mềm nguồn mở Squid để xây dựng Proxy server trên một hệ điều hành nguồn mở Ubuntu Server là giải pháp phù hợp với yêu cầu của các doanh nghiệp vừa và nhỏ mà vẫn đem lại hiệu quả rất cao. PHẠM VI NGHIÊN CỨU Trong phạm vi nghiên cứu của mình, đề tài sẽ chỉ đưa ra mô hình có khả năng kiểm soát các yêu cầu từ phía Client ra Internet nhằm giảm tải đường truyền, tăng hiệu suất công việc của nhân viên.
Trong phần thực nghiệm của đề tài, mô hình sẽ được Trang 5 ứng dụng thực tế vào một trường hợp cụ thể. Thực nghiệm này sẽ chứng minh rằng mô hình đã đưa ra hoàn toàn có thể triển khai và ứng dụng vào thực tế. Tuy nhiên phạm vi nghiên cứu của đề tài có hạn nên thực nghiệm đưa ra không thể hiện hết những ưu điểm của mô hình đã được đưa ra. Những nghiên cứu tiếp theo về mô hình này sẽ được thực hiện và đưa ra những thực nghiệm khác thể hiện rõ hơn những ưu thế của mô hình khi được ứng dụng vào thực tế.4 PHƯƠNG PHÁP TIẾP CẬN Để đưa ra một mô hình phù hợp với yêu cầu đặt ra là kiểm soát tất cả các kết nối từ Client ra ngoài Internet nhằm giảm dung lượng đường truyền trên Internet và tăng hiệu quả công việc, nghiên cứu các mô hình đã có trước đây là việc làm cần thiết.
Trong các mô hình truyền thống, việc sử dụng máy chủ Proxy là việc làm quen thuộc. Proxy Server là một giải pháp đã được dùng trước đây trong các mô hình mạng truyền thống. Proxy được bố trí như một cổng ra Internet của một mạng phía sau nó. Ngoài chức năng làm nhiệm vụ lưu chuyển thông tin giữa các máy trong mạng và ngoài Internet, Proxy còn được tích hợp thêm chức năng như lọc thông tin, bảo đảm an ninh cho mạng cục bộ v.
Một trong những tính năng đã được tích hợp vào Proxy Server là Cache. Với chức năng này, tần suất sử dụng đường truyền trên Internet đã được giảm đáng kể nhờ việc lưu lại các kết quả truy vấn trước đó. Khi đó các yêu cầu được lặp lại, kết quả của lần trước sẽ được lưu lại và sử dụng để trả lời cho các lần truy vấn sau. Ở đề tài này chúng tôi sẽ sử dụng gói phần mềm nguồn mở Squid để xây dựng một Proxy Server trên nền hệ điều hành Ubuntu Server.
Trang 6 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 LINUX VÀ HỆ ĐIỀU HÀNH MÁY CHỦ UBUNTU SERVER 2.1 Giới thiệu về Linux Linux là tên gọi của một hệ điều hành máy tính và cũng là hạt nhân của hệ điều hành. Nó có lẽ là một ví dụ nổi tiếng nhất của phần mềm tự do và của việc phát triển mã nguồn mở. Phiên bản đầu tiên do Linus Tovalds viết vào năm 1991, lúc ông còn là một sinh viên của Đại học Helsinki tại Phần Lan.