16Th5

Chúng tôi bắt đầu thử sử dụng ACM khi đến lúc phải gia hạn SSL

Xin chào. Tôi là Kikuchi của Team Infrastructure đây!

Đã tầm một năm kể từ khi tôi gia nhập Pixta rồi đấy. Vào khoảng thời gian này một năm trước, lần đầu tiên tôi đến văn phòng của PIXTA (văn phòng cũ), tôi đã chờ người phỏng vấn trong vô vọng. Lí do là vì… tôi đi nhầm tầng.

Thôi quay lại chủ đề chính, hôm nay là ngày thứ 23 trong mùa Vọng, tôi muốn chia sẻ với bạn câu chuyện về chứng chỉ SSL.

Hiện tại, Pixta sử dụng khá nhiều chứng chỉ SSL cho pixtastock, fotowa hay 13.228.200.16… Tuy nhiên, bắt đầu từ năm nay, nhân việc cập nhật chứng chỉ, chúng tôi chuyển sang sử dụng ACM (AWS Certificate Manager).

 

Chứng chỉ SSL miễn phí

Khi nói đến “chứng chỉ SSL miễn phí”, chắc hẳn bạn sẽ nghĩ ngay đến Let’s Encrypt. Nhưng thật ra thì, ACM cũng cung cấp chứng chỉ SSL miễn phí. Bản chất ACM là một dịch vụ sẵn có miễn phí, cung cấp chức năng quản lý chứng chỉ SSL. Bạn không cần phải trả thêm gì khác ngoài chi phí cho các tài nguyên AWS mà bạn tạo ra để chạy ứng dụng.

ACM có tính năng phát hành chứng chỉ SSL và bạn có thể sử dụng miễn phí chứng chỉ được phát hành bởi tính năng này. Tuy nhiên, có một hạn chế khi sử dụng chứng chỉ này – nó chỉ có sẵn cho AWS service nào đã tích hợp ACM như là ELB (Elastic Load Balancing) hoặc CloudFront (Amazon CloudFront). Bạn không thể sử dụng chứng chỉ SSL trên server.

Với Pixta thì hạn chế này không thành vấn đề. Chỉ cần chuyển chứng chỉ SSL đã sử dụng sang chứng chỉ được ACM cung cấp, chúng tôi đã giảm được chi phí cho chứng chỉ SLL.

Chứng chỉ được cung cấp bởi ACM có thời hạn 13 tháng. Chứng chỉ này cũng có hỗ trợ wildcard và thuận tiện hơn với chức năng cập nhật tự động.

Thật tuyệt vời khi có thể giảm được chi phí chỉ với một service nho nhỏ của AWS đúng không?

 

Ngoài chứng chỉ miễn phí, ACM còn có khả năng nào nữa?

Như đã đề cập ở trên, chứng chỉ cung cấp bởi ACM không thể sử dụng trên server. Tại Pixta, các chứng chỉ được sử dụng trên server đều là chứng chỉ có trả phí..

Do đó, các chứng chỉ ACM không nhất thiết phải có. Tôi cũng chỉ ấn tượng với chứng chỉ miễn phí của ACM chứ cũng không quan tâm lắm đến các tính năng khác.

Tuy nhiên, sau lần thử nghiệm vừa rồi, chúng tôi nhận ra rằng việc sử dụng ACM có những lợi ích nhất định đối với các chứng chỉ được mua bên ngoài.

 

Chức năng Quản lý – Triển khai tương ứng với các chứng chỉ ngoại lai

Trên thực tế, trong số các chứng chỉ mà chúng tôi đang sử dụng đã được đề cập, có đến hơn 10 cái đã đăng ký ELB. Khi gia hạn một chứng chỉ, bạn sẽ phải thiết lập một chứng chỉ mới cho mỗi ELB. Điều này khá là rắc rối bởi vì dễ bị nhầm lẫn, và không nắm được chứng chỉ mới này là bản thứ mấy.

Với ACM, bạn có thể tiết kiệm được thời gian và công sức cho việc gia hạn chứng chỉ.

ACM có chức năng import chứng chỉ, cho phép bạn đăng ký và quản lý các chứng chỉ ngoại lai. Ngoài ra, ACM còn có tính năng triển khai cho AWS service nào đã tích hợp ACM, ví dụ như ELB, và bạn có thể triển khai chứng chỉ do ACM quản lý cho từng dịch vụ .

Nói tóm lại,

  1. Nhập hoặc đăng ký chứng chỉ ngoại lai vào ACM
  2. Thiết lập chứng chỉ cho ELB
  3. Cập nhật chứng chỉ đã đăng ký trong ACM
  4. Chứng chỉ ở ELB cũng được tự động cập nhật

Với chứng chỉ được sử dụng trên server, không có sự thay đổi trong quá trình cập nhật, nhưng việc cập nhật sẽ trở nên đơn giản hơn nhiều với ELB.

 

Những điểm cần lưu ý khi sử dụng ACM

Mặc dù dùng ACM miễn phí như thế này rất tiện, nhưng vẫn có một số điểm mà chúng ta cần lưu ý như sau:

  • Việc sử dụng các chứng chỉ được tạo bởi ACM bị giới hạn trong các AWS service đã được tích hợp ACM.
  • Xác thực tổ chức OV (organization authentication) và xác thực mở rộng EV (extended authentication) không được hỗ trợ.
  • Khu vực (Region) sẽ là Bắc Virginia nếu sử dụng CloudFront. Để biết thêm thông tin, vui lòng truy cập văn bản chính thứcFAQ.
 

Kết luận

Vậy là tôi đã chia sẻ với các bạn trải nghiệm của tôi khi thử sử dụng ACM lần đầu tiên.

Chúng ta hoàn toàn có thể sử dụng ACM một cách khá dễ dàng, và càng đơn giản hơn một khi đã hiểu và nắm rõ được cơ chế của nó.

Chúng tôi cho rằng nếu dùng đúng lúc đúng chỗ, nó sẽ là một dịch vụ cực kỳ hữu ích dành cho bạn.

Trong số các service mà các bạn đã thấy trong bài viết, bạn có thấy cái nào giống với cái cách mà chứng chỉ SSL được phân phối qua mạng lưới CloudFront không?

Đó chính là cách mà ACM được sử dụng. Vậy tại sao bạn không thử xem lại domain hay chứng chỉ SSL của mình đi nhỉ?