Monthly Archive for czerwiec, 2008

Co to jest Certificate Signing Request (CSR)?

Tłumacząc Certificate Signing Request (CSR) na język polski otrzymamy Żądanie Podpisania Certyfikatu i nazwa dokładnie wskazuje czym jest ten kilkuset bajtowy plik. CSR zawiera w sobie wszystkie informacje niezbędne do wystawienia certyfikatu SSL przez firmę będącą Certificate Authority (CA), na przykład przez GeoTrust czy RapidSSL. Certificate Signing Request to pierwszy i niezbędny krok w procesie uzyskania certyfikatu — swego rodzaju podanie.

Przykładowy plik CSR (UWAGA: to tylko przykład i nie możesz wykorzystać go do wygenerowania własnego certyfikatu! Jak stworzyć własny CSR dowiesz się z kolejnych postów):

-----BEGIN CERTIFICATE REQUEST-----
MIIB3jCCAUcCAQAwgZ0xCzAJBgNVBAYTAlBMMRQwEgYDVQQIEwtEb2xueSBTbGFz
azEQMA4GA1UEBxMHV3JvY2xhdzEjMCEGA1UEChMaSU1BR0lOIElUIE1hcmNpbiBF
bmdlbG1hbm4xETAPBgNVBAsTCER6aWFsIElUMRAwDgYDVQQDEwd0ZXN0b3dhMRww
GgYJKoZIhvcNAQkBFg1hZG1pbkB0ZXN0b3dhMIGfMA0GCSqGSIb3DQEBAQUAA4GN
ADCBiQKBgQC/aKZE92YDja9vRcI0xzJtBleEfoBHEkpEgGudoirEKsloNGBbTV9a
iTG2852o4WyfkEf+sF3Bx2DIlyIj53k9Ud2+OjbMRpQTNkDafk/MKL3vH7vFiWYn
iMkUmr8zRkFCV1J8nsfxE2Ue6427gc/QCEtNnoEOP7OFFVq3sjHXfQIDAQABoAAw
DQYJKoZIhvcNAQEFBQADgYEAZjoSVvigQzSrwGi/N2pIEqmRD/MJUQF63wfUmqci
O98XcEVFIY9EZEk7wa6oiUAVT1w+bwhmwEUvNfMGB75eaZD1WM9mZ4nisGpQlpCy
W+EoA12lDzHg2H3jUaBBZB8LWJJDAh5jPu6jbpb9LB/tLCrrWL0vsZtBVbfwP2Hq
UbE=
-----END CERTIFICATE REQUEST-----

Certificate Signing Request rozpoczyna się zawsze linią —–BEGIN CERTIFICATE REQUEST—– i kończy linią —–END CERTIFICATE REQUEST—–, które są jego integralną częścią (a nie tylko zawartość pomiędzy nimi).

CSR jest generowany najczęściej przez program (serwer), który będzie korzystał z certyfikatu SSL:

  • serwer WWW: np. Apache, Microsoft IIS, BEA WebLogic Server, Tomcat
  • serwer pocztowy: np. Microsoft Exchange
  • bramka SSL VPN: np. Cisco Secure Access Control Server (ACS), Citrix Secure Gateway
  • panel kontrolny: np. Plesk, cPanel, Ensim

W zależności od programu, proces generowania pliku CSR będzie przebiegał różnie. Jeśli masz dostęp do serwera, możesz zrobić to samodzielnie, jeśli nie, będziesz potrzebował pomocy firmy która utrzymuje Twoje serwery (na przykład firmy hostingowej, jeśli certyfikat SSL ma być wykorzystywany w Twoim serwisie WWW).

W kolejnych postach postaram się opisać krok po kroku proces generowania CSRa w kilku najpopularniejszych programach.

Jak to wygląda od strony technicznej

CSR zawiera w sobie informacje niezbędne do wykorzystania kryptografii asymetrycznej. Podczas tworzenia CSR tworzone są dwa pliki:

  • KEY — plik z kluczem, jest to klucz prywatny w parze kluczy
  • CSR — plik z Certificate Signing Request, który zawiera w sobie:
    • klucz publiczny z pary kluczy
    • informacje o Twojej firmie, adresie i nazwie domeny, dla której ma zostać wystawiony certyfikat

