SSL /TLS Издаване и отнемане на сертификат с ACME

ACME логоКлиентите на SSL.com вече могат да използват популярния протокол ACME, за да поискат и отменят SSL /TLS сертификати.

ACME (Automated Certificate Management Environment) е стандартен протокол за автоматизирана проверка на домейн и инсталиране на X.509 сертификати, документиран в IETF RFC 8555, Като добре документиран стандарт с много отворен код клиентски реализации, ACME предлага безболезнен начин за предоставяне на уебсайтове или Устройства за пренос на данни като модеми и рутери с публично или частно доверени цифрови сертификати и поддържат тези сертификати актуализирани с течение на времето.

ACME не е само за уебсайтове! С ACME разрешено издаване на CA от SSL.com, доставчиците на IoT могат лесно да управляват и автоматизират проверка, инсталиране, подновяване и отмяна на SSL /TLS сертификати за устройства, поддържащи ACME.

Научете повече за ACME за IoT

Това ръководство ще ви покаже как да:

  • Намерете и извлечете идентификационните данни, които ще са ви необходими, за да поискате сертификати с ACME.
  • Използвайте Certbot, за да поискате ръчно SSL /TLS сертификати чрез HTTP-01 намлява DNS-01 предизвикателни методи.
  • Отнемете сертификатите с Certbot.
Забележка:
Можете да използвате много други клиенти на ACME, включително Cerber-мениджър на Kubernetes, с услугата ACME на SSL.com.
acme4j  клиентът вече може да използва SSL.com ACME услуги в това хранилище: https://github.com/SSLcom/acme4j
Моля, вижте документацията на вашия доставчик на софтуер за инструкции за други клиенти на ACME, които не са Certbot.

Инсталирайте Certbot

Това ръководство предполага, че работите на компютър, който има Certbot инсталиран. Certbot е безплатен инструмент с отворен код, разработен от Electronic Frontier Foundation (EFF), който можете да използвате, за да заявите или оттеглите SSL /TLS сертификати от SSL.com чрез протокола ACME. Certbot може да се изпълнява на различни платформи, включително Linux, macOS и Windows.

  • Ако имате инсталиран snapd, можете да използвате тази команда за инсталиране:
    sudo snap install --classic certbot
  • If /snap/bin/ не е във вашия PATH, също ще трябва да го добавите или да изпълните команда като тази:
    sudo ln -s / snap / bin / certbot / usr / bin / certbot

Ако имате нужда от повече информация относно инсталирането на Certbot във вашата система, моля, обърнете се към EFF документация.

Изтеглете ACME идентификационни данни

Преди да използвате ACME за заявка за сертификат, ще трябва да изтеглите своя Ключ за акаунт намлява HMAC ключ от вашия SSL.com акаунт.

SSL.com Покупка на дистрибутор и обем партньорите могат генериране на ACME идентификационни данни за своите клиенти. Прочети това как да за пълни указания.
  1. Влезте в акаунта си в SSL.com. Ако вече сте влезли, отидете на Табло раздела.
    Табло
  2. Кликнете api пълномощия, намиращ се под разработчици и интеграция.
    Връзка с идентификационни данни за API
  3. Вие ще имате нужда от вашето Ключ за акаунт / ACME намлява HMAC ключ да поиска сертификати. Щракнете върху иконата на клипборда () до всеки ключ, за да копирате стойността в клипборда.
    Ключ за акаунт / ACME и ключ за HMAC
  4. Можете също да копирате команда Certbot, предварително напълнена с вашия имейл адрес, клавиш Account / ACME и HMAC, като щракнете върху иконата на клипборда () до команда cli, По-долу ACME Certbot. Тази предварително форматирана команда ще поръча сертификат чрез метода на HTTP-01 предизвикателство.Копирайте командата certbot

Ръчно заявете SSL /TLS сертификат

След като извадихте вашите идентификационни данни, можете да поискате сертификат чрез certbot команда. Certbot поддържа два метода за проверка на домейна (DV): HTTP-01 и DNS-01.

Метод за предизвикателство HTTP-01

HTTP-01 е най-често използваният метод за предизвикване, използван с ACME и Certbot. Когато заявите сертификат по този начин, Certbot ще генерира маркер, който можете да използвате, за да създадете публично достъпен файл на вашия уебсайт. След това ACME сървърът на SSL.com ще провери файла чрез HTTP и ще издаде подписан сертификат, ако е правилен.

