SSL /TLS Cấp và thu hồi chứng chỉ với ACME

Logo ACMEKhách hàng SSL.com hiện có thể sử dụng giao thức ACME phổ biến để yêu cầu và thu hồi SSL /TLS giấy chứng nhận.

ACME (Môi trường quản lý chứng chỉ tự động) là một giao thức tiêu chuẩn để xác thực miền tự động và cài đặt chứng chỉ X.509, được tài liệu trong IETF RFC 8555. Là một tiêu chuẩn được ghi chép tốt với nhiều nguồn mở triển khai khách hàng, ACME cung cấp một cách dễ dàng để cung cấp các trang web hoặc Thiết bị IoT chẳng hạn như modem và bộ định tuyến có chứng chỉ kỹ thuật số được công khai hoặc riêng tư tin cậy và luôn cập nhật các chứng chỉ này theo thời gian.

ACME không chỉ dành cho các trang web! Với CA phát hành có hỗ trợ ACME từ SSL.com, các nhà cung cấp IoT có thể dễ dàng quản lý và tự động hóa việc xác thực, cài đặt, gia hạn và thu hồi SSL /TLS chứng chỉ trên các thiết bị hỗ trợ ACME.

Tìm hiểu thêm về ACME cho IoT

Hướng dẫn này sẽ chỉ cho bạn cách:

  • Xác định vị trí và truy xuất thông tin xác thực bạn sẽ cần để yêu cầu chứng chỉ với ACME.
  • Sử dụng Certbot để yêu cầu SSL /TLS chứng chỉ thông qua HTTP-01DNS-01 các phương pháp thử thách.
  • Thu hồi chứng chỉ với Certbot.
Lưu ý:
Bạn có thể sử dụng nhiều ứng dụng khách ACME khác, bao gồm Trình quản lý chứng chỉ Kubernetes, với dịch vụ ACME của SSL.com.
acme4j  giờ đây khách hàng có thể sử dụng các dịch vụ SSL.com ACME trên kho lưu trữ này: https://github.com/SSLcom/acme4j
Vui lòng tham khảo tài liệu của nhà cung cấp phần mềm của bạn để biết hướng dẫn dành cho các máy khách ACME không phải Certbot khác.

Cài đặt Certbot

Hướng dẫn này giả định rằng bạn đang làm việc trên một máy tính có certbot Cài đặt. Certbot là một công cụ mã nguồn mở và miễn phí, được phát triển bởi Electronic Frontier Foundation (EFF), mà bạn có thể sử dụng để yêu cầu hoặc thu hồi SSL /TLS chứng chỉ từ SSL.com thông qua giao thức ACME. Certbot có thể chạy trên nhiều nền tảng, bao gồm Linux, macOS và Windows.

  • Nếu bạn có snapd được cài đặt, bạn có thể sử dụng lệnh này để cài đặt:
    sudo snap install - certbot cổ điển
  • If /snap/bin/ không có trong bạn PATH, bạn cũng sẽ cần thêm nó hoặc chạy một lệnh như sau:
    sudo ln -s / snap / bin / certbot / usr / bin / certbot

Nếu bạn cần thêm thông tin về việc cài đặt Certbot trên hệ thống của mình, vui lòng tham khảo EFF's tài liệu hướng dẫn.

Lấy thông tin đăng nhập ACME

Trước khi sử dụng ACME để yêu cầu chứng chỉ, bạn sẽ cần truy xuất Khóa tài khoảnKhóa HMAC từ tài khoản SSL.com của bạn.

SSL.com của Người bán lại và mua số lượng lớn đối tác có thể tạo thông tin đăng nhập ACME cho khách hàng của họ. Đọc cách làm này để có hướng dẫn đầy đủ.
  1. Đăng nhập vào tài khoản SSL.com của bạn. Nếu bạn đã đăng nhập, hãy chuyển đến Bảng Điều Khiển (Dashboard) tab.
    Bảng Điều Khiển (Dashboard)
  2. Nhấp chuột thông tin api, nằm dưới nhà phát triển và tích hợp.
    Liên kết thông tin xác thực API
  3. Bạn sẽ cần của bạn Khóa tài khoản / ACMEKhóa HMAC để yêu cầu chứng chỉ. Nhấp vào biểu tượng khay nhớ tạm () bên cạnh mỗi phím để sao chép giá trị vào khay nhớ tạm.
    Khóa tài khoản / ACME và khóa HMAC
  4. Bạn cũng có thể sao chép lệnh Certbot đã điền sẵn địa chỉ email, khóa Tài khoản / ACME và khóa HMAC của mình bằng cách nhấp vào biểu tượng khay nhớ tạm () kế bên lệnh cli, Bên dưới Chứng chỉ ACME. Lệnh được định dạng trước này sẽ yêu cầu chứng chỉ thông qua phương thức thử thách HTTP-01.Sao chép lệnh certbot