KEY i CSR tworzą nierozłączną parę i utrata jednego z nich sprawia, że drugi staje się nieprzydatny.

Po przesłaniu CSR do firmy będącej Certificate Authority (CA) informacje w nim zawarte zostają zweryfikowane, a następnie podpisane podpisem elektronicznym przez CA. W efekcie otrzymujesz gotowy certyfikat SSL, na który składają się znowu dwa pliki:

  • KEY — plik z kluczem, jest to klucz prywatny w parze kluczy (dokładnie ten sam co poprzednio)
  • CRT — plik z certyfikatem, który zawiera w sobie:
    • klucz publiczny z pary kluczy
    • informacje o Twojej firmie, adresie i nazwie domeny, dla której został wystawiony certyfikat
    • podpis firmy będącej CA (np. GeoTrust lub RapidSSL), która potwierdza powyższe informacje swoim podpisem elektronicznym

Ponownie, KEY i CRT tworzą nierozłączną parę i utrata jednego z nich sprawia, że drugi staje się nieprzydatny (w dalszej części postu opisuję co się stanie jeśli stracisz klucz lub certyfikat).

W uproszczeniu można więc przyjąć, że certyfikat SSL (CRT) to Certificate Signing Request (CSR) podpisany przez uznaną organizację (CA), która potwierdza prawdziwość danych zawartych w certyfikacie.

Przeglądarki internetowe, które ufają temu CA (na to wpływa jeden z parametrów certyfikatów — rozpoznawalność uniquity) mogą zweryfikować informacje o domenie zawarte w certyfikacie (a wcześniej w CSR) oraz, korzystając z klucza publicznego znajdującego się również w certyfikacie (a wcześniej w CSR), zaszyfrować transmisję w taki sposób, że odszyfrować ją będziesz w stanie tylko Ty, korzystając z klucza prywatnego KEY.

Informacje zawarte w CSR

Do wygenerowania CSR konieczne będzie udzielenie odpowiedzi na kilka pytań dotyczących domeny i Twojej firmy/organizacji. Poniżej znajduje się zestawienie wszystkich danych zawartych w CSR wraz z wyjaśnieniem i przykładami.

Uwaga: W CSR nie wolno używać następujących znaków: < > ~ ! @ # $ % ^ / \ ( ) ? , &. Nie należy również używać znaków diaktrycznych (polskich liter z “ogonkami”) — dopuszczalny jest wyłącznie alfabet łaciński.

Common Name (CN) (host name, FQDN)
Pełna (kwalifikowana) nazwa domeny, dla której zostanie wystawiony certyfikat SSL. Musi być idealnie zgodna z nazwą, z której będziesz korzystał.

Jeśli chcesz chronić adres URL https://www.twoja-domena.pl, wtedy generując CSR powinieneś wpisać “www.twoja-domena.pl”. Jeśli będzie to https://panel.twoja-domena.pl, wpisz “panel.twoja-domena.pl”. Jeśli nie chcesz używać żadnej subdomeny, a więc URLem będzie https://twoja-domena.pl, Common Name to “twoja-domena.pl”.

Nie podawaj określenia protokołu https:// ani żadnych innych znaków (np. znaków ” czy /)

Jeśli chcesz korzystać z certyfikatu typu wildcard (przeczytaj kiedy warto wybrać certyfikat wildcard), wpisz “*.twoja-domena.pl”.

Organization (O)
Dokładna nazwa Twojej firmy lub organizacji. Nie używaj skrótów, które nie są powszechnie stosowane (Sp. z o.o. jest OK).

Informacja musi być zgodna z wpisem w bazie WHOIS (dla domen .pl zweryfikuj informacje w bazie WHOIS na stronie NASKu).

Organizational Unit (OU)
Nazwa działu w Twojej organizacji, który będzie korzystał z certyfikatu. Na przykład: “Dział IT”. Pole może pozostać puste.

