Dữ liệu trong Openstack

Một phần của tài liệu Tìm hiểu openstack và các vấn đề an ninh thông tin (Trang 31 - 35)

2.3.1 Vị trí dữ liệu

Quá trình lấy dữ liệu được mô tả như hình sau đây.

30

Người dùng của Openstack Object Storage sẽ lấy dữ liệu của họ thông qua HTTP Call tới một Server Proxy bởi đưa ra một đường dẫn logic tới một thực thể. Thực thể ở đây có thể là Object, Container hay Account. Một đường dẫn vật lý sẽ bao gồm URL lưu trữ mà người dùng lấy được từ một Server xác thực. Dưới đây là định dạng cho đường dẫn logical của một Object là myObject được lưu trong Container myContainer

https://<PublicURL>:8080/v1/AUTH_e6595be640324be4abf5c4faa6cdc524

/ myContainer/myObject

Server Proxy có nhiệm vụ chuyển đổi đường dẫn logic tới vị trí vật lý nơi mà dữ liệu được nằm trong các Clusters. Để tìm ra nơi trong Cluster dữ liệu sẽ được lưu chúng ra sử dụng Rings[30]. Toàn bộ Cluster được chia làm nhiều các partition và mỗi partition được ánh xạ tới một thiết bị. Thiết bị có thể là ổ đĩa cứng Cluster. Mỗi một partition được nhân lên trong Cluster. Và cấu trúc vịng Ring để tính tốn node nào được sử dụng, Partition nào sẽ lưu dữ liệu.

Một khi Server proxy có được vị trí vật lý của thực thể, nó sẽ liên lạc với các tác vụ tương ứng trong node Storage. Dưới đây là mã cho thấy đường dẫn vật lý của thực thể myObject

https://<STORAGE−NODE−IP>:6000/sdb1/99721/AUTH_e6595be640324 be4abf5c4faa6cdc524/myContainer/myObject

Trong phần trước luận văn phân tích phương thức tính tốn vị trí dữ liệu cho các thực thể Openstack. Dưới đây là thông tin được thu thập thông qua các tài liệu về Rings và mã nguồn. Với mỗi thực thể, dù cho tài khoản của nó, Container hay Object là khác nhau nhưng được tạo với chung một cách sau:

1. Một đường dẫn tới thực thể được tạo bởi sử dụng sự tương quan của tài khoản, Container và Object và được phân tách với dấu “/”. Ví dụ:

Https://PROXY−IP>:8080/v1/AUTH_e6595be640324be4abf5c4faa6cdc524/ myContainer/myObject

31

2. Đường dẫn được tạo ra ở bước 1 sẽ được nới với Hash_Path_Suffix, đó là một giá trị bí mật trong tệp cấu hình.

3. Chức năng mã hóa MD5 sẽ tính tốn với giá trị bên trên.

4. Dựa vào giá trị Hash, số parititon cho một thực thể sẽ được tính tốn bởi sử dụng phép dịch bit.

5. Dựa vào số partition, danh sách các node được tính tốn từ tệp Ring. Mỡi node sẽ có các bản sao chép thực thể chung.

6. Vị trí của thực thể sẽ như sau:

File://node/entity/partition/last_three_symbols_of_- hash/hash

trong đó entity có thể là Accounts, Containers hay Object tùy thuộc vào thực thể được lưu

2.3.2 Sao lưu và phục hồi

CSA chỉ ra rằng sao lưu dữ liệu là một cơ chế cho phép sự ngăn chặn việc mất mát dữ liệu, việc ghi đè không mong muốn và sự phá hủy. Và cũng thông báo người dùng rằng dữ liệu trên mây được sao lưu và có thể phục hồi.

Để ngăn chặn việc mất mát dữ liệu và phá hủy cũng như việc tăng khả năng đáp ứng của dữ liệu, Openstack Object Storage lưu trữ dữ liệu trong các vị trí trên tồn cluster. Một tiến trình riêng cho việc này đó là Replicator được chạy trên node để truyển các bản copy dữ liệu đến các node khác nhau. Có các tiến trình riêng cho việc nhân rộng tài khoản, object và container.

