Klienci SSL.com mogą teraz używać popularnego protokołu ACME do żądania i unieważniania SSL /TLS certyfikaty.
ACME (Automated Certificate Management Environment) to standardowy protokół do automatycznej walidacji domeny i instalacji certyfikatów X.509, udokumentowany w Dokument IETF RFC 8555. Jako dobrze udokumentowany standard z wieloma otwartymi źródłami wdrożenia klienta, ACME oferuje bezbolesny sposób udostępniania stron internetowych lub Urządzenia IoT takie jak modemy i routery z publicznie lub prywatnie zaufanymi certyfikatami cyfrowymi i aktualizuj te certyfikaty w miarę upływu czasu.
Z tego przewodnika dowiesz się, jak:
- Zlokalizuj i pobierz poświadczenia potrzebne do żądania certyfikatów w ACME.
- Użyj Certbot, aby ręcznie zażądać SSL /TLS certyfikaty za pośrednictwem HTTP-01 i DNS-01 metody wyzwania.
- Unieważnij certyfikaty z Certbotem.
Możesz używać wielu innych klientów ACME, w tym Menedżer certyfikatów Kubernetes, z usługą ACME SSL.com.
acme4j klient może teraz korzystać z usług SSL.com ACME w tym repozytorium: https://github.com/SSLcom/acme4j
Instrukcje dla innych klientów ACME innych niż Certbot można znaleźć w dokumentacji dostawcy oprogramowania.
Zainstaluj Certbot
W tym przewodniku założono, że pracujesz na komputerze z programem Certbot zainstalowany. Certbot to bezpłatne narzędzie o otwartym kodzie źródłowym, opracowane przez Electronic Frontier Foundation (EFF), za pomocą którego można żądać lub cofać SSL /TLS certyfikaty z SSL.com za pośrednictwem protokołu ACME. Certbot może działać na różnych platformach, w tym Linux, macOS i Windows.
- Jeśli snapd zainstalowany, możesz użyć tego polecenia do instalacji:
sudo snap install - klasyczny certbot
- If
/snap/bin/
nie ma w twoimPATH
, będziesz musiał go również dodać lub uruchomić polecenie takie:sudo ln -s / snap / bin / certbot / usr / bin / certbot
Jeśli potrzebujesz więcej informacji na temat instalacji Certbota w swoim systemie, zajrzyj do EFF dokumentacja.
Pobierz referencje ACME
Zanim użyjesz ACME do zażądania certyfikatu, musisz odzyskać plik Klucz konta i Klucz HMAC z Twojego konta SSL.com.
- Zaloguj się na swoje konto SSL.com. Jeśli jesteś już zalogowany, przejdź do Panel Użytkownika patka.
- Kliknij poświadczenia api, znajdujący się pod programiści i integracja.
- Będziesz potrzebował swojego Konto / klucz ACME i Klucz HMAC zażądać certyfikatów. Kliknij ikonę schowka () obok każdego klucza, aby skopiować wartość do schowka.
- Możesz również skopiować polecenie Certbot wstępnie wypełnione swoim adresem e-mail, kluczem konta / ACME i kluczem HMAC, klikając ikonę schowka () obok cli polecenie, Poniżej Certbot ACME. To wstępnie sformatowane polecenie zamówi certyfikat za pomocą metody wezwania HTTP-01.
Poproś o certyfikat SSL ręcznie /TLS Certyfikat
Po pobraniu poświadczeń możesz zażądać certyfikatu za pośrednictwem pliku certbot
Komenda. Certbot obsługuje dwie metody sprawdzania poprawności domeny (DV): HTTP-01 i DNS-01.
Metoda wyzwań HTTP-01
HTTP-01 jest najczęściej używaną metodą wyzwania używaną w programach ACME i Certbot. Gdy w ten sposób zażądasz certyfikatu, Certbot wygeneruje token, którego możesz użyć do utworzenia publicznie dostępnego pliku w Twojej witrynie. Serwer ACME SSL.com zweryfikuje plik przez HTTP i wyda podpisany certyfikat, jeśli jest poprawny.
Wymagania: Metoda HTTP-01 wymaga, abyś miał dostęp do serwera WWW, a witryna była dostępna przez port 80
przez HTTP. Będziesz także potrzebować sudo
uprawnienia na komputerze.
Aby ręcznie pobrać certyfikat, użyj następującego polecenia. Zastąp wartości WIELKIMI LITERAMI rzeczywistymi wartościami. (Jak wspomniano powyżej, możesz również skopiować i wkleić polecenie certbot, które robi to z konta w portalu):
sudo certbot certonly --manual --server https://acme.ssl.com/sslcom-dv-ecc --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com -- zgoda-tos --no-eff-email --email ADRES-EMAIL --eab-hmac-klucz-KLUCZ-HMAC --eab-kid KLUCZ-KONTA -d NAZWA.DOMENY
Łamanie polecenia:
sudo certbot
uruchamiacertbot
polecenie z uprawnieniami administratora.certonly
żąda pobrania certyfikatu, ale nie chce go zainstalować.--manual
określa, aby uruchomić Certbot w trybie interaktywnym.--server https://acme.ssl.com/sslcom-dv-ecc
określa serwer ACME SSL.com.--config-dir /etc/ssl-com
(opcjonalnie) ustawia katalog konfiguracyjny.--logs-dir /var/log/ssl-com
(opcjonalnie) ustawia katalog dla dzienników.--agree-tos
(opcjonalnie) wyraża zgodę na umowę abonencką ACME. Możesz to pominąć, jeśli chcesz wyrazić zgodę interaktywnie.--no-eff-email
(opcjonalnie) oznacza, że nie chcesz udostępniać swojego adresu e-mail EFF. Jeśli to pominiesz, zostanie wyświetlona opcja udostępnienia adresu e-mail.--email EMAIL-ADDRESS
zapewnia rejestracyjny adres e-mail. Możesz podać wiele adresów oddzielonych przecinkami.--eab-hmac-key HMAC-KEY
określa klucz HMAC.--eab-kid ACCOUNT-KEY
określa klucz Twojego konta.-d DOMAIN.NAME
określa nazwę domeny, którą będzie obejmować certyfikat. Pamiętaj, że możesz użyć use-d DOMAIN.NAME
opcję wielokrotnego dodawania nazw domen do certyfikatu. Certbot będzie wymagać utworzenia pliku wyzwania dla każdej żądanej nazwy domeny. Zobacz sekcję dotyczącą typy certyfikatów i fakturowanie poniżej, aby zobaczyć, jak mapują się różne kombinacje nazw domen Typy certyfikatów SSL.com i odpowiadające im ceny.
- Zmienić
--server
wartość w poleceniu dohttps://acme.ssl.com/sslcom-dv-rsa
. - Dodaj
--key-type rsa
do polecenia.
certbot
polecenie, informacje o koncie ACME będą przechowywane na twoim komputerze w katalogu konfiguracyjnym (/etc/ssl-com
w powyższym poleceniu. W przyszłych uruchomieniach certbota możesz pominąć --eab-hmac-key
i --eab-kid
opcje, ponieważ certbot zignoruje je na korzyść przechowywanych lokalnie informacji o koncie.
Jeśli chcesz powiązać zamówienia certyfikatów ACME dla komputera z innym kontem SSL.com, usuń informacje o tym koncie ze swojego komputera za pomocą polecenia sudo rm -r /etc/ssl-com/accounts/acme.ssl.com
(lub, jeśli pominąłeś opcjonalny) --config-dir
opcja, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com
).
Po uruchomieniu powyższego polecenia powinieneś otrzymać instrukcje, aby utworzyć plik walidacyjny:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Utwórz plik zawierający tylko te dane: cr1rsRTImVz_s7HHk7biTQ. 9mOlJPgZ8D97HojOHnhD6hYeZZOPDUDNMxchFUNJQvI I udostępnij go na swoim serwerze WWW pod tym adresem URL: http://DOMAIN.NAME/.well-known/acme-challenge/cr1rsRTImVz_s7HHk7biTQ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Naciśnij Enter, aby kontynuować
Utwórz plik i zapisz go w miejscu na serwerze WWW, gdzie będzie można uzyskać do niego dostęp przez port HTTP 80
pod wyświetlonym adresem URL, a następnie naciśnij Enter
.
-
) postać. W takim przypadku może być konieczne określenie katalogu podczas tworzenia pliku, aby zapobiec interpretacji myślnika przez powłokę (np vim ./-r1rsRTImVz_s7HHk7biTQ
).Jeśli wszystkie twoje informacje są poprawne, powinieneś otrzymać wiadomość potwierdzającą, pokazującą lokalizację twojego łańcucha certyfikatów i klucza prywatnego:
WAŻNE UWAGI: - Gratulacje! Twój certyfikat i łańcuch zostały zapisane pod adresem: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Twój plik klucza został zapisany w: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem Twój cert wygaśnie 2021-10-05. Aby w przyszłości uzyskać nową lub ulepszoną wersję tego certyfikatu, po prostu ponownie uruchom certbot. Aby odnowić * wszystkie * certyfikaty w sposób nieinteraktywny, uruchom polecenie „certbot renew”
Możesz teraz skonfigurować serwer WWW, aby uzyskać dostęp do nowego certyfikatu i klucza prywatnego.
Metoda wezwania DNS-01
Opona DNS-01 Metoda wyzwania jest trudniejsza w użyciu niż HTTP-01, ale może być wygodniejsza w użyciu na wielu serwerach internetowych. W tej metodzie Certbot dostarczy token, którego użyjesz do utworzenia rekordu DNS TXT pod nazwą domeny, którą będzie chronił certyfikat.
Wymagania: Metoda DNS-01 wymaga, abyś miał możliwość tworzenia rekordów DNS dla nazwy domeny swojej witryny internetowej.
Następujące polecenie zażąda certyfikatu dla DOMAIN.NAME za pomocą metody wezwania 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
opcję wielokrotnego dodawania nazw domen do certyfikatu. Certbot będzie wymagał utworzenia oddzielnego rekordu DNS TXT dla każdej żądanej nazwy domeny. Nie musisz czekać na propagację każdego rekordu TXT przed naciśnięciem Enter
aż dotrzesz do ostatniego wyzwania. Zobacz sekcję dotyczącą typy certyfikatów i fakturowanie poniżej, aby zobaczyć, jak mapują się różne kombinacje nazw domen Typy certyfikatów SSL.com i odpowiadające im ceny. certbot
polecenie, informacje o koncie ACME będą przechowywane na twoim komputerze w katalogu konfiguracyjnym (/etc/ssl-com
w powyższym poleceniu. W przyszłych uruchomieniach certbota możesz pominąć --eab-hmac-key
i --eab-kid
opcje, ponieważ certbot zignoruje je na korzyść przechowywanych lokalnie informacji o koncie.
Jeśli chcesz powiązać zamówienia certyfikatów ACME dla komputera z innym kontem SSL.com, usuń informacje o tym koncie ze swojego komputera za pomocą polecenia sudo rm -r /etc/ssl-com/accounts/acme.ssl.com
(lub, jeśli pominąłeś opcjonalny) --config-dir
opcja, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com
).
To polecenie jest takie samo jak polecenie z sekcji HTTP-01, ale dodaje rozszerzenie --preferred-challenges dns
opcja. Po uruchomieniu polecenia otrzymasz instrukcje dotyczące tworzenia rekordu 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
Utwórz rekord DNS TXT i zaczekaj na jego propagację. (whatsmydns.net jest wygodnym narzędziem do sprawdzania propagacji DNS). Zwróć uwagę, że znak podkreślenia (_) na początku nazwy rekordu to wymagany. Gdy nagranie rozprzestrzeni się na całym świecie, naciśnij Enter
.
*.example.com
) będziesz musiał osobno poprosić o nazwę domeny podstawowej, jeśli chcesz ją również chronić (na przykład -d *.example.com -d example.com
). W takim przypadku będziesz musiał utworzyć drugiej Rekordy TXT o tej samej nazwie (_acme-challenge.example.com
). Jeśli wszystkie twoje informacje są poprawne, powinieneś otrzymać wiadomość potwierdzającą, pokazującą lokalizację twojego łańcucha certyfikatów i klucza prywatnego:
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"
Możesz teraz skonfigurować serwer WWW, aby uzyskać dostęp do nowego certyfikatu i klucza prywatnego.
Odnowienie certyfikatu (ręczne)
W przypadku certyfikatów wydanych ręcznie (zgodnie z opisem w tym przewodniku) odnowienie certyfikatu odbywa się po prostu przez powtórzenie polecenia używanego do żądania certyfikatu. Certbot zapewnia renew
podkomendy, ale spowoduje to błąd przy próbie użycia jej z certyfikatami żądanymi z --manual
opcja:
sudo certbot renew --force-renewal Zapisywanie dziennika debugowania w /var/log/ssl-com/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Przetwarzanie /etc/ssl-com/renewal/DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Nie można wybrać odpowiedniej wtyczki: wtyczka ręczna nie działa; mogą wystąpić problemy z istniejącą konfiguracją. Wystąpił błąd: PluginError ('Skrypt uwierzytelniający musi być wyposażony w --manual-auth-hook podczas nieinteraktywnego korzystania z wtyczki ręcznej.',) Próbowano odnowić certyfikat (DOMENA.NAME) z / etc / ssl-com / renewal / DOMAIN.NAME.conf spowodowało nieoczekiwany błąd: wtyczka ręczna nie działa; mogą wystąpić problemy z istniejącą konfiguracją. Wystąpił błąd: PluginError ('Skrypt uwierzytelniający musi być wyposażony w --manual-auth-hook, gdy wtyczka ręczna jest używana w sposób nieinteraktywny.',). Skaczący. Wszystkie próby odnowienia nie powiodły się. Nie można odnowić następujących certyfikatów: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (awaria) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wszystkie próby odnowienia nie powiodły się. Nie można odnowić następujących certyfikatów: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (awaria) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 błąd (y) odnowienia, 0 błędów analizy (błędów)
Unieważnienie certyfikatu
Unieważnij certyfikat za pomocą certbot revoke
. Zastąp ścieżkę certyfikatu WIELKIMI LITERAMI rzeczywistymi wartościami (na przykład /etc/ssl-com/live/example.com/cert.pem
). Jeśli nie określisz niestandardowego --config-dir
i --logs-dir
żądając oryginalnego certyfikatu, pomiń te opcje.
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
Zostaniesz zapytany, czy chcesz również usunąć unieważniony certyfikat:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Czy chcesz usunąć certyfikat (y) właśnie unieważniłeś, wraz ze wszystkimi wcześniejszymi i późniejszymi wersjami certyfikatu? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y) es (zalecane) / (N ) o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Usunięto wszystkie pliki związane z certyfikatem NAZWA DOMENY. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Unable to register an account with ACME server. Error returned by the ACME server: Something went wrong. We apologize for the inconvenience.
Spróbuj wykonać następujące czynności, aby rozwiązać problem:
a) Określ ścieżkę klucza prywatnego certyfikatu, aby podpisać żądanie unieważnienia.
Przykład:
--key-path /PATH/TO/privkey.pem
b) Jeśli korzystałeś z niestandardowego katalogu, określ katalog użyty podczas wystawiania certyfikatu:
--config-dir
Typy certyfikatów i fakturowanie
Wszystkie SSL /TLS certyfikaty wydane za pośrednictwem ACME przez SSL.com są certyfikatami rocznymi. Typ certyfikatu SSL.com, który otrzymasz (i zostaniesz obciążony opłatą), zależy od liczby i typu żądanych nazw domen:
- Podstawowy SSL: Jedna nazwa domeny lub nazwa domeny plus
www
subdomena (npexample.com
iwww.example.com
).- Pamiętaj, że jeśli chcesz chronić zarówno nazwę domeny podstawowej, jak i
www
, musisz uwzględnić oba w poleceniu Certbot (np-d example.com -d www.example.com
).
- Pamiętaj, że jeśli chcesz chronić zarówno nazwę domeny podstawowej, jak i
- Wildcard SSL: Jedna nazwa domeny z symbolem wieloznacznym lub jedna nazwa domeny z symbolem wieloznacznym i podstawowa nazwa domeny (np
*.example.com
iexample.com
). - SSL Premium: Podstawowa nazwa domeny i od jednej do trzech subdomen bez symboli wieloznacznych. (Wyjątek: jak wspomniano powyżej, domena podstawowa plus
www
subdomena [i żadne inne] będą rozliczane jako Basic SSL. Na przykład:
example.com
iinfo.example.com
example.com
,www.example.com
,info.example.com
example.com
,www.example.com
,info.example.com
,store.example.com
- Multi-Domain UCC / SAN SSL: Dowolna inna kombinacja nazw domen. Na przykład:
- Podstawowa nazwa domeny i więcej niż trzy subdomeny
- Dwie lub więcej nazw domen zawierających symbole wieloznaczne i / lub domeny niebędące subdomenami
Uczestnicy w SSL.com Program dla sprzedawców i zakupów grupowych będą rozliczane według obniżonej stawki związanej z ich poziomem cenowym.
Po więcej informacji
Dzięki protokołowi ACME (z lub bez Certbota) możesz zrobić o wiele więcej. Więcej informacji można znaleźć w następujących zasobach:
- Co to jest protokół ACME?
- ACME SSL /TLS Automatyzacja z Apache i Nginx
- SSL /TLS Automatyzacja IoT z ACME
- Dokumentacja Certbot
- Strona podręcznika Certbot
Potrzebujesz dodatkowej pomocy z kontem SSL.com?
- Twoje konto SSL.com - przesyłanie pliku CSR
- Nieudany test wstępny ?!
- Twoje konto SSL.com - walidacje
- Twoje konto SSL.com - zamówienia
- API SWS SSL.com - wprowadzenie
- Twoje konto SSL.com - domeny
- Obsługiwane moduły HSM w chmurze do podpisywania dokumentów i podpisywania kodu EV