Quay lại danh sách
Tin tức công nghệ

Xây dựng Private 'Cloudflare Access' với OpenZiti và VPS: Kiến trúc bảo mật Zero Trust tuyệt đối cho Doanh nghiệp

27 tháng 5, 2026

Giới thiệu: Thách thức bảo mật trong kỷ nguyên làm việc từ xa

Trong kỷ nguyên số hóa và xu hướng làm việc linh hoạt (remote/hybrid work), việc bảo vệ các tài nguyên nội bộ của doanh nghiệp như nền tảng CRM, ERP, Git nội bộ hay môi trường Staging trở nên phức tạp hơn bao giờ hết. Mô hình VPN truyền thống (như OpenVPN hoặc WireGuard) dù phổ biến nhưng bắt đầu bộc lộ những điểm yếu chí mạng về bảo mật: một khi kẻ tấn công xâm nhập được vào mạng VPN, chúng có thể quét toàn bộ hạ tầng bên trong (lateral movement).

Để giải quyết vấn đề này, kiến trúc Zero Trust (Không bao giờ tin tưởng, luôn luôn xác minh) đã ra đời. Cloudflare Access (một phần của Cloudflare Zero Trust) là giải pháp hàng đầu hiện nay giúp ẩn các ứng dụng phía sau một lớp xác thực mạnh mẽ. Tuy nhiên, việc phụ thuộc hoàn toàn vào bên thứ ba (Third-party) làm dấy lên những lo ngại về chi phí khi quy mô nhân sự tăng lên, cũng như vấn đề quyền riêng tư dữ liệu (Data Privacy).

Bài viết này sẽ hướng dẫn bạn cách xây dựng một hệ thống Private "Cloudflare Access" của riêng mình bằng cách kết hợp OpenZiti – nền tảng mạng Zero Trust mã nguồn mở mạnh mẽ nhất hiện nay – và một máy chủ ảo VPS (Virtual Private Server) với chi phí tối ưu.

---

Kiến trúc Zero Trust của OpenZiti vs. Cloudflare Access

Về cơ bản, Cloudflare Access hoạt động dựa trên mô hình reverse proxy và mạng lưới Edge Network của Cloudflare. Khi người dùng truy cập ứng dụng, Cloudflare sẽ chặn yêu cầu, xác thực danh tính rồi mới chuyển tiếp lưu lượng qua một tunnel (Cloudflare Tunnel) về máy chủ của bạn.

OpenZiti đưa khái niệm này lên một tầm cao mới bằng cách can thiệp vào tầng ứng dụng (Application-Embedded) hoặc sử dụng các Agent thông minh (Tunnelers). Thay vì chỉ bảo mật ở tầng mạng hay tầng HTTP, OpenZiti tạo ra một mạng lưới ảo dạng lưới (Overlay Network) có những đặc tính vượt trội:

  • Dark Infrastructure (Hạ tầng ẩn danh): Các ứng dụng nội bộ của bạn hoàn toàn không cần mở bất kỳ cổng (port) nào ra Internet. Ngay cả IP công khai của VPS cũng có thể cấu hình chặn toàn bộ kết nối inbound thông thường.
  • Xác thực đa nhân tố dựa trên phần cứng: Thiết bị muốn tham gia vào mạng lưới OpenZiti bắt buộc phải có chứng chỉ mã hóa (X.509 Certificate) được cấp phát riêng.
  • Kiểm soát quyền truy cập siêu nhỏ (Micro-segmentation): Bạn có thể phân quyền chi tiết đến mức user A chỉ được thấy service X, hoàn toàn không biết đến sự tồn tại của service Y trên cùng một máy chủ.
---

Chuẩn bị hạ tầng trước khi triển khai

Để tự vận hành hệ thống này, bạn cần chuẩn bị các thành phần cơ bản sau:

  1. Một máy chủ VPS (Ubuntu Server 22.04 LTS hoặc mới hơn): Cấu hình tối thiểu khuyến nghị là 2 vCPU, 4GB RAM để đảm bảo tính ổn định khi chạy OpenZiti Controller và Router. Bạn có thể thuê từ các nhà cung cấp như DigitalOcean, Linode, AWS hoặc các nhà cung cấp nội địa.
  2. Một tên miền (Domain Name): Dùng để cấu hình SSL và định tuyến cho OpenZiti Controller (ví dụ: ziti.yourdomain.com).
  3. Các ứng dụng cần bảo vệ: Các dịch vụ web, SSH, hoặc cơ sở dữ liệu đang chạy trong mạng nội bộ hoặc trên một VPS khác cần được bảo mật.
---

