 Instrukcja instalacji i użytkowania aplikacji Urzędu Certyfikacyjnego
Daniel Rychcik 20-04-2000
0. Wstęp
Dokument ten zawiera instrukcję instalacji i użytkowania głównej
aplikacji urzędu certyfikacyjnego. Nie opisujemy w nim aspektów
teoretycznych PKI i naszej
struktury nazewnictwa - jest to po prostu instrukcja aplikacji.
Używana jest tu w wielu miejscach skrótowa terminologia PKI - w razie
kłopotów ze zrozumieniem niektórych skrótów zapraszamy do
słownika.
1. Instalacja
Proces tworzenia i instalacji oprogramowania Urzędu Certyfikatyjnego można
podzielić na kilka etapów:
1.1. Uzyskanie certyfikatu CA
Na początku należy ustalić w jakim miejscu używanej już hierarchii nazewnictwa
umieszczone będzie nowe CA. Ustala to z reguły nadrzędny Urząd Certyfikacyjny,
który wydaje certyfikat dla CA. Musimy zatem przydzielić sobie nazwę OU
(Organizational Unit) i uzyskać od nadrzędnego CA certyfikat CA
niższego rzędu wystawiony na odpowiedni DN.
Jeżeli tworzymy nowy główny urząd certyfikacyjny to ten etap pomijamy
(certyfikat główny wygeneruje instalator).
1.2. Instalacja pakietów pomocniczych
Przed instalacją właściwej aplikacji należy zainstalować i uruchomić
oprogramowanie pomocnicze. Szczegółowa instrukcja, jak to zrobić, znajduje
się
tutaj.
1.3. Instalacja aplikacji
Na początku należy rozpakować plik ca-1.0.tar.gz i wejść do
nowo powstałego katalogu ca-1.0 . Następnie należy uruchomić
program instalacyjny poleceniem ./install . Wszystkie te
działania należy wykonywać z poziomu administratora.
Przy instalacji użytkownik otrzymuje serię pytań:
# ./install
---------------------------------------
Urzad certyfikacyjny - instalacja
---------------------------------------
Podaj lokalizację polecenia openssl: /usr/local/bin/openssl
Podaj katalog glowny CA : /usr/local/UMK-CA
Podaj katalog dokumentow HTTP: /usr/local/apache/htdocs
Katalog /usr/local/apache/htdocs istnieje - OK
Podaj nazwe uzytkownika CA: admin
Podaj nazwe pliku PKCS#12 z kluczem CA (pusta=root CA):
W tym momencie możemy podać nazwę pliku z certyfikatem CA otrzymanym z urzędu
nadrzędnego - nie będą wtedy zadawane dodatkowe pytania o certyfikat, lub
nacisnąć ENTER - stworzony zostanie wtedy nowy główny CA. Wybierzmy tą drugą
możliwość:
Generowanie certyfikatu self-signed dla nowego CA
Podaj dane niezbedne do zidentyfikowania CA:
Kraj (2 litery): PL
Miasto: Torun
Organizacja: UMK
Symbol urzedu certyfikacyjnego: CA-UMK
Pelna nazwa urzedu: Urzad Certyfikacyjny UMK
Adres DNS dla serwera CA: ca.torun.net.pl
E-mail administratora urzedu: admin@ca.torun.net.pl
Czy dane sa prawidlowe? t
Podaj nowe haslo klucza prywatnego PEM: *******
Na ile dni wygenerowac certyfikat CA? 365
URL wystawianych certyfikatow: http://ca.torun.net.pl/
Po zakończeniu części instalacji związanej z certyfikatem CA następują
pytania związane z generowaniem certyfikatu klienta SSL dla administratora.
Praca z aplikacją będzie możliwa wyłącznie przy pomocy tego certyfikatu.
Generowanie certyfikatu administratora CA
Podaj nowe haslo klucza prywatnego administratora: *******
Podaj adres email administratora: admin@ca.torun.net.pl
Podaj imie i nazwisko administratora: Daniel Rychcik
Ostatnim etapem jest wygenerowanie certyfikatu SSL dla serwera Apache który
udostępnia aplikację. Ponieważ wszystkie niezbędne dane zostały już podane
wcześniej, program instalacyjny pyta tylko o hasło klucza prywatnego
serwera:
Generowanie certyfikatu serwera HTTPS
Podaj nowe haslo klucza prywatnego serwera: ********
Instalacja urzedu certyfikacyjnego zakonczyla sie pomyslnie
Certyfikat managera CA: /usr/local/UMK-CA/private/manager.p12
Certyfikat serwera WWW: /usr/local/UMK-CA/certs/server.crt
Klucz prywatny serwera: /usr/local/UMK-CA/private/server.key
1.4. Konfiguracja systemu
Do poprawnego działania aplikacji konieczna jest pewna ingerencja w pliki
konfiguracyjne serwera WWW. Oczywiście wymagane jest, aby serwer obsługiwał
połączenia szyfrowane, natomiast dodatkowym wymaganiem jest zdefiniowanie
odpowiednich praw dostępu do katalogu z plikami wykonywalnymi aplikacji.
W praktyce sprowadza się to do:
- Skopiowania wygenerowanego przy instalacji certyfikatu serwera
WWW do katalogu
/usr/local/apache/conf/ssl.crt , a klucza
prywatnego do /usr/local/apache/conf/ssl.crt .
- Skonfigurowanie Apache tak, aby używał tych certyfikatów do
połączeń HTTPS (opcje w
httpd.conf - dokładnie opisane
w
stosownym dokumencie.
- Zdefiniowania uprawnień do katalogu skryptów aplikacji tak, aby
tylko użytkownik
Manager posiadający pozostałe pola
DN o wartościach identycznych jak w certyfikacie CA miał
do nich dostęp, i to wyłącznie przez połączenie SSL.
- Administrator CA powinien załadować do swojej przeglądarki
WWW certyfikat klienta SSL wygenerowany przez instalator.
- Należy zainicjować bazę LDAP w następujący sposób:
- Skonfigurować
slapd (plik slapd.conf ) według
instrukcji
- Stworzyć plik
manager.ldif postaci:
dn: cn=Manager, ou=WMiI, o=UMK, c=PL
objectClass: organizationalperson
cn: Manager
userPassword: secret
- Wykonać polecenie:
ldif2ldbm -i Manager.ldif
- Wystartować serwer
slapd
- Utworzyć plik
umk.ldif postaci:
dn: ou=WMiI, o=UMK, c=PL
objectclass: organization
ou: Wydzial Matematyki i Informatyki
o: Uniwersytet Mikolaja Kopernika
- Wykonać polecenie:
ldapadd -p6666 -D "cn=Manager, ou=WMiI, o=UMK, c=PL
-w secret -f umk.ldif
2. Użytkowanie aplikacji
Uruchomienie aplikacji polega na wpisaniu w przeglądarce adresu URL
pod którym została zainstalowana - w naszym przypadku jest to np.
https://ca.torun.net.pl/ca.php.
Po przejsciu wszystkich formalności związanych z autentyfikacją klienta
(należy wybrać jako aktywny klucz otrzymany przy instalacji aplikaci)
otrzymujemy ekran startowy:
Korzystając z przycisków umieszczonych po lewej stronie możemy uruchamiać
główne funkcje programu:
2.1. Generowanie certyfikatów
Po wybraniu pierwszej opcji otrzymujemy ekran z listą typów certyfikatów
które możemy tworzyć. Przypomnijmy pokrótce ich zastosowanie:
- email - certyfikat klienta bezpiecznej poczty elektronicznej.
- client - certyfikat klienta bezpiecznych usług WWW.
- server - certyfikat serwera SSL.
- sslCA, emailCA, ssl_emailCA - certyfikaty
podrzędnych urzędów certyfikacyjnych uprawnionych do wydawania
określonych typów certyfikatów.
Po wybraniu typu certyfikatu wpisujemy właściwe dane certyfikowanej osoby/serwera. Pewne
pola mają ustalone wartości domyślne na danym poziomie PKI i nie można
ich zmieniać (O i OU wyższych rzędów). Interpretacja
pól CN i UN jest różna w zależności od typu certyfikatu:
- email - CN: identyfikator użytkownika, UN: imię
i nazwisko użytkownika.
- client - podobnie
- server - CN: pełny adres domeny serwera, UN:
pełna nazwa serwera.
- Certyfikaty CA - CN: symbol urzędu certyfikacyjnego,
UN: nazwa opisowa urzędu
Oto przykładowy formularz dla certyfikatu serwera SSL:
W przedostatnim polu wpisujemy liczbę dni na które wystawiany jest
certyfikat. Ważne jest, aby data ważności generowanego certyfikatu nie
przekraczała daty ważności certyfikatu CA, w przeciwnym wypadku bowiem
programy klienta mogą odmówić przyjęcia tak wygenerowanego certyfikatu.
(Aplikacja nie pozwala wpisać liczby dni większej niż okres ważności
certyfikatu CA).
Po wypełnieniu formularza z danymi certyfikowanego obiektu i naciśnięciu
przycisku Dalej pojawia się pole w którym należy
każdorazowo wpisać hasło klucza prywatnego CA - aplikacja ze względów
bezpieczeństwa (dostęp przez WWW) nie przechowuje tego hasła w trakcie pracy.
Po wpisaniu hasła CA następuje wygenerowanie certyfikatu i umieszczenie go
w bazie LDAP. Jeżeli certyfikat z danym DN już istnieje, to wyświetlany jest
komunikat o błędzie. Jeżeli operacja się udała, to certyfikat z kluczem
prywatnym zapisywany jest na dyskietce w formacie PKCS #12 (plik z
rozszerzeniem .p12 ).
2.2. Przeglądanie bazy certyfikatów
Po wybraniu przycisku Przeglądaj bazę otrzymujemy widok
bazy certyfikatów:
Po bazie możemy poruszać się używając przycisków umieszczonych w dolnej
części ekranu. Certyfikaty wyświetlane są w formie skróconej - widoczna jest wyłącznie
nazwa obiektu (CN) oraz e-mail (E). Aby dowiedzieć się szczegółów
odnośnie któregoś z certyfikatów należy wcisnąć przycisk Szczegóły
umieszczony z jego prawej strony. Otrzymamy wtedy następujący obraz:
Mamy tu wszystkie informacje, które były podawane przy tworzeniu
certyfikatu. Do widoku skróconego możemy powrócić naciskając przycisk
Powrót .
2.3. Przeszukiwanie bazy
Aplikacja umożliwia proste przeszukiwanie bazy według zadanego klucza. Po
wybraniu ikony Szukaj certyfikatu otrzymujemy formularz, w
którym możemy wpisać fragment tekstu i zaznaczyć w jakim polu certyfikatu
ma być on wyszukany:
Jeżeli zaznaczymy pole Dokładnie to przy wyszukiwaniu brane
pod uwagę będą jedynie te pola, które zawierają dokładnie taki sam tekst,
jak podany w ramce. Jeżeli opcja ta będzie nieaktywna, to wybrane zostaną
wszystkie certyfikaty zawierające ten tekst jako podsłowo.
Wyszukiwanie inicjujemy wciskając przycisk Szukaj . Otrzymamy
ekran identyczny jak w punkcie 2.2. z tą różnicą, że wyświetlone zostaną
tylko te certyfikaty, które spełniają kryteria wyszukiwania.
2.4. Sprawdzanie stanu serwera
Przedostatnia ikona umożliwia uzyskanie istotnych informacji o stanie
serwera urzędu certyfikacyjnego:
W sekcji Serwer LDAP parametr ping dotyczy
fizycznego połączenia serwera z siecią, natomiast parametr
Połączeniu mówi nam, czy serwer LDAP reaguje na zapytania.
W sekcji System plików widzimy, czy dostępny jest plik
wykoywalny OpenSSL oraz czy certyfikat CA jest w porządku. Ostatnie pole
dotyczy okresu ważności certyfikatu Urzędu - należy dbać o to, aby
certyfikat miał zawsze odpowiednio długi termin ważności.
2.5. Zakończenie programu
Po wybraniu ostatniej ikony następuje zerwanie połączenia z serwerem aplikacji
oraz zamknięcie okna przeglądarki i zakończenie pracy z programem.
3. Aplikacja użytkownika
Dotąd opisywana była tylko aplikacja administratora CA. Dostępna jest
również jej wersja dla użytkownika umożliwiająca wyłącznie przeszukiwanie
bazy i import certyfikatów. Wygląda ona bardzo podobnie do aplikacji
administratora, jak również jej obsługa jest analogiczna.
|