OpenSSL: CA w pięć minut…
Chcesz szybko postawić małe własne CA? Wszystko czego potrzebujesz to pakiet openssl oraz edytor tekstowy ![]()
Zakładanie prostego CA
Do szybkiego zbudowania CA w linuksie wystarczy kilka poleceń. Cały proces składa się z:
- przygotowania pliku konfiguracyjnego (a właściwie przerobienie pliku opnessl.cnf)
- wygenerowania odpowiedniej struktury katalogów
- wygenerowania samopodpisanego certyfikatu CA
Plik openssl.cnf zawiera sekcję [ CA_default ] opisującą domyślne CA. W tej sekcji należy podmienić wartość zmiennej dir na katalog, w którym umieszczone będzie CA. Tam też można dla wygody umieścić zmodyfikowaną wersję pliku konfiguracyjnego.
Kolejny krok to założenie struktury katalogów:
bash$ mkdir certs private newcerts crl bash$ touch index.txt bash$ echo -n '00' > serial
Ostatni krok to wygenerowanie samopodpisanego certyfikatu dla naszego CA:
bash$ openssl req -x509 -newkey rsa:2048 -keyout private/cakey.pem\ -out cacert.pem -days 3650 -config ./openssl.cnf
Na koniec pozostaje podać polecenia do generowania nowego certyfikatu przez nasze CA (pierwsze generuje rządanie certyfikatu a drugie podpisuje je kluczem prywatnym naszego CA):
bash$ openssl req -newkey rsa:1024 -keyout private/NAZWA.pem \ -out req.pem -days 365 -config ./openssl.cnf bash$ openssl ca -config ./openssl.cnf -policy policy_anything \ -in req.pem -out certs/NAZWA.pem
Aby sprawnić sobie proces generowania certyfikatów można wyedytować plik openssl.cnf i ustawić odpowiednio domyślne wartości pól z certyfikatów (np. Organization, Locality, itp…)
Do przechowywania tak skonstruowanego CA można wykporzystać zaszyfrowany pendrive.
