IETF zatwierdził Automatic Certificate Management Environment (ACME), który pomoże zautomatyzować uzyskiwanie certyfikatów SSL. Wyjaśniamy, jak to działa.
/ Flickr / /
Dlaczego ten standard był potrzebny
Średnio na konfigurację dla domeny administrator może poświęcić od jednej do trzech godzin. Jeśli popełni błąd, trzeba będzie czekać na odrzucenie wniosku, a dopiero potem będzie można złożyć go ponownie. Wszystko to utrudnia wdrażanie systemów na dużą skalę.
Procedura walidacji domeny może się różnić w zależności od centrum certyfikacji. Brak standaryzacji czasem prowadzi do problemów z bezpieczeństwem. Znany jest , gdy z powodu błędu w systemie jedno CA zweryfikowało wszystkie zgłoszone domeny. W takich sytuacjach certyfikaty SSL mogą zostać wydane oszukańczym zasobom.
Zatwierdzony przez IETF protokół ACME (specyfikacja ) ma zautomatyzować i ustandaryzować proces uzyskiwania certyfikatu. Wyeliminowanie czynnika ludzkiego pomoże też zwiększyć niezawodność i bezpieczeństwo weryfikacji nazwy domeny.
Standard jest otwarty i każdy zainteresowany może wnieść wkład w jego rozwój. W opublikowano odpowiednie instrukcje.
Jak to działa
Wymiana żądań w ACME odbywa się przez HTTPS za pomocą komunikatów JSON. Aby korzystać z protokołu, należy zainstalować klienta ACME na docelowym węźle; przy pierwszym połączeniu z CA generuje on unikalną parę kluczy. Później będą one używane do podpisywania wszystkich komunikatów klienta i serwera.
Pierwszy komunikat zawiera dane kontaktowe właściciela domeny. Jest podpisywany kluczem prywatnym i wraz z kluczem publicznym wysyłany do serwera. Serwer sprawdza autentyczność podpisu i jeśli wszystko jest w porządku, rozpoczyna procedurę wydania certyfikatu SSL.
Aby uzyskać certyfikat, klient musi udowodnić serwerowi, że jest właścicielem domeny. W tym celu wykonuje określone działania, dostępne wyłącznie dla właściciela. Na przykład centrum certyfikacji może wygenerować unikalny token i poprosić klienta o umieszczenie go na stronie. Następnie CA tworzy żądanie webowe lub DNS, aby pobrać klucz z tego tokena.
Na przykład w przypadku HTTP klucz z tokena należy umieścić w pliku obsługiwanym przez serwer WWW. Przy weryfikacji DNS urząd certyfikacji będzie szukał unikalnego klucza w dokumencie tekstowym rekordu DNS. Jeśli wszystko się zgadza, serwer potwierdza, że klient przeszedł walidację, a CA wydaje certyfikat.

/ Flickr / /
Opinie
Według Według IETF ACME będzie szczególnie przydatny dla administratorów, którzy muszą pracować z wieloma nazwami domen. Standard pomoże powiązać każdą z nich z odpowiednim SSL.
Wśród zalet standardu eksperci wskazują również kilka . Mają one gwarantować, że certyfikaty SSL są wydawane wyłącznie rzeczywistym właścicielom domen. W szczególności do ochrony przed atakami DNS stosowany jest zestaw rozszerzeń , a dla ochrony przed DoS standard ogranicza szybkość wykonywania poszczególnych żądań — na przykład HTTP dla metody Sami deweloperzy ACME zalecają w celu zwiększenia bezpieczeństwa dodawanie entropii do zapytań DNS i wykonywanie ich z kilku punktów sieci.
Podobne rozwiązania
Do uzyskiwania certyfikatów stosuje się również protokoły i .
Pierwszy z nich został opracowany w Cisco Systems. Jego celem było uproszczenie procedury wydawania certyfikatów cyfrowych X.509 i zapewnienie jej maksymalnej skalowalności. Przed pojawieniem się SCEP proces ten wymagał aktywnego udziału administratorów systemów i słabo się skalował. Dziś protokół ten jest jednym z najpowszechniej stosowanych.
Jeśli chodzi o EST, umożliwia on klientom PKI uzyskiwanie certyfikatów przez bezpieczne kanały. Wykorzystuje TLS do przesyłania komunikatów i wydawania SSL, a także do powiązania CSR z nadawcą. Ponadto EST obsługuje metody kryptografii eliptycznej, co tworzy dodatkową warstwę ochrony.
Według , rozwiązania takie jak ACME powinny zyskać szersze zastosowanie. Oferują uproszczony i bezpieczny model konfiguracji SSL, a także przyspieszają cały proces.
Dodatkowe wpisy z naszego bloga firmowego:
Źródło: habr.com