City lub Locality (L)
Nazwa miasta, w której siedzibę ma firma. Nie stosuj skrótów.

Informacja musi być zgodna z wpisem w bazie WHOIS.

State (S) or Province
Nazwa województwa, w którym siedzibę ma firma. Nie stosuj skrótów.

Oczywiście informacja musi być zgodna z wpisem w bazie WHOIS.

Country (C)
Dwuliterowy skrót nazwy Państwa, w którym siedzibę ma firma, musi być zgodny ze standardem ISO 3166-1.

Dla Polski będzie to PL.

Niezmiennie informacja musi być zgodna z wpisem w bazie WHOIS.

Email
Pole niewykorzystywane, może pozostać puste. Nie ma znaczenia, co zostanie tutaj wpisane.

Siła klucza (Key Bit Length)
Zaleca się stosowanie klucza o wielkości przynajmniej 1024 bitów. Jednocześnie większe klucze mogą niepoprawnie działać ze starszymi przeglądarkami. Optymalną wartością są 1024 bity. Jeśli chcesz otrzymać certyfikat firmy GeoTrust, to masz prawo do ponownego otrzymania certyfikatu w każdej chwili na podstawie nowego kompletu KEY i CSR — będziesz mógł w ten sposób zmienić siłę klucza w późniejszym terminie.

Co się stanie, jeśli stracę plik KEY, CSR, CRT?

Jeśli stracisz CSR, a certyfikat został już wystawiony, to nie ma żadnego problemu — posługujesz się kluczem KEY i certyfikatem CRT.

Jeśli stracisz CSR, a certyfikat nie został jeszcze wystawiony, to również nie ma żadnego problemu, ponieważ możesz wygenerować kolejny plik CSR.

Jeśli stracisz klucz KEY lub certyfikat CRT, to niestety pojawia się problem, ponieważ przestaje być możliwe korzystanie z certyfikatu SSL, którego składowymi były oba te pliki. Jeśli posiadasz certyfikat firmy GeoTrust, to masz prawo do ponownego wystawienia certyfikatu za darmo (na tę samą firmę, domenę i z identycznym okresem ważności). Wystarczy, że wygenerujesz ponownie KEY i CSR i przejdziesz standardową procedurę wystawiania certyfikatu. Jeśli masz certyfikat firmy RapidSSL, to niestety musisz ponownie zapłacić za wystawienie nowego certyfikatu.

W kolejnych postach opiszę jak wygenerować CSR w najpopularniejszych programach (Linux i Windows).

Odnowienia certyfikatów

Zebrałem poniżej kilka najczęściej powtarzających się pytań i odpowiedzi na temat odnowień certyfikatów SSL.

Ile kosztuje odnowienie certyfikatu?
W Certi.pl koszt odnowienia certyfikatu jest taki sam jak koszt zakupu nowego certyfikatu.

Kupiliśmy certyfikat w innej firmie, czy możemy odnowić go w Certi.pl?
Tak, jeśli jest to certyfikat firmy GeoTrust lub RapidSSL. Nie ma żadnego problemu, żeby odnowić taki certyfikat w Certi.pl, niezależnie od tego czy został zakupiony bezpośrednio u wystawcy czy przez pośrednika za granicą lub w Polsce. Skorzystaj z naszej atrakcyjnej oferty!

Mam certyfikat wystawiony przez inną firmę niż GeoTrust i RapidSSL (np. Verisign, Thawte, Comodo), któremu kończy się okres ważności, czy możecie zaproponować mi korzystne warunki?
Tak, bardzo prawdopodobne, że będziemy mogli przedstawić konkurencyjną ofertę na zakup nowego certyfikatu RapidSSL lub GeoTrust. Skontaktuj się z nami jak najszybciej w celu ustalenia szczegółów.

Czy jeśli zmienię firmę hostingową, to muszę odnowić certyfikat?
Nie. Odnowienie certyfikatu powoduje przedłużenie okresu jego ważności. Zmieniając firmę hostingową należy przenieść certyfikat (pliki CRT zawierający certyfikat i plik KEY zawierający klucz) lub zgłosić żądanie ponownego wystawienia certyfikatu. Ta druga opcja jest bezpieczniejsza (Twoja poprzednia firma hostingowa nie będzie mogła posługiwać się Twoim certyfikatem), ale dostępna jest wyłacznie dla certyfikatów firmy GeoTrust.

