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

Hướng Dẫn Tự Dựng Máy Chủ Penpot Tích Hợp Xác Thực Tập Trung Authentik SSO Trên VPS

30 tháng 5, 2026

Giới thiệu xu hướng tự chủ công nghệ trong thiết kế giao diện (UI/UX)

Trong kỷ nguyên số hiện nay, các công cụ thiết kế giao diện cộng tác trực tuyến đóng vai trò cốt lõi trong quy trình phát triển sản phẩm công nghệ. Nhiều doanh nghiệp đang phụ thuộc lớn vào các giải pháp SaaS đám mây. Tuy nhiên, việc phụ thuộc này đi kèm với các rủi ro về chi phí bản quyền tăng cao, nguy cơ rò rỉ dữ liệu và sự thiếu linh hoạt trong quản lý tài khoản. Chính vì vậy, xu hướng tự vận hành (Self-hosted) các nền tảng mã nguồn mở đang trở thành chiến lược ưu tiên của nhiều bộ phận IT và sản xuất phần mềm chuyên nghiệp.

Bài viết này sẽ hướng dẫn chi tiết cách thiết lập Penpot – nền tảng thiết kế UI/UX cộng tác mã nguồn mở mạnh mẽ đầu tiên dựa trên tiêu chuẩn SVG – kết hợp với Authentik SSO, hệ thống quản lý danh tính và xác thực một lần (Single Sign-On) toàn diện. Việc tích hợp này không chỉ giúp doanh nghiệp sở hữu một không gian làm việc chuyên nghiệp bảo mật cao mà còn tối ưu hóa quy trình quản trị nhân sự trên hệ thống VPS riêng biệt.

Tại sao nên kết hợp Penpot và Authentik SSO?

Trước khi đi vào các bước triển khai kỹ thuật, chúng ta cần hiểu rõ những giá trị cốt lõi mà mô hình kết hợp này mang lại cho cấu trúc hạ tầng của doanh nghiệp:

  • Làm chủ hoàn toàn dữ liệu: Toàn bộ file thiết kế, thông tin dự án và mã nguồn sản phẩm được lưu trữ an toàn trên VPS thuộc quyền kiểm soát của bạn, đáp ứng các tiêu chuẩn khắt khe về an toàn thông tin.
  • Tối ưu hóa chi phí vận hành: Loại bỏ hoàn toàn chi phí bản quyền tính theo đầu người (per-user) hàng tháng như các công cụ độc quyền truyền thống. Bạn có thể mở rộng số lượng Designer và Developer không giới hạn.
  • Quản lý danh tính tập trung (Identity Management): Nhờ có Authentik, quản trị viên hệ thống có thể dễ dàng cấp quyền hoặc thu hồi quyền truy cập Penpot của nhân viên ngay lập tức từ một giao diện duy nhất, giảm thiểu tối đa lỗ hổng bảo mật khi có nhân sự thay đổi.
  • Trải nghiệm người dùng mượt mà: Nhân viên chỉ cần ghi nhớ một tài khoản duy nhất để đăng nhập vào Penpot cũng như toàn bộ các hệ thống nội bộ khác của công ty thông qua giao thức OAuth2 hoặc OIDC.
---

Chuẩn bị hạ tầng VPS và các điều kiện tiên quyết

Để đảm bảo hệ thống vận hành ổn định, mượt mà khi có nhiều thành viên cùng cộng tác theo thời gian thực (Real-time collaboration), cấu hình phần cứng và phần mềm của máy chủ ảo VPS cần đáp ứng các tiêu chí tối thiểu sau:

1. Yêu cầu về cấu hình VPS

  • CPU: Tối thiểu 2 Cores (Khuyến nghị 4 Cores để xử lý mượt mà khi render SVG dung lượng lớn).
  • RAM: Tối thiểu 4GB RAM (Khuyến nghị 8GB vì cả Penpot và Authentik đều chạy nhiều dịch vụ nền bao gồm Redis, PostgreSQL).
  • Dung lượng ổ cứng: Tối thiểu 40GB SSD/NVMe (Tùy thuộc vào số lượng và kích thước các asset hình ảnh của dự án thiết kế).
  • Hệ điều hành: Ubuntu Server 22.04 LTS hoặc 24.04 LTS ổn định.