Hướng dẫn từng bước xây dựng hệ thống

Bước 1: Cài đặt OpenZiti Controller trên VPS

OpenZiti cung cấp một kịch bản cài đặt nhanh (Quickstart) rất phù hợp cho môi trường VPS độc lập. Hãy kết nối SSH vào VPS của bạn và thực hiện các lệnh sau để tải và thiết lập biến môi trường:

source /dev/stdin <<>(curl -s [https://get.openziti.io/quickstart/install.bash](https://get.openziti.io/quickstart/install.bash))

Quá trình này sẽ thiết lập Ziti Controller (trung tâm điều khiển, quản lý danh tính và chính sách) và một Ziti Edge Router (thành phần định tuyến lưu lượng mã hóa) ngay trên VPS của bạn. Đảm bảo rằng bạn đã mở các port cần thiết cho OpenZiti trong tường lửa của VPS (mặc định là port 8441 và 8442).

Bước 2: Cấu hình Danh tính (Identities) và Phân quyền

Sau khi cài đặt thành công, bạn sẽ truy cập vào giao diện quản trị CLI hoặc cài đặt Ziti Console (ZAC) trực quan để bắt đầu tạo các thực thể:

  • Tạo Identity cho người dùng (Clients): Ví dụ: user-developer-01. Hệ thống sẽ xuất ra một file mã hóa .jwt. Người dùng sẽ dùng file này để kích hoạt trên ứng dụng OpenZiti Mobile hoặc Desktop Tunneler.
  • Tạo Identity cho ứng dụng (Endpoints): Cài đặt một Ziti Edge Tunneler trên máy chủ chứa ứng dụng nội bộ của bạn để nó có thể kết nối "outbound" lên mạng lưới OpenZiti.

Bước 3: Định nghĩa Dịch vụ (Services) và Chính sách (Policies)

Đây là nơi phép màu Zero Trust thực sự diễn ra. Bạn cần định nghĩa dịch vụ nội bộ của mình trong OpenZiti:

Ví dụ: Bạn muốn bảo vệ một trang Dashboard nội bộ đang chạy tại port 8080 của một máy chủ trong văn phòng. Bạn cấu hình OpenZiti hiểu rằng: Dịch vụ "Web-Dashboard" sẽ ánh xạ đến địa chỉ localhost:8080 tại Endpoint văn phòng.

Sau đó, tạo Service Policy để cho phép cụ thể danh tính user-developer-01 có quyền "Dial" (kết nối) tới dịch vụ "Web-Dashboard". Bất kỳ ai khác, dù có nằm trong cùng dải mạng, cũng hoàn toàn không thể quét thấy hoặc kết nối tới dịch vụ này.

---

Đánh giá giải pháp: Ưu điểm và Nhược điểm so với Cloudflare Access

Mặc dù việc tự xây dựng Private Cloudflare Access mang lại sự tự chủ tuyệt đối, bạn cũng cần cân nhắc kỹ lưỡng các yếu tố kỹ thuật trước khi đưa vào môi trường sản xuất (Production).

Tiêu chíCloudflare Access (SaaS)Tự xây dựng với OpenZiti + VPS
Chi phíMiễn phí gói cơ bản, tính phí theo user khi quy mô lớn.Cố định theo giá thuê VPS, không giới hạn số lượng user.
Quyền sở hữu dữ liệuDữ liệu đi qua hạ tầng của Cloudflare.Dữ liệu đi qua VPS riêng, bảo mật 100% mã nguồn mở.
Độ phức tạp triển khaiDễ dàng, cấu hình qua giao diện Web trong vài phút.Trung bình - Cao, đòi hỏi kiến thức về mạng và Linux.
Khả năng tùy biếnBị giới hạn bởi các tính năng Cloudflare cung cấp.Tự do can thiệp sâu vào code, tích hợp trực tiếp vào app.
---

Kết luận và Khuyến nghị

Xây dựng một hệ thống Private "Cloudflare Access" bằng OpenZiti và VPS là giải pháp tối ưu cho các doanh nghiệp công nghệ, các startup coi trọng tính bảo mật và quyền riêng tư của dữ liệu. Nó giải phóng bạn khỏi sự phụ thuộc vào các nhà cung cấp SaaS lớn, đồng thời mang lại một kiến trúc bảo mật Zero Trust vững chắc ở cấp độ cao nhất.

Nếu bạn mới bắt đầu, hãy thử nghiệm triển khai OpenZiti trên một VPS cấu hình thấp để làm quen với khái niệm mạng Overlay, Identities và Policies trước khi áp dụng diện rộng cho toàn bộ hạ tầng doanh nghiệp của mình.