xTER SafeContainer
xTER SafeContainer là một công nghệ do Linux điều khiển để chứa một phần mềm phức tạp được định cấu hình sẵn, chẳng hạn như máy chủ phương tiện hoặc cơ sở dữ liệu hoặc AI, với khả năng bảo vệ mạnh mẽ chống lại truy cập trái phép hoặc bất kỳ cuộc tấn công từ bên ngoài nào. Nó đã được phát triển liên tục từ năm 2008 bởi một nhóm nhỏ các nhà phát triển, có trụ sở tại Moscow, Nga.
Trường hợp sớm
Vào năm 2008, khởi động PXE của hệ thống Linux được cấu hình sẵn với phần mềm kết xuất đã được sử dụng thành công cho các máy trạm không đĩa được xếp chồng lên nhau trong một "renderfarm". Bốn nút "nô lệ" đã khởi động cùng một hình ảnh và sau đó chạy trình kết xuất trong một cụm được điều khiển từ nút "chính".
Mười năm sau, kế hoạch tương tự lại được triển khai, lần này là để tạo thành một cụm "phân đoạn" của cơ sở dữ liệu PostgreSQL. Một lần nữa, có các nút "nô lệ" đã khởi động cùng một hình ảnh thông qua PXE từ nút "chính" với giao thức tftpboot. Kỹ thuật này yêu cầu chuẩn bị một Linux tùy chỉnh được định cấu hình trước, hiện được coi là bản phát hành sớm với kiến trúc xTER hiện tại, mặc dù chưa được gắn thẻ. Rõ ràng là để giảm thiểu tài nguyên, mỗi nút phải chạy hoàn toàn trong RAM, trong khi chỉ các phân đoạn dữ liệu được lưu trên đĩa. Cuối năm đó, nguồn khởi động được đổi thành iPXE và HTTPS, nhằm mục đích bảo mật cao hơn.
Đặt tên
Biến thể đầu tiên của từ viết tắt "xETR" là để biểu thị một "giải pháp kỹ thuật tao nhã" với chữ "R" là viết tắt của "reshenye" (có nghĩa là "giải pháp" trong tiếng Nga) và chữ "x" đầu tiên như một lời tri ân dành cho tất cả các quốc gia trên thế giới. * các hệ điều hành giống như x. Từ viết tắt này tồn tại cho đến giữa năm 2020 và sau đó được đổi thành cách viết "xTER" hiện tại.
Vào đầu năm 2019, một nỗ lực đóng gói một hộp chứa tối thiểu với công cụ AI bên trong để hoạt động hoàn toàn bằng RAM đã được thực hiện. Đến tháng 4, phiên bản 1.0.4 xTER với mô-đun phát hiện đối tượng TensorFlow dành cho webcam USB đính kèm đã được phát hành. Hai luồng video được AI phân tích trong thời gian thực và các sự kiện được phân loại sẽ tìm đường vào nhật ký sự kiện, với một số sự kiện được thông báo kịp thời qua SMS hoặc email. Đồng thời, một giao diện dựa trên web đơn giản đã được viết bằng Perl với các bảng điều khiển dành cho nhật ký sự kiện video, lựa chọn máy ảnh, v.v. Đến tháng 7, rõ ràng là đã có hai hoặc ba cách để phát triển thêm. Sau đó, người ta đã quyết định gắn thẻ chúng thành các "phiên bản" xTER riêng biệt, vì vậy "Phiên bản gia đình" đầu tiên, sau đó là "Phiên bản Office" và sau đó là "Phiên bản bộ định tuyến" tối giản đã được thêm vào phạm vi. Mặc dù các phiên bản này chia sẻ cùng một phiên bản xTER (trước ngày 1 tháng 8, v1.12), chúng đã được đóng gói sẵn để hoạt động trong môi trường cụ thể và được cho là chạy trên các thiết bị kim loại đơn giản như Intel NUC với RAM 4-8-16 Gb , điều đó đủ để giữ HĐH đang chạy và giữ một số dung lượng cho các tệp tạm thời. "Phiên bản bộ định tuyến" đã được nén để phù hợp với RAM 2GB, giống như trên một máy tính xách tay lỗi thời, để chỉ đẩy nội dung đã lọc tới ứng dụng khách WiFi, thiết lập bộ lọc, lưu nhật ký và hiển thị chúng trong bảng quản trị. Đến tháng 11, phiên bản xTER 1.16 được phát hành, phiên bản đầu tiên có mã hóa (xem Mã hóa hai cấp). Vào cuối năm đó, 1.17 đã được phát hành với sự hỗ trợ của Qemu nhằm mục đích chạy Windows bên trong xTER đang chạy. Các vấn đề an toàn với Windows được giải quyết bằng mã hóa hai cấp, với các khóa mã hóa riêng biệt do xTER và máy khách nắm giữ.
Phiên bản 1.18 đến 1.22 đã được phát hành trong tất cả các Phiên bản, bao gồm Trang chủ, Văn phòng và Bộ định tuyến [1]. Đến tháng 11, việc chuyển Phiên bản Home sang VirtualBox đã cho phép chạy nó trên các máy chủ Windows, điều này giúp chạy xTER lần đầu tiên hoặc dưới dạng thử nghiệm dễ dàng hơn nhiều.
Kurento Media Server (KMS) đã được đóng gói dưới dạng Phiên bản KMS riêng biệt và cũng là một phần của Phiên bản Office nơi nó được sử dụng cho thư video. KMS là một nền tảng phương tiện mạnh mẽ với các thiết lập phức tạp đòi hỏi phải có cấu hình kỹ lưỡng ở cấp độ chuyên gia [2]. Ngược lại, xTER KMS Edition có một máy chủ Kurento được cấu hình sẵn với các điều khiển đơn giản trong giao diện của quản trị viên. Mục tiêu chính của Phiên bản KMS là triển khai các nút của mạng toàn cầu để trò chuyện video và âm thanh miễn phí (dự án Room-House). Trang web Hệ sinh thái xTER [3] đã được quảng bá cho các cơ hội kinh doanh khả thi. Phiên bản phát hành xTER mới nhất kể từ tháng 11 là v1.27.
khởi động hệ thống
SafeContainer cung cấp, giải nén và chạy phần mềm đóng gói của nó trên một thiết bị kim loại trần hoặc trên một máy ảo. Quá trình này có ba giai đoạn: giai đoạn A, bộ tải khởi động xTER EFI cần thiết được tải xuống từ xTER github và được sử dụng để khởi động thiết bị/VM mà máy khách có toàn quyền truy cập; giai đoạn B, hình ảnh hệ điều hành và nhân được tải xuống từ kho xTER và được giải nén trong RAM của thiết bị/VM; giai đoạn C, khi Hệ điều hành được thiết lập và chạy, và phần mềm được chỉ định khởi động sau Hệ điều hành, do máy khách tự động hoặc thủ công trong giao diện web của quản trị viên xTER.
mã hóa hai cấp
Để bảo vệ nội dung SafeContainer khỏi bị truy cập trái phép, sơ đồ mã hóa hai cấp đã được sử dụng. Ở cấp độ đầu tiên, toàn bộ hệ thống tệp "A" được tạo trên một phân vùng được mã hóa bằng "Cipher A". Ở cấp độ thứ hai, một phân vùng mới được tạo từ một tệp trên hệ thống tệp "A" và được mã hóa bằng một "Cipher B" khác. Hệ thống tệp thứ hai "B" theo cách này được bảo vệ kép chống lại các cuộc tấn công như khởi động nguội, tìm kiếm khóa mã hóa phương sai entropy cục bộ[4], v.v. và được chứng minh là không thể phá vỡ bằng các công cụ tin tặc tiêu chuẩn. Ngoài ra, vì hai cấp độ không chia sẻ khóa chung, điều này có thể hữu ích để đảm bảo rằng khi hai bên có quyền truy cập vào dữ liệu trên hệ thống tệp "B", không bên nào có thể sở hữu hoàn toàn dữ liệu. Nghĩa là, nếu một trong các khóa bị xâm phạm hoặc bị đánh cắp bởi kẻ xâm nhập, thì dữ liệu sẽ không dễ dàng truy cập được vì có khóa thứ hai chưa bị đánh cắp hoặc bị xâm phạm. Và vì hệ thống tệp "A" không tồn tại trên đĩa và được giữ hoàn toàn trong RAM, nên thậm chí không dễ dàng lấy dữ liệu được mã hóa để phân tích bằng các công cụ tiêu chuẩn. Các mật mã từ cuộc thi AES đã được nghiên cứu và một số trong số chúng đã được thử nghiệm và chọn để sử dụng làm Mật mã A và B trong xTER.[5]
Dung lượng đĩa
Chỉ có "Phiên bản bộ định tuyến" hoàn toàn không yêu cầu dung lượng ổ đĩa, trong khi các phiên bản khác cần nhiều dung lượng ổ đĩa để lưu trữ cơ sở dữ liệu, nhật ký, tệp phương tiện, v.v. Do đó, khách hàng có thể đính kèm ổ đĩa trên thiết bị hoặc máy ảo của họ trước khi khởi động xTER và chúng có thể được xTER mã hóa hoặc không sau này, tùy thuộc vào yêu cầu khách hàng tùy chỉnh. Các đĩa này được xTER nhận dạng và gắn kết trong quá trình khởi động.
ảo hóa
Mặc dù lần đầu tiên chỉ được sử dụng trên các thiết bị kim loại trần, nhưng dần dần xTER thường được sử dụng làm máy ảo trên bất kỳ máy chủ nào hỗ trợ VirtualBox. Có các yêu cầu đối với RAM tối thiểu, sức mạnh CPU và dung lượng đĩa ảo lưu trữ đi kèm, những yêu cầu này thay đổi theo Phiên bản xTER.[6]