An toàn thông tin trên mạng

Bảo mật kết nối, chỉ cho phép một số cổng và protocol nào đó, vd: tcp, http, telnet trên các cổng 80, 23 . Khi một client yêu cầu một trang nào đó, yêu cầu này sẽ được chuyển đến proxy server, proxy server sẽ chuyển tiếp yêu cầu này đến site đó. Khi yêu cầu được đáp trả, proxy sẽ trả kết quả này lại cho client tương ứng. Proxy server có thể được dùng để ghi nhận việc sử dụng internet và ngăn chặn những trang bị cấm • Theo www.nyu.edu: proxy server là một server đứng giữa một ứng dụng của client, như web browser, và một server ở xa (remote server). Proxy server xem xét các request xem nó có thể xử lý bằng cache của nó không, nếu không thể, nó sẽ chuyển yêu cầu này đến remote server. • Theo www.webopedia.com: proxy server là một server đứng giữa một ứng dụng client, như web browser, và một server thực. Nó chặn tất cả các yêu cầu đến các server thực để xem xem nó có khả năng đáp ứng được không, nếu không thể, nó sẽ chuyển các yêu cầu này đến các server thực. • Theo www.stayinvisible.com: proxy server là một loại buffer giữa

doc95 trang | Chia sẻ: Dung Lona | Lượt xem: 1254 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu An toàn thông tin trên mạng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ựng một Baston host Sự đơn giản: Một bastion host càng đơn giản thì càng dễ bảo vệ. bất kỳ một bastion host đều có thể có lỗi phần mềm hay lỗi cấu hình trong nó, đây là vấn đề cần quan tâm trong bảo mật. Vì thế để một bastion host ít khả năng lỗi thì nó chỉ nên cung cấp một tập nhỏ các dịch vụ với đặc quyền tối thiểu mà vẫn còn đầy đủ vai trò của nó. Dự phòng cho phương án khi bastion host bị tổn thương mà không ảnh hưởng đến mạng nội bộ. Nên đoán trước những gì xấu nhất có thể xảy ra để có kế hoạch cho nó, luôn dặt câu hỏi điều gì sẽ xảy ra nếu baston host bị tổn thương. Chúng ta nhấn mạnh điều này vì máy bastion host dễ bị tấn công nhất, do mạng bên ngoài truy cập đến nó và nó còn chống lại sự tấn công từ mạng bên ngoài vào hệ thống mạng nội bộ. Các loại Bastion host đặc biệt Có nhiều loại bastion host, có loại được xây dựng trong Screened host hoặc host cung cấp dịch vụ trên một Screened network. Thường được cấu hình tương tự nhau nhưng có một vài yêu cầu đặc biệt. Dual-homed host không có chức năng định tuyến Bản thân nó có thể là firewall, hoặc một phần của firewall phức tạp. Nó được cấu hình như các bastion host khác nhưng phải rất cẩn thận. Victim machines(máy dùng để thử nghiệm) Victim machine hữu dụng để chạy các dịch vụ khó cung cấp an toàn với proxy, packet filtering hoặc cá dịch vụ mới mà chúng ta chưa biết chính sách bảo mật thích hợp. Nó chỉ cung cấp nhu cầu tối thiểu cần thiết cho dịch vụ, để tránh các tương tác không cần thiết. Nó được cấu hình như các bastion host khác, ngoài trừ chúng luôn cho người sử dụng login vào. Internal bastion host Là host trên mạng nội bộ được cài đặt như một bastion host và tương tác với bastion host chính. Nó không giống như các bastion host khác trong mạng nộ bộ, vai trò của nó là một bastion host phụ, các bastion host trong mạng nộ bộ tương tác với bastion host phụ. External bastion host. Là một bastion host chỉ cung cấp các dịch vụ trên Internet, nó là nơi dễ bị tấn công, nên các máy này cần tăng cường bảo mật. Nó chỉ cần giới hạn việc truy cập đến mạng bên trong, chúng thường chỉ cung cấp một ít dịch vụ với một số định nghĩa tốt về bảo mật và không cần hỗ trợ các người sử dụng bên trong. Chọn máy Bước đầu tiên để xây dựng bastion host là quyết định sử dụng loại máy gì? Hệ điều hành gì? Bastion host cần nhanh như thế nào? Phần cứng nào được hỗ trợ. Hệ điều hành Nên chọn hệ điều hành UNIX/LINUX/WINDOWS NT/ WINDOWS 2K tùy theo khả năng làm chủ hệ điều hành nào, sao cho cài đặt được proxy server, bộ lọc packet, server phục vụ cho SMTP và DNS. Chọn máy tính nhanh như thế nào Thường thì bastion host không cần máy tính mạnh bởi sự giới hạn tốc độ kết nối ra Internet và không xử lí nhiều, trừ khi mạng nội bộ cung cấp dịch vụ trên Internet và mạng nội bộ được nhiều người biết đến trên phạm vi rộng lớn. Nếu mạng nội bộ cung cấp dịch vụ web thì cần bastion host có khả năng chịu tải cao. Một vài lí do mà bastion host không cần máy tính quá mạnh: Một máy chậm không là sự tăng uy tín của kẻ tấn công. Nếu bastion host bị tổn thương, nó ít hữu dụng cho việc tấn công vào mạng nội bộ hoặc dò mật khẩu. Một bastion host chậm sẽ ít hấp dẫn cho những người trong mạng nội bộ làm tổn thương. Máy tính tốc độ nhanh làm tăng thời hian chờ nên kết nối chậm. Chọn phần cứng Chọn phần cứng có tốc độ xử lí không cần mạnh, nhưng bộ nhớ phải nhiều và dung lượng đĩa lớn để có thể lưu trữ thông tin đã yêu cầu để cung cấp cho những yêu cầu giống yêu cầu đã có hoặc ghi lại dấu vết của các kết nối. Chọn vị trí vật lí đặt Bastion Host Cần đặt bastion host ở một vị trí vật lí an toàn, những người không có trách nhiệm sẽ không được đến đó. Ngoài ra cần chú ý đến nhiệt độ, nguồn điện thích hợp. Vị trí Bastion Host trên mạng Tùy theo nhu cầu có thể đặt trên mạng nội bộ, nhưng nên đặt trên mạng ngoại vi. Chọn dịch vụ mạng mà Bastion Host cung cấp Có thể chia các dịch vụ thành 4 lớp: Các dịch vụ an toàn có thể được cung cấp qua packet filtering. Các dịch vụ không an toàn khi được cung cấp bình thường nhưng có khả năng đạt được an toàn ở điều kiện khác. Các dịch vụ không an toàn khi được cung cấp bình thường và không thể đạt được an toàn, dịch vụ này phải được vô hiệu hóa và cung cấp trên máy thử nghiệm. Các dịch vụ không đến, hoặc không dùng trong việc kết nối với Internet. Các dịch vụ thường được cung cấp trên bastion host: SMTP (thư điện tử) FTP (truyền dữ liệu) HTTP (web) DNS (chuyển đổi host thành địa chỉ IP và ngược lại). DNS ít khi được dùng trực tiếp. Về ý tưởng chúng ta có thể đặt mỗi dịch vụ trên một bastion host, nhưng trên thực tế thì ít khi đạt được điều này. Do vấn đề tài chính và quản lí sẽ khó hơn khi có quá nhiều máy. Có một vài nhận xét khi nhóm các dịch vụ với nhau thành một nhóm: Các dịch vụ quan trọng: Web server phục vụ khách hàng. Các dịch vụ theo đối tượng: người sử dụng bên trong, người siwr dụng bên ngoài. Các dịch vụ an toàn: dịch vụ tin cậy và dịch vụ không tin cậy trên các máy khác nhau. Các dịch vụ truy cập có mức độ khác nhau: thông tin công cộng và thông tin riêng tư. Lí do không cung cấp tài khoản truy cập trên Bastion Host Không cung cấp tài khoản cho người sử dụng truy cập trên Bastion host vì các lí do sau: Tài khoản của người sử dụng dễ bị tổn thương Giảm độ ổn định và tin cậy của Bastion host. Sự vô ý của người sử dụng làm phá vỡ tính bảo mật Gia tăng khó khăn khi dò tìm sự tấn công. Xây dựng một Bastion Host an toàn chống lại sự tấn công Bảo đảm máy không kết nối với Internet cho đến bước cuối cùng. Bảo vệ an toàn cho máy Cài đặt một hệ điều hành sạch tối thiểu theo yêu cầu Sửa các lỗi của hệ điều hành qua thông tin của các nhà sản xuất hệ điều hành. Sử dụng bảng liệt kê các mục cần kiểm tra an toàn phù hợp với phiên bản của hệ điều hành. Bảo vệ an toàn cho các tập tin nhật kí hệ thống (system log): là phương pháp thể hiện hoạt động của bastion host, cơ sở để kiểm tra bị tấn công. Nên có hai bản sao system log để phòng trường hợp tai họa lớn xảy ra, hai bản system log này phải được đặt ở vị trí khác nhau. Hủy các dịch vụ không dùng Hủy bất kì dịch vụ không cần thiết cung cấp cho bastion host. Nếu không biết chức năng của một dịch vụ nào đó thì nên tắt nó, nếu tắt nó có vấn đề thì ta biết ngay được chức năng của nó. Tắt các chức năng định tuyến Tắt tất cả các chương trình có chức năng định tuyến. Hủy chức năng chuyển tiếp địa chỉ IP Cấu hình cho dịch vụ chạy tốt nhất và kết nối bastion host vào mạng Cấu hình hệ điều hành lần cuối. Loại bỏ các chương trình không cần thiết. Dựng hệ thống file chỉ đọc. Chạy kiểm tra (dùng phần mềm) sự an toàn: Để biết lỗ hổng bảo mật, thiết lập một cơ sở dữ liệu tổng hợp thông tin của tất cả các tập tin trong hệ thống để nhận biết được sự thay đổi các tập tin này về sau bởi những người thay đổi trái phép. CÁC DỊCH VỤ INTERNET Internet cung cấp một hệ thống các dịch vụ cho phép người dùng nối vào Internet, truy nhập và sử dụng các thông tin trên mạng Internet. Hệ thống các dịch vụ này đã, đang được bổ sung thwo sự phát triển không ngừng của Internet. Các dịch vụ này bao gồm: World Wide Web (viết tắt là WWW hay Web), Email (thư điện tử), FTP (File transfer protocols-dịch vụ chuyển file), Telnet (ứng dụng cho phép truy nhập máy tính ở xa), Archie (hệ thống xác định thông tin ở các file và directory), Finger (hệ thống xác định các user trên Internet), Rlogin (remote login-vào mạng từ xa) và một số dịch vụ khác. World Wide Web (WWW) WWW là dịch vụ Internet ra đời gần đây nhất và phát triển nhanh nhất hiện nay. Nó cung cấp một giao diện rất thân thiện đối với người sử dụng, dễ sử dụng, vô cùng đơn giản và thuận lợi cho việc tìm kiếm thông tin.WWW liên kết thông tin dựa trên công nghệ hyper-link (siêu liên kết), cho phép các trang web liên kết trực tiếp với nhau qua địa chỉ của chúng. Thông qua WWW người dùng có thể: Phát hành tin tức của mình và đọc tin tức từ khắp nơi trên thế giới. Quảng cáo về mình, về công ty hay tổ chưc của mình cũng như xem các loại quảng cáo trên Thế giới, từ kiếm việc làm, tuyển mộ nhân viên, công nghệ và sản phẩm mới, tìm bạn Trao đổi thông tn với bạn bè, các tổ chức xã hội, trung tâm nghiên cứu trường học Thực hiện các dịch vụ chuyển tiền hay mua bán hàng hóa Truy cập Cơ sở dữ liệu của các tổ chức nếu như được phép. Và còn nhiều hoạt động khác Electronic Mail ( Email-Thư điện tử ) Email là dịch vụ Internet được sử dụng rộng rãi nhât hiện nay. Hầu hết các thông báo ở dạng text (văn bản) đơn giản, nhưng người sử dụng có thê gửi kèm các file dạng hình ảnh, âm thanh. Hệ thống email trên Internet là hệ thống thư điện tử lớn nhất trên thế giới hiện nay, và thường được sử dụng với các hệ thống chuyển thư khác. Khả năng chuyển thư điện tử trên Web có bị hạn chế hơn so với các hệ thống chuyển thư trên Internet, bởi vì Web là một phương tiện trao đổi công cộng, còn thư có tính chất riêng tư. Vì vậy, không phải tất cả các Web brower đều cung cấp chức năng email. Hai brower lớn nhất hiện nay là Netscape và Internet Explorer đều cunng cấp chức năng email. FTP(File Transfer Protocols ) FTP là một dịch vụ cho phép sao chép file từ một hệ thống máy tính này sang hệ thống máy tính khác. FTP bao gồm thủ tục và chương trình ứng dụng, và là một trong số dịch vụ ra đờ sớm nhất trên Internet. FTP có thể được dùng ở mức hệ thống (gõ lệnh vào command-line) trong web brower hay trên một số tiện ích khác. FTP vô cùng hữu ích cho người dùng Internet, bởi vì khi tìm kiếm trên Internet bạn có thể thấy rất nhiều thư viện phần mềm hữu ích trên các lĩnh vực mà bạn muốn sao chép về máy để sử dụng. Telnet và Rlogin Telnet là một dịch vụ cho phép bạn truy nhập vào một máy tính ở xa và chạy các ứng dụng trên máy đó. Telnet rất hữu ích khi bạn muốn chạy một ứng dụng mà không có hoặc không chạy dược trên máy tính của bạn, ví dụ bạn muốn chạy một ứng dụng UNIX nhưng máy của bạn lại là PC. Hay máy tính của bạn không đủ mạnh hoặc không có các file dữ liệu cần thiết. Telnet cho bạn khả năng làm việc trên một máy tính ở xa hàng ngàn cây số mà bạn vẫn có cảm giác như đang ngồi trước máy đó. Chức năng của Rlogin(vào mạng từ xa) cũng tương tự như Telnet. Archie Archie là một loại thư viện thường xuyên tự động tìm kiếm các máy tính trên Internet, tạo ra một kho dữ liệu về danh sách các file có thể nạp xuống (down load) từ Internet. Do đó dữ liệu trong các file này là luôn luôn mới nhất. Archie do đó rất tiện dụng cho người dùng trong việc tìm kiếm và download các file. Người dùng chỉ cần gửi tên file hoặc từ khóa tìm kiếm đến Archie, Archie sẽ cho lại địa chỉ của các file có tên đó hoặc chứa những từ khóa đó. Finger Finger là một chương trình ứng dụng cho phép tìm địa chỉ của các user khác trên mạng Internet. Tối thiểu Finger có thể cho bạn biết ai đang truy nhập một hệ thống máy tính nào đó, tên login của người đó là gì. Finger hay được sử dụng để tìm địa chỉ email của bạn bè trên Internet. Finger còn có thể cung cấp cho bạn các thông tin khác, như là một người nào đó đã login vào mạng bao lâu. Vì thế Finger có thể được coi là người trợ giúp đắc lực nhưng cũng là mối hiểm họa cho an toàn mạng. PROXY PROXY là gì??? Theo www.learnthat.com: proxy là một thiết bị cho phép kết nối vào internet, nó đứng giữa các workstation trong một mạng và internet, cho phép bảo mật kết nối, chỉ cho phép một số cổng và protocol nào đó, vd: tcp, http, telnet trên các cổng 80, 23. Khi một client yêu cầu một trang nào đó, yêu cầu này sẽ được chuyển đến proxy server, proxy server sẽ chuyển tiếp yêu cầu này đến site đó. Khi yêu cầu được đáp trả, proxy sẽ trả kết quả này lại cho client tương ứng. Proxy server có thể được dùng để ghi nhận việc sử dụng internet và ngăn chặn những trang bị cấm Theo www.nyu.edu: proxy server là một server đứng giữa một ứng dụng của client, như web browser, và một server ở xa (remote server). Proxy server xem xét các request xem nó có thể xử lý bằng cache của nó không, nếu không thể, nó sẽ chuyển yêu cầu này đến remote server. Theo www.webopedia.com: proxy server là một server đứng giữa một ứng dụng client, như web browser, và một server thực. Nó chặn tất cả các yêu cầu đến các server thực để xem xem nó có khả năng đáp ứng được không, nếu không thể, nó sẽ chuyển các yêu cầu này đến các server thực. Theo www.stayinvisible.com: proxy server là một loại buffer giữa máy tính của bạn và các tài nguyên trên mạng internet mà bạn đang truy cập, dữ liệu bạn yêu cầu sẽ đến proxy trước, sau đó mới được chuyển đến máy của bạn. Hình 16: Mô hình Proxy Tại sao PROXY ra đời Tăng tốc kết nối: các proxy có một cơ chế gọi là cache, cơ chế cache cho phép proxy lưu trữ lại những trang được truy cập nhiều nhất, điều này làm cho việc truy cập của bạn sẽ nhanh hơn, vì bạn được đáp ứng yêu cầu một cách nội bộ mà không phải lấy thông tin trực tiếp từ internet. Bảo mật: mọi truy cập đều phải thông qua proxy nên việc bảo mật được thực hiện triệt để. Filtering: ngăn cản các truy cập không được cho phép như các trang đồi trụy, các trang phản động Phần mềm Firewall – Proxy Server Khái quát Chúng ta sẽ xây dựng Firewall theo kiến trúc application-level gateway, theo đó một bộ chương trình proxy được đặt ở gateway ngăn cách một mạng bên trong (Intranet) với Internet. Bộ chương trình proxy được phát triển dựa trên bộ công cụ xây dựng Internet Firewall TIS (Trusted Information System), bao gồm một bộ các chương trình và sự đặt lại cấu hình hệ thống để nhằm mục đích xây dựng một Firewall. Bộ chương trình được thiết kế để chạy trên hệ UNIX sử dụng TCP/IP với giao diện socket Berkeley. Bộ chương trình proxy được thiết kế cho một số cấu hình firewall, theo các dạng cơ bản: dual-home gateway, screened host gateway, và screened subnet gateway. Thành phần Bastion host trong Firewall, đóng vai trò như một người chuyển tiếp thông tin, ghi nhật ký truyền thông, và cung cấp các dịch vụ, đòi hỏi độ an toàn cao. Hình 17: Mô hình 1 proxy đơn giản Bộ chương trình proxy được thiết kế cho một số cấu hình firewall, theo các dạng cơ bản: dual-home gateway, screened host gateway, và screened subnet gateway. Thành phần Bastion host trong Firewall, đóng vai trò như một người chuyển tiếp thông tin, ghi nhật ký truyền thông, và cung cấp các dịch vụ, đòi hỏi độ an toàn cao. Các thành phần của bộ chương trình proxy Bộ chương trình proxy gồm những chương trình mức ứng dụng (application-level programs), dùng để thay thế hoặc là thêm vào phần mềm hệ thống đã có. Bộ chương trình SMTP Gateway – Proxy server cho dịch vụ SMTP (Simple Mail Tranfer Protocol) FTP Gateway – Proxy server cho dịch vụ Ftp Telnet Gateway – Proxy server cho dịch vụ Telnet HTTP Gateway – Proxy server cho dịch vụ HTTP (World Wide Web) Rlogin Gateway – Proxy server cho dịch vu rlogin Plug Gateway – Proxy server cho dịch vụ kết nối server tức thời dùng giao thức TCP (TCP Plug-Board Connection server) SOCKS – Proxy server cho các dịch vụ theo chuẩn SOCKS NETACL – Điều khiển truy nhập mạng dùng cho các dịch vụ khác IP filter – Proxy điều khiển mức IP SMTP Gateway – Proxy server cho dịch vụ SMTP (Simple Mail Tranfer Protocol) Chương trình SMTP Gateway được xây dựng trên cơ sở sử dụng hai phần mềm smap và smapd, dùng để chống lại sự truy nhập thông qua giao thức SMTP. Nguyên lý thực hiện là chặn trước chương trình mail server nguyên thuỷ của hệ thống, không cho phép các hệ thống bên ngoài kết nối trực tiếp với mail server. Khi một hệ thống ở xa nối tới cổng SMTP. Chương trình smap sẽ dành quyền phục vụ và chuyển tới thư mục dành riêng và đặt user-id ở mức bình thường (không có quyền ưu tiên). Mục đích duy nhất của smap là đối thoại SMTP với các hệ thống khác, thu lượm mail, ghi vào đĩa, ghi nhật ký, và kết thúc. Smapd thường xuyên quét thư mục này, khi phát hiện có thư sẽ chuyển dữ liệu cho sendmail để phân phát vào các hòm thư cá nhân hoặc chuyểntiếp tới các mail server khác. Như vậy, một user lạ trên mạng không thể kết nối trực tiếp với Mail Server. Tất cả các thông tin đi theo đường này hoàn toàn có thể kiểm soát được. Tuy nhiên, chương trình cũng không thể giải quyết vấn đề giả mạo thư hoặc các loại tấn công bằng đường khác. Hình 18: Một số protocol sau proxy FTP Gateway- Proxy Server cho dịch vụ FTP Proxy server cho dịch vụ FTP cung cấp khả năng kiểm soát truy nhập dịch vụ FTP dựa trên địa chỉ IP và hostname, và cung cấp điều khiển truy nhập thứ cấp cho phép tuỳ chọn khoá hoặc ghi nhật ký bất kỳ lệnh FTP nào. Các địa chỉ đích của dịch vụ này cũng có thể tuỳ chọn được phép hay bị cấm. Tất cả các sự kết nối và dung lượng dữ liệu chuyển qua đều bị ghi nhật kí lại. FTP Gateway tự bản thân nó không đe dọa an toàn của hệ thống Firewall, bởi vì nó chạy tới một thư mục rỗng và không thực hiện một thủ tục vào ra file nào cả ngoài việc đọc file cấu hình của nó. Kích thước của FTP Gateway là khoảng 1300 dòng. FTP Gateway chỉ cung cấp dịch vụ FTP, mà không quan tâm đến ai có quyền hay không có quyền kết xuất (export) file. Do vậy, việc xác định quyền phải được thiết lập trên FTP Gateway và phải thực hiện trước khi thực hiện việc kết xuất (export) hay nhập (import) file. Ftp Gateway nên được cài đặt dựa theo chính sách an toàn của mạng. Bộ chương trình nguồn cho phép người quản trị mạng cung cấp cả dịch vụ FTP lẫn dịch vụ FTP proxy trên cùng một hệ thống nhưng việc làm này là không đảm bảo an ninh của firewall. Tóm lại, sử dụng FTP Gateway có thể ngăn ngừa mọi sự thâm nhập vào mạng qua cổng FTP một cách khá linh hoạt (cho phép ngăn cản từng địa chỉ hay toàn bộ mạng) và cũng kiểm soát việc truy nhập tới từng khả năng như download hay upload thông tin. Telnet Gateway-Proxy Server cho dịch vụ Telnet Telnet Gateway là một proxy server quản lý truy nhập mạng dựa trên địa chỉ IP và/hoặc hostname, và cung cấp sự điều khiển truy nhập thứ cấp cho phép tuỳ chọn khoá bất kỳ đích nào. Tất cả các sự kết nối dữ liệu chuyển qua đều được ghi nhật ký lại. Mỗi một lần user nối tới Telnet Gateway, người sử dụng phải lựa chọn phương thức kết nối. Telnet Gateway không phương hại tới an toàn hệ thống, vì nó chỉ hoạt động trong một phạm vi cho phép nhất định. File nguồn chỉ bao gồm 1000 dòng lệnh. Cụ thể, hệ thống sẽ chuyển điều khiển tới một thư mục dành riêng. Đồng thời cấm truy nhập tới các thư mục và file khác. Telnet Gateway được sử dụng để kiểm soát các truy nhập vào hệ thống mạng nội bộ. Các truy nhập không được phép sẽ không thể thực hiện được còn các truy nhập hợp pháp sẽ bị ghi lại nhật ký về thời gian truy nhập và các thao tác đã thực hiện. HTTP Gateway – Proxy server cho web: HTTP Gateway là một Proxy Server quản lý truy nhập hệ thống qua cổng HTTP (Web). Chương trình này, dựa trên địa chỉ đích và địa chỉ nguồn để ngăn cấm hoặc cho phép yêu cầu truy nhập đi qua. Đồng thời căn cứ và mã lệnh của giao thức HTTP, phần mềm này sẽ cho phép thực hiện hoặc loại bỏ yêu cầu. Các yêu cầu truy nhập đều được ghi vào nhật ký nhằm quản lý và thống kê. Với cơ chế đón nhận thông tin trực tiếp từ cổng HTTP, phần mềm này đảm bảo kiểm soát được toàn bộ nhưng truy nhập vào hệ thống thông qua Web. Đồng thời việc xử lý bản tin, thực hiện trong bộ nhớ, nên không ảnh hưởng đến hệ thống. Rlogin Gateway – Proxy server cho rlogin: Các terminal truy nhập qua thủ tục BSD rlogin được kiểm soát bởi rlogin gateway. Chương trình cho phép kiểm tra và điều khiển truy nhập mạng tương tự như telnet gateway. Rlogin client có thể chỉ ra một hệ thống ở xa ngay khi bắt đầu nối vào proxy. Chương trình sẽ hạn chế yêu cầu tương tác giữa user với máy (trong trường hợp không yêu cầu xác thực). Plug Gateway – TCP Plug-Board Connection server: Firewall cung cấp các dịch vụ thông thường như Usernet news. Người quản trị mạng có thể chọn hoặc là chạy dịch vụ này ngay trong firewall, hoặc cài đặt một proxy server cho dịch vụ này. Do dịch vụ News chạy trực tiếp trên firewall thì dễ gây lỗi hệ thống, nên cách an toàn hơn là sử dụng proxy. Plug gateway được thiết kế để kiểm soát dịch vụ Usernet News và một số dịch vụ khác như Lotus Notes, Oracle, etc. Plug gateway dựa trên địa chỉ IP hoặc hostname, sẽ cho phép kiểm soát tất cả các truy nhập hệ thống thông qua các cổng dịch vụ được đăng ký. Trên cơ sở đó sẽ cho phép hoặc cấm các yêu cầu truy nhập. Tất cả yêu cầu kết nối bao gồm cả dữ liệu có thể được ghi lại nhật ký để theo dõi và kiểm soát. SQL Gateway Proxy Server cho SQL-Net: SQL Net sử dụng giao thức riêng không giống như của News hay Lotus Notes. Do vậy, không thể sử dụng Plug Gateway cho dịch vụ này được. SQL Gateway được phát triển từ Plug Gateway và dành riêng cho SQL-Net. Plug gateway dựa trên địa chỉ IP hoặc hostname, sẽ cho phép kiểm soát tất cả các truy nhập hệ thống thông qua các cổng dịch vụ được đăng ký. Trên cơ sở đó sẽ cho phép hoặc cấm các yêu cầu truy nhập. Tất cả yêu cầu kết nối bao gồm cả dữ liệu có thể được ghi lại nhật ký để theo dõi và kiểm soát. SOCKS Gateway – Proxy server cho các dịch vụ theo chuẩn SOCKS SOCKS là giao thức kết nối mạng giữa các máy chủ cùng hỗ trợ giao thức này. Hai máy chủ khi sử dụng giao thức này sẽ không cần quan tâm tới việc giữa chúng có thể nối ghép thông qua IP hay không. SOCKS sẽ định hướng lại các yêu cầu ghép nối từ máy chủ đầu kia. Máy chủ SOCKS sẽ xác định quyền truy nhập và thiết lập kênh truyền thông tin giữa hai máy. SOCKS Gateway dùng để chống lại các truy nhập vào mạng thông qua cổng này. NETACL – Công cụ điều khiển truy nhập mạng: Các dịch vụ thông thường trên mạng không cung cấp khả năng kiểm soát truy cập tới chúng do vậy chúng là các điểm yếu để tấn công. Kể cả trên hệ thống firewall các dịch vụ thông thường đã được lược bỏ khá nhiều để đảm bảo an toàn hệ thống nhưng một số dich vụ vẫn cần thiết để duy trì hệ thống như telnet, rlogin Netacl là một công cụ để điều khiển truy nhập mạng, dựa trên địa chỉ network của máy client, và dịch vụ được yêu cầu. Nó bao trùm nên các dịch vụ cơ bản cung cấp thêm khả năng kiểm soát cho dịch vụ đó. Vì vậy một client (xác định bởi địa chỉ IP hoặc hostname) có thể truy nhập tới telnet server khi nó nối với cổng dịch vụ telnet trên firewall. Thường thường trong các cấu hình firewall, NETACL được sử dụng để cấm tất cả các máy trừ một vài host được quyền login tới firewall qua hoặc là telnet hoặc là rlogin, và để khoá các truy nhập từ những kẻ tấn công. Độ an toàn của Netacl dựa trên địa chỉ IP và/hoặc hostname. Với các hệ thống cần độ an toàn cao, nên dụng địa chỉ IP để tránh sự giả mạo DNS. Netacl không chống lại được sự giả địa chỉ IP qua chuyển nguồn (source routing) hoặc những phương tiện khác. Nếu có các loại tấn công như vậy, cần phải sử dụng một router có khả năng soi những packet đã được chuyển nguồn (screening source routed packages). Chú ý là netacl không cung cấp điều khiển truy nhập UDP, bởi vì công nghệ hiện nay không đảm bảo sự xác thực của UDP. An toàn cho các dịch vụ UDP ở đây đồng nghĩa với sự không cho phép tất cả các dịch vụ UDP. Netacl chỉ bao gồm 240 dòng mã C (bao gồm cả giải thích) cho nên rất dễ kiểm tra và hiệu chỉnh. Tuy nhiên vẫn cần phải cẩn thận khi cấu hình nó. Authentication (xác thực và dịch vụ xác thực) Bộ Firewall chứa chương trình server xác thực được thiết kế để hỗ trợ cơ chế phân quyền. Authsrv chứa một cơ sở dữ liệu về người dùng trong mạng, mỗi bản ghi tương ứng với một người dùng, chứa cơ chế xác thực cho mỗi anh ta, trong đó bao gồm tên nhóm, tên đầy đủ của người dùng, lần truy cập mới nhất. Mật khẩu không mã hoá (Plain text password) được sử dụng cho người dùng trong mạng để việc quản trị được đơn giản. Mật khẩu không mã hoá không nên dùng với những người sử dụng từ mạng bên ngoài. Người dùng trong cơ sở dữ liệu có thể được chia thành các nhóm khác nhau được quản trị bởi quản trị nhóm là người có toàn quyền trong nhóm cả việc thêm, bớt ngời dùng. Điều này thuận lợi khi nhiều tổ chức cùng dùng chung một Firewall. Authsrv quản lý nhóm rất mềm dẻo, quản trị có thể nhóm người dùng thành nhóm dùng “group wiz”, người có quyền quản trị nhóm có thể xoá, thêm, tạo sửa bản ghi trong nhóm, cho phép hay cấm người dùng, thay đổi password của mật khẩu của user trong nhóm của mình. IP Filter – Bộ lọc mức IP: IP Filter là bộ lọc các gói tin TCP/IP, được xem như thành phần không thể thiếu khi thiết lập Firewall trong suốt đối với người sử dụng. Phần mềm này sẽ được cài đặt trong lõi của hệ thống (như UNIX kernel), được chạy ngầm khi hệ thống hoặt động, để đón nhận và phân tích tất cả các gói IP (IP Package). Bộ lọc IP filter có thể thực hiện các việc sau: Cho đi qua hoặc cấm bất kỳ một gói tin nào. Nhận biết được các dịch vụ khác nhau Lọc theo địa chỉ IP hoặc hosts Cho phép lọc chọn lựa giao thức IP bất kỳ Cho phép lọc chọn lựa theo các mảnh IP Cho phép lọc chọn lựa theo các tuỳ chọn IP Gửi trả lại các khối ICMP/TCP lỗi và đặt lại số hiệu packet Lưu giữ các thông tin trạng thái đối với các dòng TCP, UDP and ICMP Lưu giữ các thông tin trạng thái đối với các mảnh IP packet bất kỳ Có chức năng như Network Address Translator (NAT) Làm cơ sở thiết lập các kết nối trong suốt đối với người sử dụng Cung cấp các header cho các chương trình của người sử dụng để xác nhận. Ngoài ra hỗ trợ không gian tạm cho các quy tắc xác nhận đối với các gói tin đi qua. Đặc biệt đối với các giao thức cơ bản của Internet, TCP, UDP và ICMP, thì IP filter cho phép lọc theo: Inverted host/net matching Số hiệu cổng của các gói tin TCP/UDP Kiểu hoặc mã của các gói tin ICMP Thiết lập các gói tin TCP Tổ hợp tuỳ ý các cờ trạng thái TCP Lọc/loại bỏ những gói IP cha kết thúc Lọc theo kiểu dịch vụ Cho phép ghi nhật ký các bản tin bao gồm: Header của các gói tin TCP/UDP/ICMP and IP Một phần hoặc tất cả dữ liệu của gói tin Tổng kết chung về PROXY. Theo các định nghĩa cũng như những giá trị mà proxy mang lại như đề cập ở trên, ta có thể thấy proxy quả thật rất có lợi. Tuy nhiên, lợi dụng về ý tưởng proxy, một số server trên mạng đã tự biến mình thành những trạm chung chuyển, những trung gian cho các kết nối không được cho phép. Chính điều này đã đưa ra thêm một định nghĩa mới, một ý nghĩa mới giành cho proxy. Rất nhiều địa chỉ trên mạng do một lý do nào đó mà bị cấm truy cập đối với người dùng như là các trang web đồi trụy, các trang phản động, nội dung không lành mạnh. Tuy nhiên, để chống lại điều này, như đã nói ở trên, một số server đã biến mình thành proxy để giúp cho những kết nối cấm này có thể thực hiện được. Proxy này có 2 loại, hay nói cách khác là có 2 cách thông qua các proxy này để truy cập, đó là HTTP proxy và web-based proxy mà chúng ta sẽ được tìm hiểu ở phần sau LỰA CHỌN GIẢI PHÁP Mục đích Một bộ Firewall bao gồm một hệ thống phần mềm máy chủ mạnh với hệ điều hành cụ thể, ghép nối vào mạng thông qua các thiết bị mạng: Hub, Switch, Router, Do vậy việc lưa chọn máy chủ, thiết bị mạng, hệ điều hành và phần mềm bảo về và kiểm soát sẽ quyết định khả năng ứng dụng, tốc độ truy nhập và giá thành thực hiện. Trong phần này tôi sẽ trình bày 3 phương án ghép nối. Đối với mỗi phương án, ta sẽ phân tích chi tiết mô hình ghép nối, yêu cầu phần cứng và những điểm lợi và điểm bất lợi. Các giải pháp thực hiện Với một yêu cầu bảo vệ và kiểm soát hệ thống, có một số phương pháp khả thi. Tuỳ thuộc vào chiến lược và mức độ yêu cầu, có thể chọn một trong các mô hình kết nối dưới đây: Kết nối trực tiếp đơn Kết nối song song Kết nối gián tiếp Đối với mỗi mô hình, thiết bị phần cứng và phần mềm là khác nhau, kéo theo chi phí thực hiện sẽ khác nhau. Tất nhiên khả năng và phạm vi cũng khác nhau. Do khuôn khổ của giải pháp này là thiết lập Firewall cho một mạng đã có, nên những yếu tố về thiết bị, phần mềm, đường truyền trong mạng, được xem như đã có và không đề cập đến nữa. Nếu cần chúng tôi sẽ trình bày trong bản giải pháp về mạng. Kết nối đơn trực tiếp Bộ Firewall được đặt giữa hai mạng Intranet và Internet (Intranet ở đây hiểu là mạng bên trong cần bảo vệ, còn Internet là mạng bên ngoài). Tất cả các đường truyền đi ra hoặc đi và đều phải thông qua Firewall. Mô hình mạng: Hình 19: Mô hình mạng kết nối đơn trực tiếp Đường truyền từ ngoài được nối vào router, qua HUB vào máy chủ Firewall, sau đó đi vào mạng bên trong. Tất cả các gói tin từ ngoài vào sẽ được Firewall Server đón nhận, kiểm tra nếu hợp lệ sẽ chuyển tiếp vào bên trong. Ngược lại, nếu không hợp lệ sẽ bi loại bỏ ngay. Tương tự như vậy đối với đối với các yêu cầu truy nhập từ trong ra cũng bị Firewall kiểm soát. Phần mềm Firewall sẽ được cài trên máy chủ (server). Tuy thuộc vào mục đích kiểm soát, nhà quản lý có thể mua đầy đủ hoặc mua từng phần của bộ chương trình phần mềm Firewall. Nếu mua từng phần thì chỉ có những truy nhập thông qua các dịch vị đó mới bị kiểm soát. Ngoài ra, cũng có một lựa chọn chỉ cho phép một số dịch vụ nào đó được phép. Lưu ý rằng, cấu hình máy chủ này càng mạnh thì tốc độ xử lý càng nhanh, thời gian do firewall chiếm là không đáng kể. Yêu cầu phần cứng: 1 x Máy chủ SUN/HP/IBM/ 2CPU, 332Mhz,256Mb RAM, 4GB HD, CD ROM, Ethernet Card, Monitor, Mouse hoặc cao hơn 1x HUB: 3Com/IBM/HP/ Yêu cầu phần mềm 1 x OS: UNIX/NT 1x Firewall Software (depend on your selection) Ưu điểm Chi phí thực hiện thấp hơn so với các giải pháp khác. Có khả năng kiểm soát toàn bộ việc truy nhập từ ngoài vào, và từ trong ra. Cho phép thống kê và quản lý, đánh giá việc truy nhập hệ thống. Hỗ trợ tốt cho quyết định của nhà quản lý hệ thống. Cấu hình hệ thống đơn giản. Nhược điểm: Khi Máy chủ có sự cố (treo, hỏng vật lý,) thì toàn bộ việc truy nhập từ trong ra cũng như từ ngoài vào sẽ bị dừng lại Kết nối song song trực tiếp Bộ Firewall được đặt giữa hai mạng Intranet và Internet (Intranet ở đây hiểu là mạng bên trong cần bảo vệ, còn Internet là mạng bên ngoài). Tất cả các đường truyền đi ra hoặc đi và đều phải thông qua Firewall. Mô hình này sử dụng hai bộ Firewall thiết lập theo chế độ song hành hoặc kiểu dự phòng (main-standby). Trường hợp một bộ có sự có thì bộ kia sẽ đảm nhận toàn bộ công việc. Mô hình mạng Hình 20: Mô hình mạng kết nối song sonng trực tiếp Đường truyền từ ngoài được nối vào router, qua Hub đến máy chủ, sau đó đi vào mạng bên trong. Tất cả các gói tin từ ngoài vào sẽ được Server đón nhận, kiểm tra nếu hợp lệ sẽ chuyển tiếp vào bên trong. Ngược lại, nếu không hợp lệ sẽ bị loại bỏ. Tương tự như vậy đối với các yêu cầu truy nhập từ trong ra cũng bị kiểm soát. Phần mềm Firewall sẽ được cài trên 2 máy chủ (server). Tuy thuộc vào mục đích kiểm soát, nhà quản lý có thể mua toàn bộ hoặc mua từng phần. Nếu mua từng phần thì chỉ có những truy nhập thông qua các dịch vị đó mới bị kiểm soát. Ngoài ra cũng có một lựa chọn chỉ cho phép một số dịch vụ nào đó được phép. Cấu hình máy chủ càng mạnh thì tốc độ xử lý càng nhanh, khi đó thời gian do firewall xử lý là không đáng kể. Nếu thiết lập theo chế độ dự phòng, máy chủ thứ hai (máy phụ) có thể chọn cấu hình phần cứng thấy hơn. Yêu cầu phần cứng 1 x Máy chủ chính: SUN/HP/IBM/ 4CPU, 332Mhz, 256Mb RAM, 4GB HD, CD ROM, Ethernet Card, Monitor, Mouse hoặc cao hơn 1 x Máy chủ dự phòng: SUN/HP/IBM/ 2CPU, 332Mhz, 128Mb RAM, 4GB HD, CD ROM, Ethernet Card, Monitor, Mouse hoặc cao hơn 2 x Hub: 3COM/IBM/HP/ Cable, connector, Yêu cầu phần mềm OS: UNIX/NT cài trên 2 máy chủ (có thể 1 NT và 1UNIX hoặc cả 2 cùng là UNIX hoặc cùng là NT) Firewall Software (depend on your selection) cài trên 2 máy chủ Ưu điểm Chế độ thực hiện an toàn cao, nhanh. Có khả năng kiểm soát toàn bộ việc truy nhập từ ngoài vào, và từ trong ra. Cho phép thống kê và quản lý, đánh giá việc truy nhập hệ thống. Hỗ trợ tốt cho quyết định của nhà quản lý hệ thống. Nhược điểm Chi phí thực hiện cao. Thiết lập cấu hình phức tạp. Khi có sự cố phải đồng bộ 2 hệ thống trên máy. Kết nối gián tiếp Giải pháp dùng dùng để giám sát truy nhập giữa hai mạng Intranet và Internet mà không làm ảnh hưởng tới hoạt động hiện tại của mạng. Do vậy, sẽ không có khả năng ngăn cấm truy nhập. Bộ Firewall được đặt song song với đường truyền giữa mạng Intranet và Internet (Intranet ở đây hiểu là mạng bên trong cần bảo vệ, còn Internet là mạng bên ngoài). Các thông tin trao đổi qua lại sẽ đồng thời chuyển đến cho Firewall. Mô hình mạng Hình 21: Mô hình mạng kết nối gián tiếp Giữa đường truyền nối hai mạng sẽ được đặt một thiết bị chuyển mạch. Thiết bị này có chức năng giữ nguyên luồng thông tin trên đường truyền hiện tại. Đồng thời tạo một mới đi vào Firewall với nội dung giống hệt. Luồng thông tin này bao gồm cả luồng từ ngoài vào và từ trong ra. Phần mềm Firewall sẽ được cài trên máy chủ (server), dùng để đón nhận tất cả thông tin chuyển đến từ thiết bị chuyênr mạch. Sau đó ghi vào kho lưu trữ. Lưu ý rằng, Firewall này không thay đổi bất cứ nội dung nào của các gói tin. Đồng thời cũng không có khả năng cấm hoặc cho phép các dịch vụ trao đổi qua lại giữa hai mạng. Yêu cầu phần cứng Máy chủ SUN/HP/IBM/ 2CPU, 332Mhz,128Mb RAM, 4GB HD, CD ROM, Ethernet Card, Monitor, Mouse hoặc cao hơn Thiết bị chuyển mạch Yêu cầu phần mềm 1 x OS: UNIX/NT cài cho máy chủ 1 x Firewall Software (depend on your selection) Ưu điểm Chi phí thực hiện thấp so với các giải pháp khác Có khả năng thống kê toàn bộ việc truy nhập từ ngoài vào, và từ trong ra. Nhược điểm: Không cho phép ngăn chặn những truy nhập cố ý hoặc phá hoại từ bên ngoài cũng như từ trong ra. PHẦN 3: VƯỢT FIREWALL KHÁI QUÁT Vượt firewall. Nói một cách nôm na, vượt firewall là vượt qua sự truy cản của các chương trình bảo mật (Firewall) để có thể truy cập đến được đích mong muốn Vượt firewall có thể là vượt từ bên trong ra hay từ bên ngoài vào. Ở đây, chúng ta chỉ đề cập đến vượt firewall từ bên trong ra, do đó chúng ta có thể tóm gọn lại có 3 hình thức vượt firewall: HTTP proxy, webbased proxy, http tunneling. Phương pháp thứ nhất : HTTP Proxy Là phương pháp mà server sử dụng một cổng nào đó để trung chuyển các yêu cầu, các server này thường được gọi là web proxy server hay http proxy server Khi các yêu cầu của client bị từ chối bởi người quản trị (hay nói chính xác hơn là các chương trình quản lý trong mạng LAN), thì người sử dụng có thể sử dụng các proxy server để chuyển tiếp các yêu cầu mà trong đó, proxy server là một địa chỉ được cho phép kết nối đến. Các proxy server này thường không cố định, nó thường có thời gian sống rất ngắn. Sử dụng proxy này, bạn chỉ cần cấu hình mục proxy mà trong hầu hết các Web browser đều có hỗ trợ Phương pháp thứ hai: Web-Based Proxy Phương pháp này cho phép người sử dụng truy cập vào các trang bị cấm dưới hình thức 1 truy cập vào 1 trang web trung gian. Đầu tiên người dùng truy cập vào trang web này Sau đó, người sử dụng cung cấp thông tin về trang web mà mình muốn đến (chủ yếu dưới hình thức url) Sau đó Web-based proxy này sẽ kết nối đến trang mà người dùng yêu cầu, lấy thông tin, đinh dạng lại thông tin, rồi gửi lại cho người dùng một cách hợp pháp Tất nhiên, web-based proxy này phải là một trang web mà chưa bị người quản trị cấm Phương pháp thứ ba: HTTP Tunneling Cũng như các phương pháp trên, htttp tunneling cho phép người dùng truy cập vào những trang bị cấm. Bao gồm một chương trình client ở phía người dùng và một chương trình ở phía server Đầu tiên, chương trình ở phía client sẽ tạo ra một đường hầm kết nối máy của bạn đến chương trình server đặt trên mạng, đường hầm này đi ngang qua firewall của bạn mà không hề hấn gì, vì địa chỉ server không bị filter. Khi đường hầm đã thiết lập xong mọi yêu cầu truy cập đến trang web sẽ thông qua server, rồi đưa vào đường hầm và đến máy bạn mà firewall không hề hay biết. Do 1 số ứng dụng http-tunneling được viết theo mô hình client-server, cơ chế hoạt động dựa trên kịch bản làm việc dựng sẵn, ta có thể chủ động qua mặt các firewall bằng cách mã hóa các gói tin trao HTTP Tunneling là một phương pháp khó. Do điều kiện thời gian và lượng kiến thức còn hạn chế nên trong đề tài em không tìm hiểu kĩ về phương pháp này. VƯỢT FIREWALL BẰNG HTTP PROXY Khi các HTTP Proxy Server trở lên hữu ích Nhiệm vụ chính của HTTP proxy server là cho phép những client bên trong truy cập ra internet mà không bị ngăn trở bởi Firewall (firewall). Lúc này tất cả các client phía sau Firewall đểu có thể truy cập ra ngoài Internet chỉ với một chút công sức và không bị ngăn trở bởi các dịch vụ bảo mật Proxy server lắng nghe các yêu cầu từ các client và chuyển tiếp (forward) những yêu cầu này đến các server bên ngoài Internet. Proxy server đọc phản hồi (response) từ các server bên ngoài rồi gửi trả chúng cho các client bên trong. Thông thường, những client mà cùng subnet thì dùng cùng một proxy server. Do đó, proxy server có thể cache các document để phục vụ cho các client có cùng nhu cầu (cùng truy cập đến một trang chẳng hạn). Người dùng khi sử dụng proxy cảm thấy họ đang nhận các phản hồi một cách trực tiếp từ bên ngoài. Nhưng thực sự thì họ đang ra ngoài Internet một cách gián tiếp thông qua proxy. Các client mà không sử dụng DNS vẫn có thể duyệt web vì họ chỉ cần một thông tin duy nhất, đó là địa chỉ IP của proxy server. Tương tự, các cơ quan, doanh nghiệp sử dụng các địa chỉ ảo (10.x.x.x, 192.168.x.x, 172.16.x.x, 172.32.x.x) vẫn có thể ra ngoài Internet một cách bình thường thông qua proxy server. Các proxy server có thể cho phép hay từ chối các yêu cầu dựa trên giao thức của các kết nối. Ví dụ như: một proxy server có thể cho phép các kết nối HTTP trong khi từ chối các kết nối FTP Khi bạn dùng proxy server như một cổng ra ngoài Internet từ mạng LAN, bạn có thể chọn lựa các tùy chọn như sau: Cho phép hay ngăn chặn client truy cập Internet dựa trên nền tảng địa chỉ IP Caching document: lưu giữ lại các trang web phục vụ cho các nhu cầu giống nhau Sàng lọc kết nối Cung cấp dịch vụ Internet cho các công ty dùng mạng riêng (nền tảng IP ảo) Chuyển đổi dữ liệu sang dạng HTML để có thể xem bằng trình duyệt Hình 22: Mô hình hoạt động chung của các Proxy Chức năng chính Truy cập Internet Các máy trong mạng LAN có thể không thể truy cập đến các tài nguyên trên Internet một cách trực tiếp vì chúng đang hoạt động phía sau một bức Firewall. Trong trường hợp này, proxy server có thể giúp chúng thực hiện điều này một cách dễ dàng. Hình 23: Một số Protocol được hỗ trợ Ở hình trên, proxy server đang chạy trên một firewall host và thiếp lập các kết nối ra thế giới bên ngoài. Chúng ta cũng có thể sử dụng một máy tính khác để làm proxy server, máy này phải có đầy đủ các quyến truy cập Internet. Proxy nhận các yêu cầu từ trình duyệt, proxy truy vấn đến các thông tin được yêu cầu, chuyển đổi sang dạng HTML rồi gửi trả lại cho browser phía bên trong firewall. Proxy server có thể quản lý tất cả các kết nối ra ngoài Internet nếu nó là máy tính duy nhất có kết nối trực tiếp ra ngoài Internet. Caching documents Thông thường, các client của cùng một subnet truy cập đến một Web proxy server. Một vài proxy server cho phép bạn cache (lưu trữ tạm thời) các tài liệu này trên máy để phục vụ cho các máy khác có cùng nhu cầu. Giả sử: máy A vừa truy cập vào trang , sau đó máy B lại yêu cầu đến trang này, trong trường hợp này, proxy server sử dụng lại documents này có sẵn trong máy mà không phải lên tận server lấy về. Điều này khiến cho tốc độ cải thiện rõ rệt Hình 24: Caching Caching trên proxy server hiệu quả hơn trên máy đơn, nó sẽ tiết kiệm được không gian lưu trữ bởi vì bạn chỉ phải lưu lại một lần. Caching trên proxy server để cho hiệu quả hơn, chúng ta nên caching lại những trang mà thường xuyên được tham chiếu đến (được truy cập đến) Thông qua caching, chúng ta còn có thể truy cập đến trang đó ngay cả trong trường hợp server đó bị down Một số loại proxy cho phép cache ở nhiều nơi để đề phòng khi cache bị down hay bị lỗi Hình 25: caching bị lỗi(failure) Điều khiển truy cập Internet một cách có chọn lọc Khi sử dụng proxy server bạn có thể lọc các transaction của các client. Một vài proxy server cho phép bạn: Yêu cầu nào được chấp nhận, yêu cầu nào không Ngăn chặn các trang mà bạn không muốn cho user truy cập đến Giới hạn các dịch vụ mà bạn muốn, ví dụ: bạn có thể cho phép user sử dụng dịch vụ HTTP nhưng lại không muốn cho họ sử dụng dịch vụ FTP. Cung cấp dịch vụ Internet cho các cơ quan sử dụng IP ảo Các tổ chức mà sử dụng một hay nhiều không gian địa chỉ ảo có thể sử dụng Internet, điều này hoàn toàn có thể. Bằng cách thông qua proxy server và proxy server sẽ giữ địa chỉ thật. Một phiên giao dịch(transaction) thông qua Proxy Hình 26 : Một transaction qua Proxy Các client đều có các địa chỉ IP của nó cũng như một kết nối trực tiếp đến các server trên Internet. Khi trình duyệt tạo ra một yêu cầu HTTP thì HTTP server chỉ lấy đường dẫn và phần từ khóa của URL được yêu cầu, những phần khác như phần giao thức, hostname của máy đang chạy HTTP server đều đã rõ ràng đối với server. Ví dụ: khi bạn gõ: thì trình duyệt sẽ chuyển sang là: GET /class/th01.htm. Trình duyệt kết nối đến abc.com server, đưa ra lệnh và đợi phản hồi. Trong ví dụ này, trình duyệt tạo ra một yêu cầu đến HTTP server và chỉ rõ tài nguyên resource nào cần được tải về, không có giao thức cũng như không có bất kì hostname nào trong URL Kết nối thông qua Proxy Server Proxy server hoạt động với cả 2 vai trò là client và server, nó đóng vai trò server trong trường hợp nó tiếp nhận các yêu cầu HTTP từ các trình duyệt và hoạt động như một client khi nó kết nối đến server ở xa để truy vấn các tài nguyên Proxy sử dụng lại tất cả các thông tin mà trình duyệt đã gửi cho nó để gửi yêu cầu đến server ở xa nên sẽ không sợ bị mất mát hay thiếu hụt thông tin Một proxy server hoàn chỉnh có thể hỗ trợ hết tất cả các giao thức như: HTTP, FTP, Gopher, WAIS. Một proxy cũng có thể chỉ hỗ trợ một giao thức như HTTP nhưng điều đó thật bất tiện khi bạn có nhu cầu kết nối đến FTP trong quá trình bạn duyệt Web HTTP Proxy Khi proxy server đóng vai trò client, nó hoạt động như một trình duyệt nhận các resource. Một ví dụ về quá trình trao đổi thông tin: Khi bạn gõ: Trình duyệt chuyển URL này thành: GET Yêu cầu này được đưa đến cho proxy server. Proxy server sẽ dựa vào URL tách lấy phần abc.com để kết nối đến remote server, sau đó chuyển URL thành: GET /class/th01.com , chuyển lệnh đến server rồi đợi phản hồi như hình bên dưới. Hình 27: Truy xuất thông tin thông qua HTTP Proxy FTP Proxy Hình 28: Truy xuất thông tin thông qua FTP Proxy Hình trên cho thấy quá trình một yêu cầu FTP thông qua proxy. Proxy server thông qua URL biết được đây là một yêu cầu FTP, do đó nó sẽ thực hiện một kết nối FTP đến server ở xa. Proxy server tạo một kết nối và truy vấn file đến FTP ở xa, lấy file về rồi gửi trả lại cho client. Tiện lợi và bất tiện khi cache các trang web Caching có nghĩa là lưu trữ tài liệu trên máy cục bộ, vì vậy mà các user không phải kết nối đến server đế lấy các file về. Khi một trình duyệt cục bộ yêu cầu một file nào đó, proxy xem xét xem có có cache file đó lại không. Nếu có, nó sẽ gửi file về cho trình duyệt. Nếu bạn sử dụng tính năng này, bạn cần phải quyết định về: Các trang nào cần được cache lại (tần số được truy cập nhiều) Thời gian bao lâu phải cập nhật lại các trang này. Những thuận lợi của tính năng caching: Caching tiết kiệm được một lượng lớn thời gian cho các user khi thường xuyên truy cập đến một trang nào đó. Proxy server sẽ đáp ứng các yêu cầu này một cách nhanh chóng vì chỉ phải truy vấn đến các file được lưu trữ cục bộ Tiết kiệm được không gian lưu thông mạng Tiết kiệm được không gian đĩa dùng để lưu trữ vì tất cả các máy cục bộ đều dùng chung một file thay vì các máy phải cache lại trên máy mình Vẫn có thể cung cấp nhu cầu Internet ở một mức nào đó ngay cả khi không có kết nối Internet Những bất cập do Proxy Tuy proxy như nói ở trên đem lại rất nhiều điều hữu ích. Tuy nhiên các gì cũng có 2 mặt và proxy cũng không ngoại lệ. Lợi dụng ý tưởng về proxy, hàng loạt các máy tính trên mạng tự biến mình thành những proxy server để cho các client có thể truy cập vào những trang có nội dung xấu mà nhà cung cấp dịch vụ đã ngăn chặn bằng firewall. Vấn đề được đặt ra là làm thế nào để cho các client truy cập Internet vẫn có thể truy cập Internet bình thường nhưng không thể truy cập những trang bị chặn, hay nói cách khác là cấm cản người dùng sử dụng proxy bên ngoài hệ thống. VƯỢT FIREWALL BẰNG WEB-BASED PROXY Thế nào là một web-based anonymous Proxy? Web-based Anonymous Proxy là 1 dạng khác của Web Proxy Server, nhưng được xây dựng dưới dạng 1 trang web (tạm gọi là Web-based Proxy WBP) . Sau đây là các đặc điểm khác biệt của nó so với Web Proxy : Dễ dàng, thân thiện với người dùng do được Proxy tích hợp sẵn bên trong trang Web, người dùng chỉ cần cung cấp địa chỉ trang web cần đến (URL) cho WBP và bắt đầu duyệt web. Ngoài ra người dùng không cần phải tinh chỉnh các thông số khác địa chỉ IP của WBP, số hiệu cổng,.. cho trình duyệt của mình, chỉ cần biết tên hoặc IP của WBP và link đến WBP này Khi được các client yêu cầu, WBP sẽ lấy các thông tin (Resource) từ web server đích, sau đó xây dựng lại thành 1 trang web hoàn chỉnh rồi đẩy toàn bộ nội dung trang web hoàn chỉnh này về cho trình duyệt của Client. Thường thì trình duyệt phía Client sẽ nhận được trang web mình yêu cầu có đính kèm theo phần tiêu đề của WBP. Có khả năng chọn lọc các web page components khi được yêu cầu. VD: quyết định xem có cho phép sử dụng cookies,hình ảnh,javascript,cửa sổ pop-up, trong trang web hay không. Do bản chất là “lướt web ẩn danh” thông qua 1 trang web trung gian nên các gói tin request của Client gần như giống hoàn toàn với các gói tin HTTP request thông thường .Vì vậy các phần mềm lọc gói tin sẽ khó lòng phát hiện ra đâu là gói tin “có vấn đề”. Địa chỉ 1 số các WBP tham khảo khác trên internet : Cách thức hoạt động của một web-based Proxy Mỗi khi nhận được yêu cầu request từ phía Client,WBP sẽ : Phân tích URL để tiến hành tiếp nhận các resource tương ứng (links, hình ảnh, flash,) từ trang web được client yêu cầu Sau khi nhận xong,WBP sẽ cập nhật lại các URLs của trang HTML được yêu cầu sao cho phù hợp. WBP sẽ tiến hành sàng lọc các thành phần (web page components) dựa theo yêu cầu Client và đẩy toàn bộ trang HTML đã được xây dựng lại này về phía Client Phía trình duyệt Client đang lắng nghe phản hồi từ phía WBP nên khi nhận được phản hồi, trình duyệt sẽ thể hiện trang web cho người dùng. Giới thiệu mô hình hoạt động Khởi động trang Web Kiểm tra cookies Nếu thành công Duyệt trang web theo yêu cầu Nếu thất bại: thông báo lỗi Load trang dựa theo cookies Nhập thông tin Load trang web defaut Kiểm tra các option Kiểm tra hợp lệ URL Chỉnh sửa theo Option Gửi kết quả cho client Chỉnh sửa URL Không Có Không hợp lệ Hợp lệ Hình 29: Sơ đồ hoạt động của một trang Web Based Proxy Diễn giải mô hình Khởi động trang web: Bao gồm việc load các form, các đề mục, giao diện trang web Kiểm tra cookies:Kiểm tra xem trên máy hiện có sử dụng cookies của trang hay không Load trang web default: Nếu kiểm tra cookies không có, trình duyệt sẽ load trang mặc định, tức là url sẽ trống, các option mặc định sẽ được check Load trang dựa theo cookies:Nếu kiểm tra cookies có, thì sẽ load theo cookies, bao gồm các url đã được sử dụng, các trạng thái của các option. Nhập thông tin:Client nhập các thông tin như url của trang web cần đến, check hay bỏ check các option tùy theo người dùng. Kiểm tra hợp lệ url:Kiểm tra về hình thức nhập như có thiếu http hay không, có thiếu www hay không, nếu thiếu sẽ tự động add thêm vào cho hợp lệ. Kiểm tra các option:Kiểm tra các option xem option nào được check, option nào không được check để thực hiện đúng theo yêu cầu của client. Duyệt trang web theo yêu cầu:Gửi yêu cầu đến webserver tương ứng: phân giải tên miền, gửi yêu cầu http đến server Thất bại, thông báo lỗi:Nếu không có trang web, địa chỉ sai do người dùng đánh sai hay bất cứ nguyên nhân nào làm cho việc gửi http request không được đáp ứng thì đều thông báo lỗi Thành công, chỉnh sửa theo option:Nếu thành công thì sẽ chỉnh sửa lại trang: dựa theo các option, xem có phải add thêm phần phụ vào đầu trang hay không, lấy hay loại bỏ hình ảnh, lấy hay loại bỏ các script(các mục này được thực hiện khi gửi http request). Gửi kết quả cho client:Gửi kết quả cuối cùng đến cho client là một trang web đã được tinh chỉnh lại, được chỉnh sửa lại cho phù hợp. PHẦN 4: TỔNG KẾT NHỮNG KẾT QUẢ ĐÃ ĐẠT ĐƯỢC Theo yêu cầu đặt ra ban đầu là “Nghiên cứu tổng quan về An toàn thông tin trên mạng.Cung cấp các kiến thức đầy đủ, chi tiết về tường lửa và các kiến thức có liên quan. Từ đó giúp mọi người có những hiểu biết về an toàn thông tin, về chức năng, cấu tạo, các dạng tường lửa. Biết cách sử dụng tường lửa một cách thành thạo nhằm đảm bảo được an toàn thông tin khi kết nối với môi trường Internet”, cho đến thời điểm hiện tại khóa luận đã đạt được một số kết quả như sau: Phần yêu cầu: Đã giới thiệu tổng quan về an toàn thông tin trên mạng, cung cấp kiến thức về các đối tượng cần bảo vệ, các hình thức tấn công trên mạng, phân loại kẻ tấn công, các dịch vụ và kĩ thuật bảo vệ thông tin trên mạng, đưa ra giải pháp tổng thể cho an toàn thông tin trên mạng Đã đưa ra được khái niệm về tường lửa, chức năng, các thành phần cơ bản của tường lửa. Giới thiệu các dạng firewall, một số mô hình firewall, đánh giá các hạn chế của firewall Cung cấp đầy đủ, chi tiết các kiến thức có liên quan : Bastion host, Proxy. Phần mở rộng: Tìm hiểu và giới thiệu một số phương pháp vượt firewall, cụ thể là hai phương pháp : vượt firewall bằng HTTP Proxy và vượt Firewall bằng Web-based Proxy HƯỚNG PHÁT TRIỂN Tìm hiểu một số phương pháp xây dựng tường lửa : xây dựng tường lửa sử dụng dịch vụ IP-Tables,.. Tìm hiểu kĩ thuật lọc thông tin trong .Net , trong Java Hoàn thành việc tìm hiểu chi tiết về phương pháp vượt tường lửa bằng HTTP Tunneling Tìm hiểu thêm một số phương pháp vượt firewall được sử dụng nhiều hiện nay Từ các phương pháp vượt firewall, tìm hiểu, giới thiệu, triển khai ứng dụng minh họa cho các module chống vượt firewall PHỤ LỤC Tài liệu tham khảo [1]. TS. Nguyễn Mạnh Hùng, Slide bài giảng môn Mạng máy tính và chuyên đề mạng máy tính nâng cao [2]. Ngạc Văn An (chủ biên), Mạng máy tính, NXB Giáo dục, 2005 [3]. Nguyễn Hồng Sơn, Giáo trình hệ thống mạng máy tính CCNA Sememster 1, NXB Lao động-Xã hội, 2004 [4]. [5]. [6]. [7]. [8]. [9]. [10]. [11]. [12]. [13]. [14]. [15].

Các file đính kèm theo tài liệu này:

  • doc2108.doc