Nghiên cứu giải pháp an toàn thông tin cho hệ thống tính toán lưới

  • Số trang: 74 |
  • Loại file: PDF |
  • Lượt xem: 22 |
  • Lượt tải: 0
tailieuonline

Đã đăng 27372 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - - - *** - - - - - TRIỆU THỊ THU THỦY NGHIÊN CỨU GIẢI PHÁP AN TOÀN THÔNG TIN CHO HỆ THỐNG TÍNH TOÁN LƯỚI Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60 48 05 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. Nguyễn Văn Tam HÀ NỘI – 2011 3 MỤC LỤC DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT ................................................... 5 MỞ ĐẦU.............................................................................................................................. 6 Chương 1 - Tổng quan về an toàn thông tin trong hệ thống tính toán lưới.................. 7 1.1 Vai trò của tính toán lưới hiện nay.............................................................................. 7 1.1.1 Giới thiệu .............................................................................................................. 7 1.1.2 Vai trò của tính toán lưới trong nghiên cứu khoa học (e-science) ....................... 9 1.1.2.1 Chia sẻ tài nguyên bên trong tổ chức ảo (Virtual Organization) ................ 10 1.1.2.2 Giao tiếp với những công việc đang được thực thi trên hệ thống lưới ........ 11 1.1.2.3 Tính toán phân tán ........................................................................................ 13 1.1.2.4 Quản lý dữ liệu ............................................................................................. 15 1.2 Các thách thức của an toàn thông tin trong điện toán đám mây ............................... 16 1.2.1 Đặc trưng ............................................................................................................ 16 1.2.2 Kiến trúc phân lớp của tính toán lưới ................................................................. 17 1.2.3 Thách thức an toàn thông tin .............................................................................. 18 Chương 2 - Giải pháp bảo mật ........................................................................................ 20 2.1 Middleware ........................................................................................................... 20 2.1.3 Định nghĩa ...................................................................................................... 20 2.1.3 Các công nghệ Middleware trong tính toán lưới ........................................... 23 2.1.3.1 Globus Toolkit ............................................................................................ 23 2.1.3.1 Glite ............................................................................................................ 25 2.1.3.1 Unicore........................................................................................................ 29 2.1.3 Các phương pháp an toàn thông tin thường được áp dụng trong tầng middleware của tính toán lưới ..................................................................................... 30 2.1.3.1 Xác thực và cấp phép .................................................................................. 30 2.1.3.2 Ủy quyền ..................................................................................................... 33 2.1.3.3 Giao tiếp bí mật........................................................................................... 35 2.2 Hạ tầng .................................................................................................................. 37 2.2.3 An ninh mức vật lý ......................................................................................... 37 4 2.2.4 An ninh hệ điều hành ..................................................................................... 38 2.2.5 Bức tường lửa ................................................................................................. 39 2.2.6 Phát hiện truy nhập......................................................................................... 41 Chương 3 - Giải pháp bức tường lửa mã nguồn mở iptables....................................... 42 3.1 Giới thiệu về IPTables .......................................................................................... 42 3.2 Nguyên lý hoạt động của IPTables ....................................................................... 44 3.3 Cấu trúc IPTables .................................................................................................. 45 3.3.1 Bảng MANGLE .................................................................................................. 45 3.3.2 Bảng NAT ........................................................................................................... 46 3.3.3 Bảng FILTER ..................................................................................................... 47 3.4 Các thành phần của IPTables ................................................................................ 47 3.4.1 Targets ................................................................................................................ 47 3.4.2 Các tham số chuyển mạch quan trọng của IPTables .......................................... 49 3.4.3 Sử dụng chuỗi luật do người dụng định nghĩa.................................................... 52 3.4.4 Những module kernel ......................................................................................... 53 3.5 Các điều kiện trong chuỗi luật của IPTables ........................................................ 54 3.6 Hành động trong luật ............................................................................................ 58 3.7 Tường lửa trên Grid .............................................................................................. 61 3.7.1 Lưu lượng và cổng dịch vụ trong Grid ............................................................... 61 3.7.2 Điều khiển phạm vi cổng trong Grid .................................................................. 64 Chương 4 - Mô hình thử nghiệm..................................................................................... 65 TÀI LIỆU THAM KHẢO ............................................................................................... 72 Thank you for evaluating AnyBizSoft PDF Splitter. A watermark is added at the end of each output PDF file. To remove the watermark, you need to purchase the software from http://www.anypdftools.com/buy/buy-pdf-splitter.html 5 DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Ký hiệu Tiếng Anh Ý nghĩa VO Virtual Organization Tổ chức ảo VOMS Virtual Organization Manager Service Dich vụ quản trị tổ chức ảo Giao thức thong điệp điều khiển ICMP Internet Control Message Protocol Internet TCP Transmission Control Protocol Giao thức điều khiển giao vân IP Internet Protocol Giao thức Internet FW Firewall Tường lửa NAT Network address translation Chuyển đổi địa chỉ mạng QoS Quality of Service Chất lượng dịch vụ GSI Grid Security Infrastructure Kiến trúc an ninh lưới FTP File Transfer Protocol Giao thức truyền tập tin 6 MỞ ĐẦU Tính toán lưới vẫn giữ vai trò vô cùng quan trọng, đặc biệt trong lĩnh vực nghiên cứu. Trên thế giới, các dự án về tính tóan lưới vẫn tiếp tục được triển khai và phát triển. Với mong muốn làm chủ vấn đề an toàn thông tin trong tính toán lưới, luận văn này gồm những phần sau như sau: Chương 1: Tổng quan về an toàn thông tin trong hệ thống Chương 2: Giải pháp bảo mật Chương 3: Bức tường lửa Iptables Chương 4: Demo Cuối cùng là Tài liệu tham khảo. 7 Chương 1 - Tổng quan về an toàn thông tin trong hệ thống tính toán lưới 1.1 Vai trò của tính toán lưới hiện nay Trước sự phát triển mạnh mẽ của điện toán đám mây, phần này trả lời cho câu hỏi ý nghĩa của điện toán lưới ngày nay. 1.1.1 Giới thiệu Khái niệm Tính toán lưới đã bắt đầu xuất hiện vào đầu thập niên 90 với nghĩa ẩn dụ là làm cho việc sử dụng sức mạnh của máy tính dễ dàng như là việc sử dụng điện năng. Ngày nay có rất nhiều định nghĩa về tính toán lưới. Một định nghĩa về Grid khá hoàn chỉnh được đưa ra bởi tiến sỹ Ian Foster như sau : “Grid là một loại hệ thống song song, phân tán cho phép chia sẻ, lựa chọn, kết hợp các tài nguyên phân tán theo địa lý, thuộc nhiều tổ chức khác nhau dựa trên tính sẵn sàng, khả năng, chi phí của chúng và yêu cầu về chất lượng dịch vụ (QoS) của người dùng để giải quyết các bài toán, ứng dụng có quy mô lớn trong khoa học, kỹ thuật và thương mại. Từ đó hình thành nên các “tổ chức ảo” (Virtual Organization (VO)), các liên minh tạm thời giữa các tổ chức và tập đoàn, liên kết với nhau để chia sẻ tài nguyên và/hoặc kỹ năng nhằm đáp ứng tốt hơn các cơ hội kinh doanh hoặc các dự án có nhu cầu lớn về tính toán và dữ liệu, toàn bộ việc liên minh này dựa trên các mạng máy tính”. Hình 1-1 mô tả các quá trình phát triển của điện toán, từ kiến trúc máy vi tính lớn/thiết bị đầu cuối, đến máy tính cá nhân, mạng điện toán đến điện toán lưới và đám mây. Trong giai đoạn 1, nhiều người dùng tương tác với một máy vi tính lớn qua các thiết bị đầu cuối. Trong giai đoạn 2, các máy tính cá nhân có sức mạnh đủ để thỏa mãn đa số người sử dụng. Trong giai đoạn 3, các máy tính cá nhân, máy tính xách tay và máy chủ kết nối với nhau thông qua các mạng nội bộ để chia sẻ tài nguyên và tăng hiệu năng. Trong giai đoạn 4, các mạng nội bộ được kết nối với các mạng nội bộ khác tạo thành mạng toàn cầu như Internet để tận dụng các tài nguyên và ứng dụng ở xa. Trong giai đoạn 5, điện toán lưới cung cấp khả năng chia sẻ sức mạnh điện toán và lưu trữ thông qua một hệ thống điện toán phân tán. Trong giai đoạn 6, điện toán đám mây cung cấp khả năng chia sẻ tài nguyên trên Internet thông qua một cách đơn giản và linh động hơn. 8 Hình 1-1. Các giai đoạn phát triển của điện toán Điện toán lưới là sự kết hợp và chia sẻ tài nguyên cũng như cách thức giải quyết vấn đề trong môi trường các tổ chức ảo động, nhiều thành viên nghiên cứu. Việc chia sẻ được giám sát chặt chẽ trong đó những nhà cung cấp tài nguyên và những nhà tiêu thụ định nghĩa rõ ràng và cẩn thận cái gì được chia sẻ, ai được chia sẻ và chia sẻ trong điều kiện nào. Bước phát triển tiếp theo của điện toán lưới là điện toán theo nhu cầu, trong đó các tài nguyên máy tính được đo đạc như các dịch vụ. Điện toán theo nhu cầu đã giới thiệu ý tưởng về việc cung cấp động các tài nguyên điện toán. Điện toán đám mây được định nghĩa như là sự cung cấp các ứng dụng như các dịch vụ thông qua Internet, và các phần mềm và cơ sở hạ tầng phần cứng trong các trung tâm dữ liệu cung cấp các dịch vụ đó dùng mô hình kinh doanh giống như điện toán theo nhu cầu. Việc đo đạc các dịch vụ để hỗ trợ cho mô hình kinh doanh thanh toán theo nhu cầu là thích hợp với các phần mềm ứng dụng (SaaS), nền tảng (PaaS), và cơ sở hạ tầng (IaaS). 9 Thêm vào đó, điện toán đám mây tận dụng các công nghệ đang phát triển như Web 2.0 cho các dịch vụ ứng dụng, và ảo hóa cho việc cung cấp các tài nguyên động. So sánh 6 giai đoạn phát triển của điện toán, có vẻ như điện toán đám mây là một sự quay trở lại với mô hình điện toán máy tính lớn ban đầu. Tuy nhiên, hai mô hình này có vài điểm khác biệt quan trọng. Điện toán máy vi tính lớn chỉ cho phép một sức mạnh tính toán giới hạn, trong khi điện toán đám mây cung cấp một sức mạnh và dung lượng gần như vô hạn. Thêm vào đó, trong điện toán máy tính lớn các thiết bị đầu cuối chỉ là những thiết bị truy cập, trong khi với điện toán đám mây các máy tính cá nhân có thể cung cấp khả năng điện toán và bộ đệm. Dẫu cho, ngày nay điện toán đám mây ở mọi nơi được nhắc đến và hưởng ứng thì tính toán lưới vẫn có chỗ đứng trong các phòng nghiên cứu các dự án của các tổ chức cần đến hỗ trợ tính toán lớn dựa trên nền tảng hạ tầng có sẵn với một cộng đồng tài nguyên tự nguyện. “Grid needs Cloud to prosper; Cloud needs Grid to scale” “Tính toán lưới cần Cloud để phát triển, còn Cloud cần lưới để mở rộng” Ian Foster. [4] [5] Một số dự án lưới vẫn tiếp tục được quan tâm và triển khai. EGI = European Grid Infrastructure: Các tài nguyên được sử dụng bởi hơn 13.000 nhà khoa học trên khắp châu Âu [6] StratusLab: Gia tăng hạ tầng điện toán lưới với công nghệ ảo hóa và đám mây [10] Initiative for Globus in Europe (IGE) : Mục tiêu chính là tiếp tục hỗ trợ cơ sở hạ tầng máy tính châu Âu, để phục vụ như một điểm trung tâm liên lạc tại châu Âu cho Globus, vào hướng Globus phát triển phù hợp với các yêu cầu của người dùng châu Âu và tăng cường ảnh hưởng của các nhà phát triển châu Âu trong Liên minh Globus. … 1.1.2 Vai trò của tính toán lưới trong nghiên cứu khoa học (e-science) Mục này đề cập đến vai trò của Tính toán lưới và lý giải vì sao Tính toán lưới là mô hình lý tưởng cho các bài toán thuộc nhiều ngành khoa học khác nhau. Chúng ta sẽ lấy ví dụ là bài toán mô phỏng sự đụng độ của các lỗ đen để nói lên những đặc tính thường có trong những bài toán thuộc nhiều lĩnh vực khác nhau và sự phù hơp khi dùng Tính toán lưới để giải quyết những bài toán này. Một số vấn đề có thể còn đang ở dạng nghiên cứu phát triển nhưng chúng ta tin rằng chúng sẽ được hiện thực trong một tường lai gần. 4 vấn đề thường thấy trong các bài toán khoa học mà cụ thể là bài toán trong vật lý thiên thể, mô phỏng sự đụng độ của các lỗ đen  Chia sẻ tài nguyên bên trong tổ chức ảo (Virtual Organization) 10    Giao tiếp với những công việc đang được thực thi trên hệ thống lưới Tính toán phân tán Quản lý dữ liệu 1.1.2.1 Chia sẻ tài nguyên bên trong tổ chức ảo (Virtual Organization) Một tổ chức ảo là một tập hợp các tài nguyên được quản lý một cách độc lập, những được hợp tác, tập hợp lại để cộng đồng dùng nó giải quyết một mục tiêu chung. Việc tổ chức và sử dụng tài nguyên một cách hiệu quả rất quan trọng đối với cộng đồng người sử dụng này. Kịch bản sử dụng đơn giản và quan trọng nhất trong tính toán khoa học dựa trên Grid là khám phá tài nguyên (resource discovery) và nhờ hệ thống lưới thực thi một công việc nào đó (job submission). Một nhà khoa học ở Châu Âu đã chuẩn bị một file thực thi và các tham số đầu vào để giả lập việc trộn lẫn vào nhau giữa các lỗ đen,việc giả lập sử dụng nhiều tài nguyên phân tán ở khắp nơi trên thế giới, thông thường việc truy xuất tài nguyên ở mỗi nơi cần có một tài khoản, mật khẩu, hàng đợi, hệ thống tệp… khác nhau.Điều này gây khó khăn rất lớn cho cho các nhà khoa học có thể tiến hành các thí nghiệm, các mô phỏng với quy mô lớn. Ngay cả việc đơn giản là chọn một nơi nào đó để thực thi quá trình mô phỏng cũng đã rất phức tạp. Nhưng với công nghệ Grid, quá trình truy xuất những tài nguyên này sẽ trở nên đơn giản. Việc xác nhận dựa trên chứng chỉ (certificate) cho phép người sử dụng truy xuất tất cả hệ thống trong tổ chức ảo với chỉ một lần đăng nhập, định danh và mật khẩu khi đăng nhập vào tổ chức ảo sẽ được ánh xạ vào tài khoản của người sử dụng đó. Đồng thời mô hình Grid cũng sẽ loại bỏ đi những đặc tính riêng của từng tài nguyên, tạo ra giao diện chung cho hệ thống tệp, cách nén dữ liệu… và do đó cho phép người sử dụng dùng các câu lệnh truy xuất thống nhất cho tất cả các tài nguyên. Việc xây dựng những cổng thông tin dựa trên web ( web-based portal) cho phép người dùng truy xuất dễ dàng và thân thiện tất cả tài nguyên trong một tổ chức ảo. Sau khi đăng nhập vào, người dùng về nguyên tắc có thể nhìn thấy được tất cả các tài nguyên sẵn có và có thể cho chạy (submit) một công việc trên tài nguyên nào. Đôi khi người dùng chỉ quan tâm đưa công việc của mình lên lưới để chạy (submit), còn việc phân tán tài nguyên để cho hệ thống tự động. 11 Hình 1-2. Mối quan hệ chia sẻ bên trong tổ chức ảo 1.1.2.2 Giao tiếp với những công việc đang được thực thi trên hệ thống lưới Trước đây, một nhà khoa học khi muốn chạy một ứng dụng mô phỏng lớn thì trước tiên phải thông báo và chuyển công việc vào một hệ thống trên một máy ở xa và sau đó cứ một khoảng thời gian lại log in vào máy từ xa đó để kiểm tra trạng thái của công viêc. Công việc đó có thể vẫn còn trong hàng đợi hoặc có thể công việc đó đang được thực thi và cũng thường xuyên xảy ra trường hợp công việc đó đã bị kết thức vì một lý do nào đó. Có những trường hợp công việc nằm trong hàng đợi cả ngày, nhưng khi được thực thi thì thất bại chỉ vì một lỗi đơn giản trong quá trình khởi động hay có những công việc đã chạy cả 100.000 giờ của CPU nhưng cuối cùng lại trả ra kết quả sai chỉ vì tham số đầu vào sai. Những trường hợp như thế đã làm nảy sinh nhu cầu cần phải phát triển cơ chế giao tiếp , quản lý và chuyển hướng những công việc tốt hơn, đòi hỏi độ phức tạp hơn. Cactus là một ứng dụng Grid cho phép người dùng thông qua trình duyệt web có thể giao tiếp với các công việc đang thực thi. Cactus Webserver Thorn HTTPD là một máy chủ web cho phép thể hiện tất cả thông tin của một công việc đang thực thi bao gồm chương trình con đang chạy, phiên bản, thời gian ước lượng hoàn tất, file dữ liệu nào được ghi …..Các tham số được khai báo steerable có thể được thay đổi thông qua giao diện web , tần suất I/O , variable output, downsampling… cũng có thể được thay đổi nếu cần, cho phép người sử dụng sửa lại chương trình mà không phải bắt đầu lại. Khi một công việc bắt đầu, URL của nó được phát tán đến một cổng thông tin (portal), cổng thông tin này sẽ 12 thông báo đến một nhóm người cùng hợp tác trong công việc này thông qua email hoặc tin nhắn SMS cùng với những thông tin để họ có thể truy xuất quá trình mô phỏng từ trình duyệt. Những sự kiện mô phỏng quan trọng, như việc trộn lẫn hai lỗ đen có thể được lập trình để kích hoạt thông báo đến một người sử dụng nào đó hoặc là một nhóm người cùng cộng tác trong việc giả lập đó. Cổng thông tin vì vậy trở thành công cụ tổ chức cho khoa học tính toán hợp tác. Công việc có thể được phân loại theo trạng thái, theo chủ đề hoặc theo sự cộng tác. Đường liên kết (hyperlink) đến dữ liệu sinh ra từ quá trình giả lập. Hình 1-3. Giao diện cổng web. 13 Hình 1-4. Cổng thông tin hỗ trợ dich vụ tính toán lưới Những công nghệ này đang được sử dụng rất nhiều trong các dự án khoa học. 1.1.2.3 Tính toán phân tán Chúng ta sẽ mô tả các phương thức khác nhau cho một ứng dụng phân tán thông qua 4 khái niệm liên quan đến việc sử dụng tài nguyên :  task farming  metacomputing  migration  spawning Task farming là bước tiếp cận mà trong đó những task độc lập nhau hoặc là kết nối lỏng lẻo sẽ thực thi trên những tài nguyên rải rác trong tổ chức ảo. Những tasks này đòi hỏi rất ít hoặc thậm chí không có sự giao tiếp dữ liệu giữa các task và thường trả về dữ liệu rất ít. Task farming có thể được dùng cho việc nghiên cứu tìm ra các tham số phù hợp cho một bài toán, các tham số này thay đổi với rất nhiều khả năng khác nhau để tìm ra một giải pháp hứa hẹn nhất trước khi đi sâu vào nghiên cứu. Ví dụ việc nghiên cứu hiện tượng lực hấp dẫn hình thành nên lỗ đen, việc nghiên cứu này đòi hỏi phải biết một cách chính xác biên độ của sóng lúc ban đầu. Một thay đổi nhỏ trên giá trị biên độ này sẽ quyết định sóng bị hút bởi lỗ đen hay bị phân tán. Ngoài ra còn rất nhiều ví dụ khác trong khoa học cần 14 tìm những giá trị có độ chính xác tương đối cao. Grid task farming tận dụng công nghệ lưới để khám phá những tài nguyên thích hợp trong một tổ chức ảo, thực thi một tập các task, nhận kết quả trả về, tất cả diễn ra trong một thời gian ngắn Metacomputing là việc phân tán một hoặc nhiều task kết nối chặt đến một số lượng máy rất lớn. Metacomputing có thể được sử dụng để tăng không chỉ khả năng tính toán của hệ thống mà còn tăng tính sẵn có của hệ thống. Ví dụ quá trình tính toán cần 1024 bộ xử lý nhưng không có một máy nào có sẵn chừng đó bộ xử lý, thì có thể dùng 4 máy với 256 bộ xử lý mỗi máy để tính toán. Sự khả thi của metacomputing đã được chứng minh với những ứng dụng thực tế. Ví dụ năm 2001, mô phỏng sự va chạm giữa các lỗ đen sử dụng nhiều máy từ xa, chạy trên những hệ điều hành khác nhau, sử dụng những kỹ thuật có khả năng thích nghi để có thể tự động điều chỉnh những message gửi thông qua môi trường mạng giữa các máy, làm tăng hiệu suất từ 15% đến trên 70% thời gian thực thi việc mô phỏng. Tầng trao đổi message dựa trên Grid cho phép những ứng dụng dựa vào Calcus có thể được chạy mà không cần sự điều chỉnh nào. Những thí nghiệm như thế cho thấy rằng metacomputing dựa trên Grid có thể được chạy với độ hiệu quả cao thậm chí cho những giả lập có tính kết nối cao như phương trình Einstein (đòi hỏi nhiều sự giao tiếp). Khi công nghệ Grid được triển khai đến nhiều phía khác nhau, những khả năng này có thể trở thành chế độ hoạt động bình thường của hệ thống. Migration là việc di chuyển quá trình giả lập từ phía này sang phía khác hoặc có thể là di chuyển process mô phỏng từ máy này sang máy khác. Ví dụ do sự đụng độ làm chậm quá trình mô phỏng hay quá trình mô phỏng cần nhiều bộ nhớ hơn để giải quyết một bài toán đang phát triển, những nhu cầu đó dẫn đến quá trình mô phỏng cần phải di chuyển đến một một tài nguyên khác thích hợp hơn. Việc di chuyển này cần sự hỗ trợ của broker dịch vụ tài nguyên, nếu một tài nguyên mới được tìm thấy phù hợp với yêu cầu, broker dịch vụ sẽ thông báo, để quá trình mô phỏng được chuyển sang môi trường mới. Spawning là một biến dạng của Migration. Trong Spawning, chỉ một phần ứng dụng được di chuyển đến một tài nguyên ở xa. Ví dụ khi mô phỏng sự đụng độ của các lỗ đen, nhiệm vụ phân tích cần xác định vị trí của lỗ đen và tính toán lực hấp dẫn phát ra. Những nhiệm vụ này cần rất nhiều thời gian và có thể không cần phải trả kết quả về cho chương trình giả lập chính hoặc những nhiệm vụ này dễ dàng song song hóa và do đó có thể được di chuyển đến một tài nguyên khác, cho phép tài nguyên chính tập trung trong việc giải quyết vấn đề mô phỏng chính, trong mô phỏng lỗ đen năm 2001, việc mô phỏng được chạy ở Đức nhưng nhiệm vụ phân tích được di chuyển đến tài nguyên ở Châu Âu , Châu Á và Bắc Mỹ. 15 1.1.2.4 Quản lý dữ liệu Một ví dụ cho thấy vấn đề quản lý dữ liệu là cần thiết và quan trọng thế nào đối với việc nghiên cứu khoa học là quá trình mô phỏng 3D trong khoa học. Việc mô phỏng 3D sinh ra một lượng lớn dữ liệu, dữ liệu này phải được phân tích, hiển thị trực quan và lưu trữ cho những lần sử dụng sau. Mỗi một lần giả lập có thể sinh ra hàng trăm file với những định dạng khác nhau, việc khám phá và thao tác trên những file này thì rất phức tạp bởi vì người sử dụng chạy trên những máy tính khác nhau với những hệ thống tệp , khả năng lưu trữ khác nhau. Đối với ứng dụng lưới, vấn đề quản lý dữ liệu còn khó khăn hơn. Người dùng thậm chí còn không biết quá trình mô phỏng đang chạy trên máy nào hay sự mô phỏng có thể được di chuyển giữa các tài nguyên khác nhau và dữ liệu chứa ở nhiều nơi khác nhau. Thậm chí khi biết được vị trí của file dữ liệu thì cũng không thể di chuyển đến một máy local để thuận tiện cho việc xử lý vì kích thước quá lớn của nó. Mặc dù công nghệ Grid giúp ích rất nhiều cho nhóm các nhà khoa học trong việc thực thi, giám sát và điều chỉnh những mô phỏng này từ xa trong khi những mô phỏng này đang được chạy, những khối lượng dữ liệu khổng lồ được sinh ra từ quá trình mô phỏng không thể gửi tới từng thành phần tham gia cho việc phân tích, thay vì vậy một nhóm các nhà khoa học có thể phải bay từ Berlin sang Mỹ để nhìn thấy và lấy những kết quả này về. GridFTP server là một công cụ cho việc thao tác dữ liệu từ xa đã được sử dụng bởi các nhà thiên văn học. GridFTP server là sự mở rộng của dự án Đức GriKSL. Khi GridFTP server chạy trên hệ thống tệp của máy đang có dữ liệu, nó cho phép file dữ liệu HDF5 được phân tích với hệ thống hiển thị trực quan ở local. Bất kỳ hệ thống hiển thị trực quan nào tích hợp GridFTP client cùng với chương trình đọc file HDF5 đều có thể hiển thị dữ liệu từ xa. Những chương trình đọc file HDF5 có sẵn trong các phần mềm như OpenDX , Amira. Những công cụ này đã giải quyết được vấn đề dữ liệu ở xa, và có thể được sử dụng để tạo cái nhìn trực quan của dữ liệu ở cách xa hàng ngàn km.[2] 16 Hình 1-5. Sử dụng GridFTP để có cái nhìn trực quan kết quả thu được từ sự mô phỏng 2 lỗ đen đụng độ nhau Mục này đã cho ta thấy được vai trò của Tính toán lưới trong khoa học. Mô hình kiến trúc cũng như các giao thức giao tiếp của Tính toán lưới rất phù hợp để giải quyết những bài toán có những vấn đề đặc thù trong nhiều ngành khoa học khác nhau. Điều này cũng có thể dễ dàng giải thích bởi vì Tính toán lưới ra đời từ những yêu cầu cấp thiết trong nghiên cứu khoa học hợp tác. 1.2 Các thách thức của an toàn thông tin trong điện toán đám mây 1.2.1 Đặc trưng Các đặc trưng công nghệ tính toán lưới bao gồm: - Các tài nguyên hết sức đa dạng, không đồng nhất. Tài nguyên ở đây được hiểu theo nghĩa hết sức tổng quát. Đó có thể là các tài nguyên phần cứng: tài nguyên tính toán, tài nguyên lưu trữ, các thiết bị đặc biệt khác...; các tài nguyên phần mềm: các CSDL, các phần mềm đặc biệt và đắt giá...; các đường truyền mạng... Các tài nguyên này có thể rất khác nhau về mặt kiến trúc, giao diện, khả năng xử lý... Việc tạo ra một giao diện thống nhất cho phép khai thác và sử dụng hiệu quả các nguồn tài nguyên này hoàn toàn không dễ dàng. Ban đầu tính toán lưới được đặt ra chủ yếu là để tận dụng các nguồn tài nguyên tính toán nhưng hiện nay mục tiêu của nó đã được mở rộng sang rất nhiều nguồn tài nguyên khác như đã kể trên. - Các tài nguyên không chỉ thuộc về một tổ chức mà thuộc về rất nhiều tổ chức tham gia lưới. Các tổ chức phải tuân thủ một số quy định chung khi tham gia vào lưới còn nhìn chung là hoạt động độc lập tức là các tài nguyên này đều có quyền tự trị. Các tổ chức 17 khác nhau thường có chính sách sử dụng hay cho thuê tài nguyên của họ khác nhau và do vậy cũng gây khó khăn cho việc quản lý. - Các tài nguyên phân tán rộng khắp về mặt địa lý do vậy phải có các cơ chế quản lý phân tán. - Số lượng các tài nguyên được sử dụng đồng thời có thể lớn nhưng không cố định. - Kết nối các mạng đa cấp và phức hợp. 1.2.2 Kiến trúc phân lớp của tính toán lưới Về khía cạnh người sử dụng thì môi trường lưới có thể được chia làm 3 lớp: *Lớp ứng dụng *Lớp giữa *Lớp cơ sở hạ tầng Hình 1-6. Kiến trúc phân lớp của lưới 18 Lớp ứng dụng: Trong môi trường lưới có rất nhiều loại ứng dụng khác nhau có nhu cầu sử dụng tài nguyên của hệ thống tính toán lưới bên dưới, trong đó có những ứng dụng như việc truy xuất dữ liệu qua điện thoại di động, hay các máy trạm cần tài nguyên cho việc tính toán của nó, hay là các hệ thống mô phỏng cần một lượng rất lớn dữ liệu để trực quan hóa các kết quả thí nghiệm. Lớp giữa (middleware): Khi đó lớp giữa (grid middleware) chính là lớp đóng vai trò như là 1 bức tường mỏng bao bọc lấy lớp cơ sở hạ tầng. Nó có khả năng che dấu mọi sự phức hợp bên dưới của lớp cơ sở hạ tầng, nhưng lại cung cấp cho lớp ứng dụng những giao tiếp được chuẩn hóa nhằm làm đơn giản hóa cho các user có khả năng sử dụng dễ dàng hơn. Lớp cơ sở hạ tầng: Bao gồm các hệ thống siêu máy tính, clusters, các hệ thống lưu trữ dữ liệu, các phòng thí nghiệm, hệ thống mạng internet toàn cầu, … Các hệ thống cơ sở hạ tầng này cung cấp khả năng tính toán rất lớn, có khả năng lưu trữ lượng dữ liệu vô cùng lớn, chẳng hạn như dữ liệu thu được từ việc thu thập dữ liệu khi theo dõi chuyển động của các vì sao,… 1.2.3 Thách thức an toàn thông tin Một số vấn đề tồn tại trong tính toán lưới: Thiếu cơ chế kiểm soát linh hoạt dựa trên những chính sách linh hoạt Thiếu chính sách kiểm soát truy cập bên trong từn miền Thiếu giao tiếp nhóm an toàn Thiếu cơ chế ủy quyền để hỗ trợ khả năng mở rộng số lượng lớn tài nguyên và người dùng. Từ đặc trưng của tính toán lưới, và mô hình phân lớp của lưới ở trên, trong chương tiếp theo, tôi tập trung giải quyết vấn đề an toàn thông tin trong tính toán lưới ở trên bằng cách: Tìm hiểu các middleware có sẵn, xây dựng lưới tính toán đảm bảo yêu cầu cung cấp các tính năng bảo mật thực hiện các nhiệm vụ: o Cấp quyền truy cập cho thuê bao có giấy chứng nhận o Kiểm tra tính hợp lệ và hạn dùng giấy chứng nhận 19 o Bảo vệ các nút với những truy cập trái phép o Xác minh các thuê bao hợp pháp sử dụng một cách chính xác các nguồn tài nguyên cho phép o Cấp toàn vẹn dữ liệu Ở lớp cơ sở hạ tầng, xây dựng chính sách an toàn thông tin phù hợp cơ chế phòng thủ theo chiều sâu. Chương 3, tôi đề cập kỹ hơn đến giải pháp kiểm soát truyền thông trong tính toán lưới sử dụng bức tường lửa mã nguồn mở Iptables 20 Chương 2 - Giải pháp bảo mật 2.1 Middleware 2.1.3 Định nghĩa Grid middleware là phần mềm hệ thống nằm giữa lớp ứng dụng và hệ điều hành. Nó có khả năng: Cung cấp các dịch vụ cho các ứng dụng. Bao gồm các dịch vụ về khám phá tài nguyên(discovery), lưu trữ (storage), thực thi (execution), thông tin (information), theo dõi tài nguyên (resource monitoring), kiểm lỗi và phục hồi (failure detector and recovery),… Đây là các dịch vụ cốt lõi và thiết yếu nhất để làm sao user có thể tham gia vào môi trường lưới. Chẳng hạn, khi 1 user muốn sử dụng 1 tài nguyên tính toán mà đã được mô tả trước, thì dịch vụ khám phá tài nguyên sẽ dò tìm ra những loại tài nguyên thích hợp cho user, sau đó sẽ cấp phát cho user ứng với quyền hạn mà user đó có thông qua các dịch vụ về bảo mật (security). Sau khi được cấp phát, các dịch vụ theo dõi về thông tin tài nguyên, theo dõi việc thực thi của job, lập lịch job (scheduling) sao cho hợp lý,… Như vậy, ứng với mỗi quá trình đáp ứng yêu cầu của user, có rất nhiều dịch vụ tham gia vào quá trình này. Che dấu sự phức hợp (heterogeneous) của môi trường lưới: Bởi vì cơ sở hạ tầng của môi trường lưới là phức hợp, đó là sự tham gia của nhiều tổ chức, nhiều hệ thống máy tính khác nhau, mỗi hệ thống lại chạy trên nền hệ điều hành khác nhau, như Unix, Linux, Sun Solaris, Mac OS,… Nhưng đối với cái nhìn của người dùng, môi trường lưới dưới vỏ bọc của Grid middleware, đó là 1 hệ thống tính toán lớn trong suốt (transparent). Khi user yêu cầu thực thi 1 công việc nào đó, user không cần quan tâm đến việc thực thi công việc của mình nằm trên những tài nguyên nào, ở xa hay gần, nằm ở đâu,… quan trọng là kết quả mà người dùng nhận được, thời gian đáp ứng,… Cung cấp các giao tiếp đã được chuẩn hóa cho ứng dụng. Mục đích của Grid middleware: Có 3 mục đích: Xây dựng các giao tiếp, và các giao thức có tính mục đích chung, tính mở và tính chuẩn. Bởi vì hệ thống lưới được xây dưng trên những giao tiếp và giao thức với rất nhiều mục đích khác nhau. Những giao tiếp và giao thức này điều chỉ ra được các kết quả cơ bản, mang tính nền tảng như về việc xác nhận, xác thực, khám phá tài nguyên, truy xuất tài nguyên. Do đó, việc xây dựng các giao tiếp, giao thức chuẩn và mở là rất quan trọng, nếu không, chúng ta chỉ xây dựng được những ứng dụng mang tính đặc thù mà thôi. Định nghĩa các giao thức chuẩn: Nó định nghĩa nội dung và chuỗi các sự kiện trao đổi thông điệp sử dụng các thao tác yêu cầu từ xa. Điều này rất quan trọng và cần thiết để thực hiện tính interoperability (nghĩa là khả năng mà hai thực thể khác nhau có
- Xem thêm -