2. Chuẩn bị mạng và tên miền

Bạn cần sở hữu một tên miền (Domain) và cấu hình sẵn hai bản ghi A trỏ về IP công khai của VPS. Ví dụ:

  • penpot.yourcompany.com (Dành cho giao diện thiết kế Penpot)
  • auth.yourcompany.com (Dành cho cổng xác thực Authentik)

Đồng thời, hãy đảm bảo các cổng mạng tiêu chuẩn như 80 (HTTP), 443 (HTTPS) đã được mở trên tường lửa của VPS.

---

Quy trình triển khai chi tiết trên VPS

Bước 1: Cài đặt Docker và Docker Compose

Do cả Penpot và Authentik đều được đóng gói tối ưu dưới dạng các container, việc cài đặt Docker là bước bắt buộc đầu tiên. Hãy thực hiện cập nhật hệ thống và cài đặt Docker Engine bằng các lệnh sau:

sudo apt update && sudo apt upgrade -y
sudo apt install curl iptables -y
curl -fsSL [https://get.docker.com](https://get.docker.com) | sh

Kiểm tra trạng thái hoạt động của Docker để đảm bảo dịch vụ đã sẵn sàng:

sudo systemctl status docker

Bước 2: Cấu hình và khởi chạy Authentik SSO

Tạo một thư mục riêng biệt cho Authentik để dễ dàng quản lý cấu hình và dữ liệu:

mkdir -p ~/authentik && cd ~/authentik

Tải xuống tệp cấu hình Docker Compose chính thức từ nhà phát triển Authentik và thiết lập các biến môi trường bảo mật bằng cách tạo file .env. Hãy đảm bảo bạn đã tạo các chuỗi khóa bí mật (Secret Key) đủ mạnh cho cơ sở dữ liệu và hệ thống core của Authentik.

Sau khi cấu hình hoàn tất, khởi chạy cụm container của Authentik bằng lệnh:

docker compose up -d

Truy cập vào địa chỉ [https://auth.yourcompany.com/if/user/#/setup](https://auth.yourcompany.com/if/user/#/setup) để thiết lập tài khoản quản trị tối cao (Administrator) cho hệ thống xác thực.

Bước 3: Cấu hình Provider và Application trên Authentik

Để Penpot có thể nói chuyện và xác thực qua Authentik, chúng ta cần tạo một cầu nối giao tiếp (thông qua giao thức OpenID Connect):

  1. Đăng nhập vào Admin Interface của Authentik.
  2. Điều hướng đến mục Applications -> Providers và tạo một Provider mới kiểu OAuth2/OpenID Provider.
  3. Đặt tên Provider (ví dụ: Penpot SSO) và cấu hình Redirect URI chính xác dạng: [https://penpot.yourcompany.com/api/auth/oauth/authentik/callback](https://penpot.yourcompany.com/api/auth/oauth/authentik/callback).
  4. Lưu lại thông tin quan trọng bao gồm: Client ID, Client Secret, và đường dẫn OpenID Configuration Issuer URL.
  5. Chuyển sang mục Applications, tạo một ứng dụng mới, gán ứng dụng này với Provider vừa tạo để hiển thị biểu tượng Penpot trên bảng điều khiển của người dùng.

Bước 4: Cấu hình và triển khai Penpot tích hợp OAuth2

Tương tự, tạo một thư mục làm việc cho Penpot trên VPS:

mkdir -p ~/penpot && cd ~/penpot

Tải tệp mẫu docker-compose.yaml và tệp môi trường config.env từ kho mã nguồn chính thức của Penpot. Tiến hành chỉnh sửa tệp config.env để kích hoạt tính năng đăng nhập qua bên thứ ba bằng cách điền các thông số thu được từ Authentik ở bước trước:

PENPOT_OAUTH_AUTHENTIK_CLIENT_ID=chuỗi_client_id_từ_authentik
PENPOT_OAUTH_AUTHENTIK_CLIENT_SECRET=chuỗi_client_secret_từ_authentik
PENPOT_OAUTH_AUTHENTIK_AUTH_URI=[https://auth.yourcompany.com/application/o/authorize/](https://auth.yourcompany.com/application/o/authorize/)
PENPOT_OAUTH_AUTHENTIK_TOKEN_URI=[https://auth.yourcompany.com/application/o/token/](https://auth.yourcompany.com/application/o/token/)
PENPOT_OAUTH_AUTHENTIK_USER_PROFILE_URI=[https://auth.yourcompany.com/application/o/userinfo/](https://auth.yourcompany.com/application/o/userinfo/)

Để tăng cường tính đồng bộ chuyên nghiệp, bạn có thể tắt tính năng đăng ký tài khoản bằng Email thông thường bằng cách thiết lập biến PENPOT_REGISTRATION_ENABLED=false. Điều này ép buộc tất cả người dùng phải đi qua cổng xác thực Authentik của doanh nghiệp.

Khởi chạy Penpot bằng lệnh:

docker compose up -d

Bước 5: Thiết lập Reverse Proxy và chứng chỉ SSL Let's Encrypt

Để đảm bảo toàn bộ dữ liệu thiết kế và mật khẩu được mã hóa an toàn trên đường truyền, chúng ta sử dụng Nginx hoặc Nginx Proxy Manager làm Reverse Proxy để điều hướng lưu lượng và tự động cấp phát chứng chỉ SSL miễn phí.

Cấu hình Nginx sẽ điều hướng các yêu cầu đến tên miền penpot.yourcompany.com vào cổng nội bộ của container Penpot (mặc định là 9001) và tên miền auth.yourcompany.com vào cổng nội bộ của Authentik (mặc định là 9000). Hãy chạy lệnh kiểm tra cấu hình Nginx và tải lại dịch vụ để áp dụng các thay đổi:

sudo nginx -t && sudo systemctl reload nginx
---

Kiểm tra vận hành và nghiệm thu hệ thống

Sau khi hoàn tất toàn bộ các bước cấu hình phức tạp trên, hãy mở trình duyệt web và truy cập vào đường dẫn [https://penpot.yourcompany.com](https://penpot.yourcompany.com). Tại màn hình đăng nhập, bạn sẽ thấy xuất hiện một tùy chọn đăng nhập mới mang tên "Login with Authentik".

Khi người dùng click vào nút này, hệ thống sẽ tự động chuyển hướng mượt mà sang giao diện trung tâm của Authentik. Tại đây, sau khi nhập đúng tài khoản doanh nghiệp được cấp, Authentik sẽ xác thực danh tính, kiểm tra quyền truy cập và chuyển hướng người dùng quay trở lại không gian làm việc của Penpot với đầy đủ hồ sơ cá nhân đã được đồng bộ.

Kết luận và các lưu ý về bảo trì hệ thống

Việc tự dựng máy chủ thiết kế Penpot tích hợp hệ thống xác thực Authentik SSO trên VPS mang lại cho doanh nghiệp sự độc lập hoàn toàn về mặt công nghệ, tối ưu hóa chi phí vận hành và nâng tầm an toàn bảo mật thông tin lên chuẩn Enterprise.

Tuy nhiên, để hệ thống luôn hoạt động trong trạng thái tốt nhất, bộ phận quản trị IT của doanh nghiệp cần lưu ý thiết lập các kịch bản sao lưu (Backup) tự động định kỳ cho các volume chứa cơ sở dữ liệu PostgreSQL của cả Penpot và Authentik. Đồng thời, hãy luôn theo dõi các bản cập nhật bảo mật từ nhà phát triển để tiến hành nâng cấp container bằng lệnh docker compose pull định kỳ, đảm bảo không gian làm việc số luôn an toàn và hiệu quả.

Hướng Dẫn Tự Dựng Máy Chủ Penpot Tích Hợp Xác Thực Tập Trung Authentik SSO Trên VPS | DPTCloud