Redis Enterprise 6.2.4 giới thiệu mã hóa internode (internode encryption). Phạm vi mã hóa internode trong Redis Enterprise là đạt được mã hóa TLS cho tất cả kết nối nội bộ cụm Redis giữa các node, bao gồm:
- Tăng cường kết nối control plane để mã hóa sao chép CCS (Cluster Configuration Store).
- Tất cả kết nối đến CCS primary node từ replica node.
- Kết nối data plane để mã hóa sao chép shard giữa các node.
- Tất cả kết nối proxy-to-shard giữa các node.

Redis Enterprise: Cân Nhắc Thiết Kế
Redis Enterprise dùng một số kỹ thuật tối ưu hiệu suất và sẵn sàng. Cụm Redis dùng kiến trúc shared-nothing, tăng độ tin cậy và sẵn sàng, dễ dàng thêm/xóa node. Khi tiếp cận yêu cầu mã hóa tất cả kết nối internode, team tập trung vào sẵn sàng và đơn giản vận hành.
Hệ thống phân tán, luôn bật (always-on) như Redis Enterprise chạy nhiều ứng dụng mission-critical. Yêu cầu đáp ứng tiêu chuẩn cao nhất về sẵn sàng vận hành. Redis Cloud, supported by Redis Enterprise, cung cấp 99.999% availability, nghĩa là chỉ downtime vài phút một năm. Giao tiếp internode cụm quan trọng để duy trì quorum (control path operations) và cho phép sao chép Redis (data path operation). Do đó, bắt buộc phải có high availability để duy trì độ tin cậy giao tiếp internode mọi lúc.
Private Certificate Authority (CA) Là Gì?
Private Certificate Authority (CA) là certificate authority riêng của cụm, hoạt động như CA công khai được tin cậy. Cụm Redis tự tạo root certificate riêng, có thể cấp certificate riêng cho từng node. Certificate riêng do Private CA cấp không được tin cậy công khai. Private CA không bị expose ra ngoài cụm. Private CA không chia sẻ giữa các cụm Redis, hoặc với bất kỳ client hay dịch vụ bên ngoài nào. Certificate do Private CA ký (end-entity certificates) độc quyền cho node được cấp.
Private CA trong Redis Enterprise cung cấp cơ chế tự xoay vòng (self-rotation) liền mạch. Xoay vòng certificate sẽ tự động thực hiện trước khi hết hạn. Xoay vòng certificate cũng có thể thực hiện theo yêu cầu qua REST API. Cảnh báo (alerting) cũng được cung cấp cho giám sát bởi team ứng dụng, database, và bảo mật. Private CA loại bỏ phụ thuộc vào sẵn sàng của CA bên ngoài cho xoay vòng certificate, loại bỏ điểm lỗi tiềm ẩn và cải thiện tổng thể sẵn sàng của cụm.
Redis Enterprise đạt được điều này thông qua việc dùng Private Certificate Authority (CA) quản lý certificate cần thiết cho internode encryption. Khách hàng thường có các mối quan tâm chính sau liên quan đến dùng Private CA.
Mối Quan Tâm Của Khách Hàng:
- Không cho phép self-signed certificate hoặc Private CA trong môi trường của chúng tôi.
- Private CA không được tin cậy công khai và do đó không thể thiết lập niềm tin cho giao tiếp bên ngoài.
- Private CA thường không được bảo vệ đầy đủ chống lại sự xâm phạm (compromise).
Mối quan tâm thứ nhất thực sự không phải là mối quan tâm bảo mật. Đây là yêu cầu tuân thủ (compliance). Nhiều tổ chức viết chính sách bao quát cấm self-signed certificate hoàn toàn mà không xem xét trường hợp hợp lệ nơi self-signed certificate là lựa chọn tốt nhất. Yêu cầu này hợp lý cho nhiều trường hợp, nhưng không phải tất cả, và khiến các tổ chức đó yêu cầu quy trình sâu để cấp ngoại lệ khi chính sách bao quát không phù hợp. Ví dụ: Redis Enterprise internode encryption. Trong ví dụ cụ thể này, Private CA phục vụ mục đích cụ thể.
Trước hết, định nghĩa self-signed certificate. Self-signed certificate là certificate không được ký bởi CA thứ ba công khai tin cậy. Loại certificate này được tạo, cấp, và ký bởi tổ chức chịu trách nhiệm cho website hoặc ứng dụng certificate được cấp cho. Certificate này miễn phí cấp và dùng cùng cipher với certificate do CA thứ ba tin cậy cấp.
Bạn có thể tự hỏi: "Nếu tổ chức không cho dùng self-signed certificate, lựa chọn thay thế là gì?" Lựa chọn điển hình là dùng certificate do CA thứ ba tin cậy cấp. Tổ chức có thể mua certificate từ nhiều CA thứ ba tin cậy khác nhau và cấp cho website/ứng dụng. Certificate do CA thứ ba tin cậy cấp tương tự self-signed certificate về mặt bảo mật.
Câu hỏi tiếp theo: Có khác biệt gì giữa self-signed certificate và certificate do CA thứ ba tin cậy cấp? Mỗi certificate hỗ trợ cùng cipher. Mỗi certificate bao gồm root, intermediate, và leaf certificate. Mỗi certificate cũng có thể hết hạn hoặc thu hồi khi cần. Sự khác biệt duy nhất là khác biệt chức năng (functional difference) giữa self-signed certificate và certificate do CA thứ ba tin cậy cấp. Chức năng đó là niềm tin (trust). CA thứ ba tin cậy có thể cấp certificate dùng để thiết lập niềm tin giữa hai thực thể không liên quan.
Khi nào cần niềm tin? Niềm tin là phần bắt buộc của giải pháp khi hai thực thể không liên quan giao tiếp. Ví dụ tốt: giao tiếp giữa trình duyệt web và ứng dụng web. Dùng certificate do CA thứ ba tin cậy cấp cho phép giao tiếp mã hóa nhưng cũng cho trình duyệt biết ứng dụng web chính xác là מי他们呈现的样子。结果,浏览器会提示用户是否信任该Web应用并想要继续通信。
Khi nào không cần niềm tin? Niềm tin không phải phần bắt buộc khi hai thực thể liên quan giao tiếp. Redis Enterprise internode encryption là ví dụ tốt của loại giao tiếp này. Redis Enterprise bao gồm một cụm, và một cụm đơn có thể chứa nhiều node. Có thể có database đơn hoặc nhiều trên một node. Vì mỗi node thuộc cùng một cụm, không cần bên thứ ba thiết lập niềm tin. Mỗi node đã tin cậy mọi node khác vì chúng thuộc cùng một cụm.
Giải Pháp Redis Enterprise:
Redis Enterprise giảm thiểu mối quan tâm tuân thủ và bảo mật này vì certificate do Private CA tạo chỉ dùng bên trong cụm. Vì mỗi node đều được biết và tin cậy bởi tất cả node khác trong cùng cụm, CA thứ ba tin cậy không thêm giá trị gì và không cần thiết để thiết lập niềm tin trong cụm Redis.