Изисквания: Методът HTTP-01 изисква да имате достъп до вашия уеб сървър и сайтът да е достъпен през порт 80 чрез HTTP. Вие също ще имате нужда sudo привилегии на компютъра.

За да извлечете ръчно сертификат, използвайте следната команда. Заменете стойностите във ALL CAPS с вашите действителни стойности. (Както беше отбелязано по-горе, можете също да копирате и поставите команда certbot, която прави това от вашия акаунт на портала):

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

Разбиване на командата:

  • sudo certbot работи certbot команда с права на суперпотребител.
  • certonly заявки за извличане на сертификат, но не и да го инсталирате.
  • --manual указва да стартира Certbot интерактивно.
  • --server https://acme.ssl.com/sslcom-dv-ecc определя ACME сървъра на SSL.com.
  • --config-dir /etc/ssl-com (по избор) задава конфигурационната директория.
  • --logs-dir /var/log/ssl-com (по избор) задава директорията за регистрационни файлове.
  • --agree-tos (по избор) се съгласява с споразумението за абонат на ACME. Можете да пропуснете това, ако искате да се съгласите интерактивно.
  • --no-eff-email (по избор) показва, че не искате да споделяте имейл адреса си с EFF. Ако пропуснете това, ще бъдете подканени с опцията за споделяне на вашия имейл адрес.
  • --email EMAIL-ADDRESS предоставя имейл адрес за регистрация. Можете да посочите няколко адреса, разделени със запетаи.
  • --eab-hmac-key HMAC-KEY указва вашия HMAC ключ.
  • --eab-kid ACCOUNT-KEY указва ключа на вашия акаунт.
  • -d DOMAIN.NAME указва името на домейна, което ще покрива сертификатът. Имайте предвид, че можете да използвате -d DOMAIN.NAME опция няколко пъти във вашата команда, за да добавите имена на домейни към вашия сертификат. Certbot ще изисква да създадете файл за предизвикателство за всяко поискано име на домейн. Моля, вижте раздела за типове сертификати и фактуриране по-долу, за да видите как се съчетават различни комбинации от имена на домейни Типове сертификати SSL.com и съответните им цени.
Забележка: Certbot 2.0.0 или по-нова версия по подразбиране генерира ECDSA за нови сертификати. Горната команда ще генерира двойка ключове ECDSA и сертификат. За да използвате RSA ключове вместо това:

  • Променете --server стойност в командата за https://acme.ssl.com/sslcom-dv-rsa
  • Добави --key-type rsa към командата.
