Khá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.
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-01 và DNS-01 các phương pháp thử thách.
- Thu hồi chứng chỉ với Certbot.
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ạnPATH
, 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ản và Khóa HMAC từ tài khoản SSL.com của bạn.
- Đă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.
- Nhấp chuột thông tin api, nằm dưới nhà phát triển và tích hợp.
- Bạn sẽ cần của bạn Khóa tài khoản / ACME và Khó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.
- 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.
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ạycertbot
lệnh với các đặc quyền của người dùng siêu cấpcertonly
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.
- Thay đổi
--server
giá trị trong lệnh đểhttps://acme.ssl.com/sslcom-dv-rsa
. - Thêm
--key-type rsa
vào lệnh.
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
và --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
.
-
) 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
-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. 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
và --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
.
*.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
và --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. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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.com
vàwww.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
).
- Lưu ý rằng nếu bạn muốn bảo vệ cả tên miền cơ sở và
- 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.com
vàexample.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.com
vàinfo.example.com
example.com
,www.example.com
vàinfo.example.com
example.com
,www.example.com
,info.example.com
và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:
- Giao thức ACME là gì?
- ACME SSL /TLS Tự động hóa với Apache và Nginx
- SSL /TLS Tự động hóa cho IoT với ACME
- Tài liệu Certbot
- Trang người đàn ông của Certbot
Cần thêm trợ giúp với tài khoản SSL.com của bạn?
- Tài khoản SSL.com của bạn - Gửi CSR
- Không kiểm tra trước?!
- Tài khoản SSL.com của bạn - Xác thực
- Tài khoản SSL.com của bạn - Đơn hàng
- API SWS của SSL.com - Giới thiệu
- Tài khoản SSL.com của bạn - Tên miền
- HSM đám mây được hỗ trợ để ký tài liệu và ký mã EV