Back to Explore
Tự động hóa cấp phát chứng chỉ TLS công khai với hỗ trợ ACME trong AWS Certificate Manager

Tự động hóa cấp phát chứng chỉ TLS công khai với hỗ trợ ACME trong AWS Certificate Manager

AWS vừa ra mắt tính năng hỗ trợ giao thức ACME cho các chứng chỉ TLS công khai trong AWS Certificate Manager (ACM). Việc này giúp tự động hóa hoàn toàn quy trình cấp phát và gia hạn chứng chỉ, giảm thiểu rủi ro hết hạn và đơn giản hóa việc quản lý chứng chỉ trên quy mô lớn mà không cần can thiệp thủ công.

Website
Upvote this postSign in to upvote this article.

Tự động hóa cấp phát chứng chỉ TLS công khai với hỗ trợ ACME trong AWS Certificate Manager

Việc quản lý chứng chỉ TLS cho các ứng dụng hiện đại là một thách thức không nhỏ. Khi thời hạn hiệu lực của chứng chỉ ngày càng ngắn lại (diễn đàn CA/Browser Forum quy định thời hạn tối đa giảm xuống 100 ngày bắt đầu từ tháng 3 năm 2027 và xuống 47 ngày vào năm 2029), các quy trình gia hạn thủ công trở nên không còn khả thi. Để giải quyết vấn đề này, tự động hóa là yếu tố bắt buộc.

Hình ảnh minh họa AWS Certificate Manager

ACME là gì?

Automatic Certificate Management Environment (ACME) là một giao thức mở dùng để yêu cầu, gia hạn và thu hồi chứng chỉ TLS mà không cần sự can thiệp của con người. Đây là giao thức nền tảng của Let's Encrypt và được hỗ trợ bởi hàng chục client trên mọi nền tảng.

AWS hiện đã công bố hỗ trợ ACME cho các chứng chỉ công khai trong AWS Certificate Manager (ACM). ACM cung cấp một endpoint máy chủ ACME được quản lý hoàn toàn, tương thích với mọi client hỗ trợ ACMEv2 như Certbot, cert-manager cho Kubernetes, acme.sh, và nhiều công cụ khác. Bạn có thể cấp phát chứng chỉ TLS công khai từ Amazon Trust Services thông qua giao thức ACME tiêu chuẩn.

Tại sao nên sử dụng ACME trong ACM?

Trước đây, nếu muốn tự động hóa quản lý chứng chỉ bằng giao thức ACME, bạn thường phải dựa vào các cơ quan cấp chứng chỉ (CA) bên ngoài, dẫn đến trải nghiệm quản lý bị phân mảnh: một số chứng chỉ nằm trong ACM, số khác lại nằm ở bên ngoài, gây khó khăn trong việc giám sát tập trung. Ngoài ra, quản trị viên PKI gặp hạn chế trong việc kiểm soát ai có quyền yêu cầu chứng chỉ hoặc những domain nào được phép sử dụng.

Với hỗ trợ ACME trong ACM, bạn có thể thiết lập một hoặc nhiều endpoint ACME được quản lý để quản lý và giám sát tập trung việc sử dụng chứng chỉ ACME trên toàn bộ tổ chức.

Lợi ích chính:

  • Kiểm soát tập trung: Liên kết các vai trò IAM với tài khoản ACME để kiểm soát truy cập chi tiết.
  • Chính sách domain: Định nghĩa phạm vi domain ở cấp độ endpoint để thực thi chính sách trên toàn tổ chức.
  • Giám sát và kiểm toán: Tích hợp AWS CloudTrail để ghi lại mọi yêu cầu chứng chỉ, Amazon CloudWatch để theo dõi các chỉ số vận hành và nhận thông báo hết hạn từ ACM.

Cách thức hoạt động

Để bắt đầu, bạn cần thực hiện các bước sau:

  1. Thiết lập endpoint ACME: Tạo endpoint chuyên dụng.
  2. Cấu hình xác thực: Sử dụng External Account Binding (EAB) để thiết lập quyền.
  3. Xác thực domain: Xác định các domain mà endpoint được phép cấp phát chứng chỉ.
  4. Kết nối client: Trỏ các client ACME hiện có của bạn vào endpoint mới.

Điểm quan trọng là bước xác thực domain giúp tách biệt giữa người thiết lập hạ tầng cấp phát và người yêu cầu chứng chỉ. Quản trị viên PKI xác thực domain một lần ở cấp độ endpoint bằng thông tin xác thực DNS, trong khi chủ sở hữu ứng dụng chỉ cần đăng ký bằng thông tin xác thực EAB.

Hướng dẫn thực hiện

1. Tạo ACME Endpoint

Trong bảng điều khiển ACM, chọn Create ACME endpoint.

  • Endpoint type: Public.
  • Certificate type: Public (do Amazon Trust Services cấp).
  • Key type: Mặc định là ECDSA P-256 (có thể chọn RSA 2048 hoặc ECDSA P-384).

2. Cấu hình Domain Scope

Bạn có thể chọn các phạm vi như:

  • Exact domain: Chỉ cấp cho domain cụ thể.
  • Subdomains: Cấp cho các subdomain (ví dụ: api.example.com).
  • Wildcards: Cấp cho wildcard (*.example.com).

3. Xác thực DNS

Nếu bạn sử dụng Amazon Route 53, ACM sẽ tự động tạo các bản ghi CNAME cần thiết. Nếu sử dụng nhà cung cấp DNS khác, bạn cần tự tạo bản ghi CNAME được cung cấp.

4. Tạo EAB Credentials

Trên tab External account binding, chọn Create EAB. Bạn sẽ nhận được Key IDHMAC Key. Đây là thông tin để cấu hình client ACME.

5. Yêu cầu chứng chỉ (Ví dụ với Certbot)

Sử dụng lệnh sau để yêu cầu chứng chỉ:

certbot certonly --standalone --non-interactive --agree-tos \
    --email <EMAIL> \
    --server https://acm-acme-enroll.us-east-1.api.aws/<ENDPOINT_ID>/directory \
    --eab-kid <EAB_KID> \
    --eab-hmac-key <EAB_HMAC_KEY> \
    --issuance-timeout <ISSUANCE_TIMEOUT> \
    -d <DOMAIN>

Sau khi chạy lệnh, Certbot sẽ liên lạc với endpoint ACME và trả về chứng chỉ hợp lệ. Chứng chỉ này sẽ xuất hiện trong bảng điều khiển ACM dưới tab ACME certificates.

Tính khả dụng và chi phí

Tính năng này hiện đã khả dụng tại tất cả các khu vực AWS thương mại. Đối với AWS GovCloud (US), các khu vực tại Trung Quốc và AWS European Sovereign Cloud, tính năng này sẽ được cập nhật trong thời gian tới.

Chi phí được tính dựa trên mỗi domain trong mỗi chứng chỉ tại thời điểm cấp phát. Bạn có thể tham khảo chi tiết tại trang ACM pricing trên trang chủ AWS.

Discussion (0)

You need to log in to post comments. Log In

No comments yet. Start the discussion!

Do you like this post?

Upvote to push this post higher on the community feed

Details

Posted by: @admin
Categories: Developer Tools
Date posted: 8 tháng 7, 2026