Czy muszę odnawiać certyfikat SSL co rok?
Oczywiście nie. Większość certyfikatów można kupić na okres dłuższy niż 1 rok (nawet do 6 lat w przypadku certyfikatów GeoTrust QuickSSL Premium i GeoTrust Power Server ID). Dodatkowo otrzymasz upust sięgający nawet 15%.

Masz pytania lub wątpliwości? Skontaktuj się z nami!

Nowy certyfikat: Power Server ID (certyfikat Unified Communications)

Niecały tydzień temu informowałem o wprowadzenie do oferty Certi.pl nowego certyfikatu True BusinessID Extended Validation, a już dzisiaj znowu poszerzamy ofertę.

Power Server ID to certyfikat doskonale sprawdzający się we wdrożeniach:

  • Microsoft Exchange Server 2007
  • Office Communications Server 2007
  • Live Communications Server 2005

Zamiast teoretyzować, zacytuję list naszego klienta opisującego konkretny przypadek:

Wdrażamy w firmie Microsoft Exchange 2007. Oczywiście cała komunikacja użytkownicy<->serwer musi być szyfrowana. Nie chcemy generować własnych certyfikatów (zbyt dużo kłopotów z instalowaniem CA root na urządzeniach), chcemy skorzystać z gotowych.

Czy jedyną opcją jest certyfikat True BusinessID Wildcard? Czy można go uzyskać bez przesyłania dokumentów firmy do Geotrustu? A może zastosować kilka certyfikatów QuickSSL Premium? Tylko, że to będzie wymagało wiele adresów IP.

Wymagania dla certyfikatu:

  • rozpoznawany przez urządzenia mobilne (kilka osób w firmie aktywnie korzysta z PDA)
  • certyfikat musi spełniać wymagania Exchange 2007 Autodiscover Service
  • chcemy chronić subdomeny:
    • poczta.MY.pl
    • smtp.MY.pl
    • autodiscover.MY.pl (wspomniany Autodiscover Service)
  • im rozwiązanie będzie prostsze w zarządzaniu, tym lepiej
  • ważność certyfikatu 2-3 lata
  • chcemy uniknąć potrzeby tłumaczenia i wysyłania dokumentów z KRS w celu uzyskania certyfikatu

Proszę zaproponować nam rozsądne rozwiązanie.

Oczywiście cena ma znaczenie ;)

Certyfikat GeoTrust Power Server ID jest wręcz “szyty na miarę” właśnie do takich zastosowań.

Zalety Power Server ID:

  • certyfikat typu Unified Communications Certificate (Microsoft zaleca ich wykorzystywanie takich certyfikatów we wdrożeniach Microsoft Exchange 2007
  • ochrona do czterech różnych subdomen w jednym certyfikacie! (możesz więc zabezpieczyć wszystkie usługi: OWA, ActiveSync, Outlook Anywhere, Autodiscover, POP3, IMAP4 i Unified Messaging jedym certyfikatem), żadnych problemów z wieloma różnymi certyfikatami zainstalowanymi na różnych adresach IP
  • rozpoznawany również przez urządzenia mobilne (smartphone’y, PDA)
  • dynamiczna pieczęć i gwarancja na 250.000USD (zobacz opis tych parametrów we wcześniejszym poście Parametry certyfikatów SSL)
  • wystawienie nie wymaga przesyłania dokumentów firmy, tak jak w przypadku certyfikatu True BusinessID, certyfikat jest wystawiany w ciągu kilku godzin
  • atrakcyjna cena w porównaniu do zakupu wielu pojedynczych certyfikatów lub certyfikatu typu wildcard

Możesz oczywiście wykorzystywać Power Server ID w dowolnych zastosowaniach, a nie tylko z produktami Microsoftu :)

Jeśli jednak planujesz instalować Exchange’a, Power Server ID jest stworzony właśnie dla Ciebie!