Một vấn đề với Openstack đó là sao lưu và phục hồi không được hỗ trợ. Khi tải lên một object mới có cùng tên với một file đã tải lên trước đó thì các tệp cũ sẽ được xóa bỏ đi cho dù quá trình nhân lên các bản sao để phòng tránh việc mất dữ liệu nhưng khơng thể phịng tránh việc ghi đè dữ liệu.

Với ý kiến của luận văn, chúng ta có thể thêm được việc sao lưu, phụ hồi dữ liệu dễ dàng bằng việc sửa mã nguồn. Như đã biết thì khi tải tệp lên nó sẽ được đánh dấu thêm bằng dấu thời gian. Các dấu thời gian cũ hơn sẽ bị xóa đi khi tệp có dấu thời gian mới. Bằng việc sửa mã nguồn ta có thể cấu hình giữa lại N bản sao của tệp. Ý kiến này đã được thảo luận với các nhà phát triển Openstack [31]. Họ

32

phản hồi rằng sự áp dụng việc này có thể ảnh hướng đến sự phân phới dữ diệu và cần sửa rồi cấu trúc của Ring [31].

2.3.3 Xóa dữ liệu

Liên quan đến điện tốn đám mây thì vấn đề xóa dữ liệu liên quan đến việc phải thận trọng trong việc xóa hết các bản sao của dữ liệu rằng tồn tại trong cluster. Nó có thể sảy ra khi dữ liệu đã xóa đi tất cả tuy nhiên sẽ được phụ hồi lại nếu có lỡi trong quá trình xóa một bản sao nào đó. Để phân tích việc xóa dữ liệu chúng ra sẽ tìm hiểu cách mà dữ liệu được tải lên trước. Bởi tìm hiểu mã nguồn luận văn thấy rằng trước tiên tệp được viết vào một vị trí tạm trên thiết bị lưu trữ, mặc đình là:

/srv/node/sdb1/tmp. Thư mục tạm này là chung cho tất cả khách hàng trong hệ thớng. Sau đó, khi tất cả các tệp được tải lên thì sẽ được di chuyển tới vị trí mới với tên tệp mới bằng với dấu thời gian được chỉ định trong HTTP Header X-Timestamp

Sử dụng dấu thời gian cho tệp sẽ cho phép việc kiểm tra các phiên bản cũ hơn của tệp. Khi tệp được chuyển sang vị trí mới từ thư mục tạm, Openstack sẽ chạy một thuật toán để so sánh giữa các tên tệp và xác định tệp mới nhất. Tệp với dấu thời gian cũ hơn sẽ được xóa đi.

Khi người dùng quyết định xóa tệp đo, Openstack sẽ tạo một tệp rỗng với phần mở rộng là *.ts (tombstone) [9] với dấu thời gian mới nhất. Sau đó một thuật tốn sẽ xóa các tệp có dấu thời gian cũ hơn. Với việc sử dụng Tomstone thì sẽ gây ảnh hướng đến việc nhân các Tomstone đến các node khác.

2.4 Kết Luận

Qua chương này chúng ta đã đi sâu vào từng vấn đề an ninh được chọn để phân tích. Đó là các vấn đề cấp thiết, cần phải được phân tích, kiểm thử ngay trước khi áp dụng Openstack và triển khai. Các vấn đề này cũng được các tài liệu của CSA, ENIST, NIST chỉ ra rằng cần phải có sự quan tâm đặc biệt. Dựa vào sự phân tích hoạt động của vấn đề an ninh đó trong dự án Object Storage, chúng ta có được các vấn đề sẽ được phân tích, kiểm thử trên Openstack. Qua đó nghiên cứu các phương án xử lý, làm giảm thiểu ảnh hưởng và đưa ra các khuyến nghị cho Openstack.

33

Chương 3 Triển khai Openstack, phân tích các vấn đề an ninh

Trong chương này, chúng ta phân tích các vấn đề an ninh thiết yếu ảnh hưởng và đưa ra các khuyến nghị cho Openstack trong việc triển khai. Các vấn đề đó đã được Openstack xử lý ra sao. Có bất ký vấn đề an ninh nào đang tồn tại hay khơng. Cùng với đó nghiên cứu đưa ra các giải pháp nhằm giảm bớt cũng như tránh các mới an ninh đó.

Một phần của tài liệu Tìm hiểu openstack và các vấn đề an ninh thông tin (Trang 31 - 35)

Tải bản đầy đủ (PDF)

(67 trang)