Когато за първи път стартирате горното certbot команда, информацията за акаунта на ACME ще се съхранява на вашия компютър в конфигурационната директория (/etc/ssl-com в командата, показана по-горе. При бъдещи стартирания на certbot можете да пропуснете --eab-hmac-key намлява --eab-kid опции, защото certbot ще ги игнорира в полза на локално съхраняваната информация за акаунта.

Ако трябва да свържете вашите поръчки на сертификат ACME за компютъра с друг акаунт в SSL.com, трябва да премахнете тази информация за акаунта от компютъра си с командата sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (или, ако сте пропуснали незадължителното --config-dir опция, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Когато стартирате горната команда, трябва да получите инструкции за създаване на файл за проверка:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Създайте файл, съдържащ само тези данни: cr1rsRTImVz_s7HHk7biTQ. 9mOlJPgZ8D97HojOHnhD6hYeZZOPDUDNMxchFUNJQvI И го направете достъпно на вашия уеб сървър на този URL адрес: http://DOMAIN.NAME/.well-known/acme-challenge/cr1rsRTImVz_s7HHk7biTQ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Натиснете Enter, за да продължите

Създайте файла и го запазете на място на вашия уеб сървър, където той може да бъде достъпен чрез HTTP през порт 80 на показания URL адрес, след което натиснете Enter.

Забележка: Предизвикателството HTTP-01 може да изисква име на файл, започващо с тире (-) характер. В този случай може да се наложи да посочите директорията при създаването на вашия файл, за да попречите на черупката да интерпретира тирето (напр vim ./-r1rsRTImVz_s7HHk7biTQ).

Ако цялата ви информация е вярна, трябва да получите съобщение за потвърждение, показващо местоположението на вашата верига от сертификати и частния ключ:

ВАЖНИ БЕЛЕЖКИ: - Поздравления! Вашият сертификат и верига са запазени на адрес: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Вашият ключов файл е запазен на адрес: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem сертификатът изтича на 2021-10-05. За да получите нова или променена версия на този сертификат в бъдеще, просто стартирайте certbot отново. За да подновите неинтерактивно * всички * от вашите сертификати, стартирайте "certbot подновяване"

Вече можете да конфигурирате вашия уеб сървър за достъп до новия сертификат и частния ключ.

DNS-01 Метод за предизвикателство

- DNS-01 challenge методът е по-труден за използване от HTTP-01, но може да бъде по-удобен за използване на множество уеб сървъри. При този метод Certbot ще предостави маркер, който използвате за създаване на DNS TXT запис под името на домейна, което сертификатът ще защити.

Изисквания: Методът DNS-01 изисква да имате възможност да създавате DNS записи за името на домейна на вашия уеб сайт.

Следващата команда ще поиска сертификат за DOMAIN.NAME чрез метода за предизвикателство 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 опция няколко пъти във вашата команда, за да добавите имена на домейни към вашия сертификат. Certbot ще изисква от вас да създадете отделен DNS TXT запис за всяко поискано име на домейн. Не е необходимо да чакате всеки TXT запис да се разпространи, преди да натиснете Enter докато стигнете до последното предизвикателство. Моля, вижте раздела за типове сертификати и фактуриране по-долу, за да видите как се съчетават различни комбинации от имена на домейни Типове сертификати SSL.com и съответните им цени.
Когато за първи път стартирате горното certbot команда, информацията за акаунта на ACME ще се съхранява на вашия компютър в конфигурационната директория (/etc/ssl-com в командата, показана по-горе. При бъдещи стартирания на certbot можете да пропуснете --eab-hmac-key намлява --eab-kid опции, защото certbot ще ги игнорира в полза на локално съхраняваната информация за акаунта.

Ако трябва да свържете вашите поръчки на сертификат ACME за компютъра с друг акаунт в SSL.com, трябва да премахнете тази информация за акаунта от компютъра си с командата sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (или, ако сте пропуснали незадължителното --config-dir опция, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Тази команда е същата като тази от раздела HTTP-01, но добавя --preferred-challenges dns опция. Когато изпълните командата, ще получите инструкции за създаване на 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

Създайте DNS TXT записа и изчакайте той да се разпространи. (whatsmydns.net е удобен инструмент за проверка за разпространение на DNS). Имайте предвид, че символът за подчертаване (_) в началото на името на записа е длъжен. Когато записът се разпространи по целия свят, натиснете Enter.

Ако заявявате заместващ сертификат (напр *.example.com) ще трябва да поискате името на основния домейн отделно, ако искате да го защитите също (например -d *.example.com -d example.com). В такъв случай ще трябва да създадете две TXT записи със същото име (_acme-challenge.example.com).

Ако цялата ви информация е вярна, трябва да получите съобщение за потвърждение, показващо местоположението на вашата верига от сертификати и частния ключ:

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"

Вече можете да конфигурирате вашия уеб сървър за достъп до новия сертификат и частния ключ.

Подновяване на сертификат (ръчно)

За ръчно издадени сертификати (както е описано в това ръководство), подновяването на сертификата се извършва чрез просто повтаряне на командата, използвана за заявяване на сертификата. Certbot предоставя a renew подкомандата, но това ще доведе до грешка при опит да се използва със сертификати, поискани с --manual опция:

sudo certbot подновяване --force-подновяване Запазване на регистрационния файл за отстраняване на грешки в /var/log/ssl-com/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Обработка /etc/ssl-com/renewal/DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Не можах да избера подходящ плъгин: Ръчният плъгин не работи; може да има проблеми със съществуващата ви конфигурация. Грешката беше: PluginError („Сценарият за удостоверяване трябва да бъде снабден с --manual-auth-hook, когато използвате ръчния плъгин неинтерактивно.“,) Опит за подновяване на сертификат (DOMAIN.NAME) от / etc / ssl-com / renewal / DOMAIN.NAME.conf създаде неочаквана грешка: Ръчният плъгин не работи; може да има проблеми със съществуващата ви конфигурация. Грешката беше: PluginError ('Сценарият за удостоверяване трябва да бъде снабден с --manual-auth-hook, когато използвате ръчния плъгин неинтерактивно.',). Прескачане. Всички опити за подновяване са неуспешни. Следните сертификати не можаха да бъдат подновени: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (неуспех) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Всички опити за подновяване са неуспешни. Следните сертификати не можаха да бъдат подновени: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (неуспех) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 грешка при подновяване, 0 грешка при анализиране

Отнемане на сертификат

Отнемете сертификат с certbot revoke. Заменете пътя на сертификата във ALL CAPS с вашите действителни стойности (например, /etc/ssl-com/live/example.com/cert.pem). Ако не сте посочили потребителски --config-dir намлява --logs-dir когато поискате оригиналния сертификат, пропуснете тези опции.

sudo certbot revoke --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

Ще бъдете подканени дали искате също да изтриете отменения сертификат:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Искате ли да изтриете сертификата (сертификатите) току-що сте отменили, заедно с всички по-ранни и по-късни версии на сертификата? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y) es (препоръчително) / (N ) o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Изтрити всички файлове, свързани със сертификата ИМЕ НА ДОМЕЙН. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Забележка: Някои потребители може да получат тази грешка, докато се опитват да отменят сертификат с помощта на SSL.comкрайна точка на ACME:Unable to register an account with ACME server. Error returned by the ACME server: Something went wrong. We apologize for the inconvenience.

Опитайте следното, за да разрешите грешката:
a) Посочете пътя на частния ключ на сертификата, за да подпишете заявката за анулиране.
Пример: --key-path /PATH/TO/privkey.pem
b) Ако сте използвали персонализирана директория, посочете директорията, която сте използвали, когато сте издали сертификата: --config-dir

Видове сертификати и фактуриране

Всички SSL /TLS сертификатите, издадени чрез ACME от SSL.com, са едногодишни сертификати. Типът сертификат SSL.com, който ще получите (и ще бъдете таксуван) зависи от броя и типа на заявените имена на домейни:

  • Основен SSL: Едно име на домейн или име на домейн плюс www поддомейн (напр example.com намлява www.example.com).
    • Имайте предвид, че ако искате да защитите както основното име на домейн, така и www, трябва да включите и двете във вашата команда Certbot (напр -d example.com -d www.example.com).
  • Wildcard SSL: Едно име на заместващ домейн или едно заместващо име на домейн плюс основно име на домейн (напр *.example.com намлява example.com).
  • Премиум SSL: Основно име на домейн и един до три поддомена, които не са заместващи. (Изключение: Както бе отбелязано по-горе, основен домейн плюс www поддомейн [и няма други] ще бъдат таксувани като основен SSL.) Например:
    • example.com намлява info.example.com
    • example.comwww.example.com, и info.example.com
    • example.comwww.example.com, info.example.com , и store.example.com
  • Многодоменен UCC / SAN SSL: Всяка друга комбинация от имена на домейни. Например:
    • Основно име на домейн и повече от три поддомена
    • Две или повече заместващи имена и / или имена на домейни без поддомейн

Участници в SSL.com Програма за дистрибутори и закупуване на обеми ще бъдат таксувани по дисконтирана ставка, свързана с техния ценови ред.

За повече информация

Има много повече неща, които можете да направите с протокола ACME (със или без Certbot). Моля, обърнете се към следните ресурси за много повече информация:

Нуждаете се от повече помощ за вашия акаунт в SSL.com?

Благодарим ви, че избрахте SSL.com! Ако имате някакви въпроси, моля свържете се с нас по имейл на Support@SSL.com, обадете се 1-877-SSL-SECUREили просто щракнете върху връзката за чат в долната дясна част на тази страница. Можете също така да намерите отговори на много общи въпроси за поддръжка в нашето знание.
Twitter
Facebook
LinkedIn
Reddit
Имейл

Бъдете информирани и защитени

SSL.com е глобален лидер в киберсигурността, PKI и цифрови сертификати. Регистрирайте се, за да получавате най-новите новини от индустрията, съвети и съобщения за продукти от SSL.com.

Ще се радваме на вашите отзиви

Попълнете нашата анкета и ни кажете какво мислите за скорошната си покупка.