Yêu cầu SSL theo cách thủ công /TLS Giấy chứng nhận

Bây giờ bạn đã truy xuất thông tin đăng nhập của mình, bạn có thể yêu cầu chứng chỉ qua certbot chỉ huy. Certbot hỗ trợ hai phương thức xác thực tên miền (DV): HTTP-01 và DNS-01.

Phương pháp thử thách HTTP-01

HTTP-01 là phương pháp thử thách phổ biến nhất được sử dụng với ACME và Certbot. Khi bạn yêu cầu chứng chỉ theo cách này, Certbot sẽ tạo mã thông báo mà bạn có thể sử dụng để tạo tệp có thể truy cập công khai trên trang web của mình. Sau đó, máy chủ ACME của SSL.com sẽ xác minh tệp qua HTTP và cấp chứng chỉ đã ký nếu đúng.

yêu cầu: Phương thức HTTP-01 yêu cầu bạn phải có quyền truy cập vào máy chủ web của mình và trang web đó khả dụng qua cổng 80 qua HTTP. Bạn cũng sẽ cần sudo đặc quyền trên máy tính.

Để truy xuất thủ công chứng chỉ, hãy sử dụng lệnh sau. Thay thế các giá trị trong TẤT CẢ CHỮ HOA bằng các giá trị thực của bạn (Như đã lưu ý ở trên, bạn cũng có thể sao chép và dán lệnh certbot thực hiện việc này từ tài khoản cổng của bạn):

sudo certbot certonly --manual --server https://acme.ssl.com/sslcom-dv-ecc --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com -- đồng ý --no-eff-email --email EMAIL-ADDRESS --eab-hmac-key HMAC-KEY --eab-kid ACCOUNT-KEY -d DOMAIN.NAME

Chia nhỏ lệnh:

  • sudo certbot chạy certbot lệnh với các đặc quyền của người dùng siêu cấp
  • certonly yêu cầu truy xuất chứng chỉ, nhưng không cài đặt nó.
  • --manual chỉ định chạy Certbot tương tác.
  • --server https://acme.ssl.com/sslcom-dv-ecc chỉ định máy chủ ACME của SSL.com.
  • --config-dir /etc/ssl-com (tùy chọn) đặt thư mục cấu hình.
  • --logs-dir /var/log/ssl-com (tùy chọn) đặt thư mục cho các bản ghi.
  • --agree-tos (tùy chọn) đồng ý với thỏa thuận thuê bao ACME. Bạn có thể bỏ qua điều này nếu bạn muốn đồng ý một cách tương tác.
  • --no-eff-email (tùy chọn) cho biết rằng bạn không muốn chia sẻ địa chỉ email của mình với EFF. Nếu bạn bỏ qua điều này, bạn sẽ được nhắc với tùy chọn chia sẻ địa chỉ email của mình.
  • --email EMAIL-ADDRESS cung cấp một địa chỉ email đăng ký. Bạn có thể chỉ định nhiều địa chỉ, được phân tách bằng dấu phẩy.
  • --eab-hmac-key HMAC-KEY chỉ định khóa HMAC của bạn.
  • --eab-kid ACCOUNT-KEY chỉ định khóa tài khoản của bạn.
  • -d DOMAIN.NAME chỉ định tên miền mà chứng chỉ sẽ bao gồm. Lưu ý rằng bạn có thể sử dụng -d DOMAIN.NAME nhiều lần trong lệnh của bạn để thêm tên miền vào chứng chỉ của bạn. Certbot sẽ yêu cầu bạn tạo tệp thử thách cho mỗi tên miền được yêu cầu. Vui lòng xem phần trên loại chứng chỉ và thanh toán bên dưới để xem các cách kết hợp tên miền khác nhau ánh xạ đến Các loại chứng chỉ SSL.com và định giá tương ứng của chúng.
Lưu ý: Certbot 2.0.0 hoặc mới hơn mặc định tạo ECDSA cho chứng chỉ mới. Lệnh trên sẽ tạo ra một cặp khóa và chứng chỉ ECDSA. Để sử dụng khóa RSA thay thế:

  • Thay đổi --server giá trị trong lệnh để https://acme.ssl.com/sslcom-dv-rsa
  • Thêm --key-type rsa vào lệnh.
Khi bạn lần đầu tiên chạy phần trên certbot lệnh, thông tin tài khoản ACME sẽ được lưu trữ trên máy tính của bạn trong thư mục cấu hình (/etc/ssl-com trong lệnh hiển thị ở trên. Trên các lần chạy certbot trong tương lai, bạn có thể bỏ qua --eab-hmac-key--eab-kid bởi vì certbot sẽ bỏ qua chúng để có lợi cho thông tin tài khoản được lưu trữ cục bộ.

Nếu bạn cần liên kết các đơn đặt hàng chứng chỉ ACME của mình cho máy tính với một tài khoản SSL.com khác, bạn nên xóa thông tin tài khoản này khỏi máy tính của mình bằng lệnh sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (hoặc, nếu bạn bỏ qua tùy chọn --config-dir Tùy chọn, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Khi bạn chạy lệnh trên, bạn sẽ nhận được hướng dẫn để tạo tệp xác thực:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Tạo một tệp chỉ chứa dữ liệu này: cr1rsRTImVz_s7HHk7biTQ. 9mOlJPgZ8D97HojOHnhD6hYeZZOPDUDNMxchFUNJQvI Và cung cấp nó trên máy chủ web của bạn tại URL này: http://DOMAIN.NAME/.well-known/acme-challenge/cr1rsRTImVz_s7HHk7biTQ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Nhấn Enter để tiếp tục

Tạo tệp và lưu nó ở một vị trí trên máy chủ web của bạn, nơi nó có thể được truy cập qua HTTP qua cổng 80 tại URL được hiển thị, sau đó nhấn Enter.

Lưu ý: Thử thách HTTP-01 có thể yêu cầu tên tệp bắt đầu bằng dấu gạch ngang (-) tính cách. Trong trường hợp này, bạn có thể cần chỉ định thư mục khi tạo tệp của mình để ngăn trình bao thông dịch dấu gạch ngang (ví dụ: vim ./-r1rsRTImVz_s7HHk7biTQ).

Nếu tất cả thông tin của bạn đều chính xác, bạn sẽ nhận được thông báo xác nhận hiển thị vị trí của chuỗi chứng chỉ và khóa cá nhân của bạn:

LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem của bạn C cert sẽ hết hạn vào ngày 2021-10-05. Để có được phiên bản mới hoặc đã được chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot. Để gia hạn không tương tác * tất cả * chứng chỉ của bạn, hãy chạy "gia hạn certbot"

Giờ đây, bạn có thể định cấu hình máy chủ web của mình để truy cập vào chứng chỉ mới và khóa riêng tư.

Phương pháp thử thách DNS-01

Sản phẩm DNS-01 Phương thức thử thách khó sử dụng hơn HTTP-01, nhưng có thể thuận tiện hơn khi sử dụng trên nhiều máy chủ web. Trong phương pháp này, Certbot sẽ cung cấp mã thông báo mà bạn sử dụng để tạo bản ghi DNS TXT dưới tên miền mà chứng chỉ sẽ bảo vệ.

yêu cầu: Phương pháp DNS-01 yêu cầu bạn có khả năng tạo bản ghi DNS cho tên miền trang web của bạn.

Lệnh sau sẽ yêu cầu chứng chỉ cho DOMAIN.NAME thông qua phương thức thử thách DNS-01:

sudo certbot certonly --manual --server https://acme.ssl.com/sslcom-dv-rsa --agree-tos --no-eff-email --email EMAIL-ADDRESS --eab-hmac-key HMAC-KEY --eab-kid ACCOUNT-KEY --preferred-challenges dns -d DOMAIN.NAME

Lưu ý: Bạn có thể sử dụng -d DOMAIN.NAME tùy chọn nhiều lần trong lệnh của bạn để thêm tên miền vào chứng chỉ của bạn. Certbot sẽ yêu cầu bạn tạo một bản ghi DNS TXT riêng biệt cho từng tên miền được yêu cầu. Bạn không cần phải đợi mỗi bản ghi TXT phổ biến trước khi nhấn Enter cho đến khi bạn đạt được thử thách cuối cùng. Vui lòng xem phần trên loại chứng chỉ và thanh toán bên dưới để xem các cách kết hợp tên miền khác nhau ánh xạ đến Các loại chứng chỉ SSL.com và định giá tương ứng của chúng.
Khi bạn lần đầu tiên chạy phần trên certbot lệnh, thông tin tài khoản ACME sẽ được lưu trữ trên máy tính của bạn trong thư mục cấu hình (/etc/ssl-com trong lệnh hiển thị ở trên. Trên các lần chạy certbot trong tương lai, bạn có thể bỏ qua --eab-hmac-key--eab-kid bởi vì certbot sẽ bỏ qua chúng để có lợi cho thông tin tài khoản được lưu trữ cục bộ.

Nếu bạn cần liên kết các đơn đặt hàng chứng chỉ ACME của mình cho máy tính với một tài khoản SSL.com khác, bạn nên xóa thông tin tài khoản này khỏi máy tính của mình bằng lệnh sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (hoặc, nếu bạn bỏ qua tùy chọn --config-dir Tùy chọn, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Lệnh này giống với lệnh từ phần HTTP-01, nhưng thêm --preferred-challenges dns Lựa chọn. Khi bạn chạy lệnh, bạn sẽ nhận được hướng dẫn để tạo bản ghi DNS:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please deploy a DNS TXT record under the name _acme-challenge.DOMAIN.NAME with the following value: -87YKoj3sQZB4rVCMZTiifl9QJKYm2eYYymAkpE0zBo Before continuing, verify the record is deployed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Press Enter to Continue

Tạo bản ghi DNS TXT và đợi nó phổ biến. (whatsmydns.net là một công cụ thuận tiện để kiểm tra sự lan truyền DNS). Lưu ý rằng ký tự gạch dưới (_) ở đầu tên bản ghi là cần phải. Khi kỷ lục đã được phổ biến trên toàn thế giới, hãy nhấn Enter.

Nếu bạn đang yêu cầu chứng chỉ ký tự đại diện (ví dụ: *.example.com) bạn sẽ cần yêu cầu tên miền cơ sở riêng nếu bạn cũng muốn bảo vệ nó (ví dụ: -d *.example.com -d example.com). Trong trường hợp này, bạn sẽ cần tạo hai Bản ghi TXT có cùng tên (_acme-challenge.example.com).

Nếu tất cả thông tin của bạn đều chính xác, bạn sẽ nhận được thông báo xác nhận hiển thị vị trí của chuỗi chứng chỉ và khóa cá nhân của bạn:

IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Your key file has been saved at: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem Your cert will expire on 2021-10-05. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew"

Giờ đây, bạn có thể định cấu hình máy chủ web của mình để truy cập vào chứng chỉ mới và khóa riêng tư.

Gia hạn chứng chỉ (Thủ công)

Đối với các chứng chỉ được cấp theo cách thủ công (như được mô tả trong hướng dẫn này), việc gia hạn chứng chỉ được thực hiện bằng cách chỉ cần lặp lại lệnh được sử dụng để yêu cầu chứng chỉ. Certbot cung cấp một renew lệnh con, nhưng nó sẽ tạo ra lỗi khi cố gắng sử dụng nó với các chứng chỉ được yêu cầu với --manual tùy chọn:

sudo certbot refresh --force-renew Lưu nhật ký gỡ lỗi vào /var/log/ssl-com/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Đang xử lý /etc/ssl-com/renewal/DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Không thể chọn plugin phù hợp: Plugin thủ công không hoạt động; có thể có vấn đề với cấu hình hiện tại của bạn. Lỗi là: PluginError ('Tập lệnh xác thực phải được cung cấp với --manual-auth-hook khi sử dụng plugin thủ công không tương tác.',) Đang cố gắng gia hạn cert (DOMAIN.NAME) từ / etc / ssl-com / Rene / DOMAIN.NAME.conf đã tạo ra lỗi không mong muốn: Plugin thủ công không hoạt động; có thể có vấn đề với cấu hình hiện có của bạn. Lỗi là: PluginError ('Tập lệnh xác thực phải được cung cấp với --manual-auth-hook khi sử dụng plugin thủ công không tương tác.',). Bỏ qua. Tất cả các lần gia hạn đều không thành công. Không thể gia hạn các chứng chỉ sau: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (fail) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Tất cả các nỗ lực gia hạn đều không thành công. Không thể gia hạn các chứng chỉ sau: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (fail) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 lỗi gia hạn, 0 lỗi phân tích cú pháp

Thu hồi chứng chỉ

Thu hồi chứng chỉ với certbot revoke. Thay thế đường dẫn chứng chỉ trong TẤT CẢ CHỮ HOA bằng các giá trị thực của bạn (ví dụ: /etc/ssl-com/live/example.com/cert.pem). Nếu bạn không chỉ định một tùy chỉnh --config-dir--logs-dir khi yêu cầu chứng chỉ gốc, hãy bỏ qua các tùy chọn này.

sudo certbot thu hồi --server https://acme.ssl.com/sslcom-dv-rsa --cert-path /PATH/TO/cert.pem --config-dir / etc / ssl-com --logs-dir / var / log / ssl-com

Bạn sẽ được nhắc về việc bạn có muốn xóa chứng chỉ đã thu hồi hay không:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Bạn có muốn xóa (các) chứng chỉ không bạn vừa thu hồi, cùng với tất cả các phiên bản trước đó và mới hơn của cert? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Nên) / (N ) o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Đã xóa tất cả các tệp liên quan đến chứng chỉ TÊN MIỀN. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Lưu ý: Một số người dùng có thể gặp lỗi này khi cố gắng thu hồi chứng chỉ bằng cách sử dụng SSL.comđiểm cuối ACME của:Unable to register an account with ACME server. Error returned by the ACME server: Something went wrong. We apologize for the inconvenience.

Hãy thử cách sau để giải quyết lỗi:
a) Chỉ định đường dẫn khóa riêng của chứng chỉ để ký yêu cầu hủy bỏ.
Ví dụ: --key-path /PATH/TO/privkey.pem
b) Nếu bạn đã sử dụng thư mục tùy chỉnh, hãy chỉ định thư mục bạn đã sử dụng khi cấp chứng chỉ: --config-dir

Các loại chứng chỉ và thanh toán

Tất cả SSL /TLS chứng chỉ do SSL.com cấp qua ACME là chứng chỉ một năm. Loại chứng chỉ SSL.com bạn sẽ nhận được (và được lập hóa đơn) tùy thuộc vào số lượng và loại tên miền được yêu cầu:

  • SSL cơ bản: Một tên miền hoặc tên miền cộng www tên miền phụ (ví dụ: example.comwww.example.com).
    • Lưu ý rằng nếu bạn muốn bảo vệ cả tên miền cơ sở và www, bạn phải đưa cả hai vào lệnh Certbot của mình (ví dụ: -d example.com -d www.example.com).
  • SSL ký tự đại diện: Một tên miền ký tự đại diện hoặc một tên miền ký tự đại diện cùng với tên miền cơ sở (ví dụ: *.example.comexample.com).
  • SSL cao cấp: Tên miền cơ sở và một đến ba miền phụ không phải ký tự đại diện. (Ngoại lệ: Như đã lưu ý ở trên, miền cơ sở cộng www miền phụ [và không có miền nào khác] sẽ được lập hóa đơn là SSL Cơ bản.) Ví dụ:
    • example.cominfo.example.com
    • example.comwww.example.cominfo.example.com
    • example.comwww.example.com, info.example.com store.example.com
  • SSL UCC / SAN đa miền: Bất kỳ sự kết hợp tên miền nào khác. Ví dụ:
    • Tên miền cơ sở và hơn ba tên miền phụ
    • Hai hoặc nhiều ký tự đại diện và / hoặc tên miền không phải tên miền phụ

Partipants trong SSL.com's Người bán lại và Chương trình mua số lượng lớn sẽ được lập hóa đơn ở mức chiết khấu liên quan đến bậc định giá của họ.

Để biết thêm thông tin

Còn rất nhiều điều bạn có thể làm với giao thức ACME (có hoặc không có Certbot). Vui lòng tham khảo các nguồn sau để biết thêm thông tin:

Cần thêm trợ giúp với tài khoản SSL.com của bạn?

Cảm ơn bạn đã chọn SSL.com! Nếu bạn có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi qua email theo địa chỉ Support@SSL.com, gọi 1-877-SSL-SECUREhoặc chỉ cần nhấp vào liên kết trò chuyện ở dưới cùng bên phải của trang này. Bạn cũng có thể tìm thấy câu trả lời cho nhiều câu hỏi hỗ trợ phổ biến trong kiến thức cơ bản.
Twitter
Facebook
LinkedIn
Reddit
E-mail

Luôn cập nhật thông tin và bảo mật

SSL.com là công ty hàng đầu thế giới về an ninh mạng, PKI và chứng chỉ số. Đăng ký để nhận tin tức, thủ thuật và thông báo sản phẩm mới nhất trong ngành từ SSL.com.

Chúng tôi rất mong nhận được phản hồi của bạn

Hãy tham gia cuộc khảo sát của chúng tôi và cho chúng tôi biết suy nghĩ của bạn về lần mua hàng gần đây của bạn.