View
216
Download
0
Category
Preview:
Citation preview
1(15)
Tanúsítvány létrehozása Apache szerverhez
Apache és Tomcat szerveren kérelem létrehozása, tanúsítvány kérelem
beadása, kiadott tanúsítvány telepítése, tanúsítvány megújítása
OnlineSSL rendszeren keresztül
2(15)
1. Tartalomjegyzék
1. Tartalomjegyzék ........................................................................................................... 2
2. Bevezető ........................................................................................................................ 3
3. Korlátozások ................................................................................................................. 3
4. Előzetes követelmények – OpenSSL telepítése ....................................................... 3
4.1. OpenSSL telepítés Linux operációs rendszerre ....................................................... 3
4.2. OpenSSL telepítés Windows operációs rendszerre ................................................. 3
4.2.1. OpenSSL használata Windows alól ........................................................................... 4
5. Előzetes követelmények – néhány döntés, amit meg kell hozni ........................... 4
5.1. A tanúsítvány kiadás algoritmusa, a kiadó típusa ..................................................... 4
5.2. Az SSL tanúsítvány profilja......................................................................................... 5
6. Tanúsítvány kérelem létrehozása a szerveren .......................................................... 6
6.1. Példa a kulcsgenerálásra és a kérelem létrehozására................................................ 8
7. Tanúsítvány kérelem beadása ..................................................................................... 9
8. Domain ellenőrzés és kiadás ..................................................................................... 10
9. Kiadott tanúsítvány telepítése .................................................................................. 10
9.1. Példa a konfigurációs állományra ............................................................................. 10
10. OCSP Stapling ............................................................................................................ 12
10.1. Mi az OCSP Stapling? ............................................................................................... 12
10.1.1. Kapcsolat felépülése OCSP Stapling nélkül ........................................................... 12
10.1.2. Kapcsolat felépülése OCSP Stapling segítségével ................................................. 12
10.2. Előzetes követelmények 1 – A tűzfalakon szükséges engedélyezés ................... 12
10.3. Előzetes követelmények 2 – A gyökértanúsítványok beszerzése ........................ 13
10.3.1. SHA 256 kiadók ......................................................................................................... 13
10.3.2. SHA 1 kiadók .............................................................................................................. 13
10.3.3. Összes kiadó ............................................................................................................... 13
10.4. Az Apache 2.3 és későbbi szerver verziók beállítása ............................................ 14
11. Apache Tomcat beállítása ......................................................................................... 15
3(15)
2. Bevezető
E tájékoztató célja, hogy a szerveréhez létrehozandó SSL tanúsítvány igénylését minél könnyebben elvégezhesse.
Kérjük, olvassa el figyelmesen és kövesse a leírtakat.
Amennyiben bármilyen kérdése vagy problémája van, Ügyfélszolgálatunk az (40) 22-55-22 telefonszámon, az info@netlock.hu e-mail címen vagy személyesen a 1101 Budapest, Expo tér 5-7. szám alatt munkanapokon 9 és 17 óra között készséggel áll rendelkezésére.
3. Korlátozások
1. A wildcard (*) jelet tartalmazó tanúsítványok esetén a szabvány szerint a * jel egy domain név komponensnek kell, hogy megfeleljen.
Ez példánkon keresztül azt jelenti, hogy a *.valami.hu tanúsítvány megfelel az alma.valami.hu vagy barack.valami.hu domain névhez, de nem megfelelő a jonatan.alma.valami.hu és valami.hu domain nevekhez.
Az Internet Explorer ezt a szabványt maradéktalanul betartja.
2. Https protokoll korlátozás: a https protokoll titkosítatlanul csak az IP címet viszi át, ebből következően egy szerveren, egy IP cím esetén, csak egy tanúsítvány kerülhet elhelyezésre. Több site esetén megoldás lehet a többszörös CN/SAN, illetve a wildcard tanúsítvány.
3. Az SNI korlátozás: az előző probléma feloldására született az SNI technológia, amely azonban csak Windows Vista és Internet Explorer 7+ esetében érhető el, így haszna megkérdőjelezhető.
4. Előzetes követelmények – OpenSSL telepítése
Az OpenSSL-lel történő generáláshoz szükség lehet az OpenSSL telepítésére.
4.1. OpenSSL telepítés Linux operációs rendszerre
A gépen, ahol a kérelmet létrehozzák, szükség van az OpenSSL csomag telepítésére. Ezt telepítsük a disztribúciós csomag kezelőjével.
4.2. OpenSSL telepítés Windows operációs rendszerre
Az OpenSSL Windowson való futtatásához a következő alkalmazások telepítésére lesz szükség:
- OpenSSL win32 disztribúció
http://www.slproweb.com/products/Win32OpenSSL.html
- Microsoft Visual C++ 2008 Redistributable Package
http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en
4(15)
4.2.1. OpenSSL használata Windows alól
Az OpenSSL-t Windows esetén parancsról tudja használni. Ennek elérései:
1. A Start menü> Futtatás mezőbe írja be: cmd
2. Ezután a parancsokat a C:\OpenSSL\bin könyvtárban kell kiadni.
A parancssorban a következő parancsokat kell megadni:
C:
cd openssl\bin
5. Előzetes követelmények – néhány döntés, amit meg kell hozni
A tanúsítvány igénylése előtt érdemes pár dolgot megfontolni, és annak alapján választani majd a kérelem feltöltése során.
5.1. A tanúsítvány kiadás algoritmusa, a kiadó típusa
A kiadás során használt hash algoritmus meghatározza, hogy mely kiadóval kerül majd kiadásra a tanúsítvány, illetve hogy milyen kompatibilitási és egyéb problémák fordulhatnak elő.
SHA1 kiadóktól származó tanúsítvány
SHA1 kiadótól származó SHA1 algoritmust tartalmazó tanúsítvány
o a legtöbb eszköz, szoftver támogatja
o támogatása az iparági szabványoktól és egyéb szabályozásoktól függően hamarosan megszűnik
SHA-256 kiadók
SHA256 kiadótól származó SHA256 algoritmust tartalmazó tanúsítvány
o a használatához minimum Windows XP SP3 vagy Vista SP1 szükséges
o hosszú távon használhatók
o régebbi telefonos operációs rendszereken az ilyen tanúsítványok támogatás és frissítés hiányában nem használhatók.
Figyelem!
Az 2014-07-01-től az onlinessl.netlock.hu oldalon csak SHA256 algoritmusú tanúsítványok vásárolhatók.
5(15)
5.2. Az SSL tanúsítvány profilja
A kiadás során használt tanúsítványprofil határozza meg, hogy mire is lesz alkalmas a tanúsítvány.
Szerver tanúsítvány
Egyszerű, 1 domain nevet tartalmazó tanúsítvány, melynek a CN mezőjében a domain név található. Olyan esetekben javasolt, ahol 1 darab domain nevet kell hitelesíteni.
o csak egy teljes domain név hitelesítésére alkalmas, így a www.valami.hu címre szóló tanúsítvány csak a www.valami.hu cím eléréséhez jó, azonban a valami.hu cím eléréséhez NEM alkalmas;
o általában olyan egyszerű struktúrájú weboldalhoz javasolt, amely 1 címen érhető el.
Wildcard tanúsítvány
Olyan tanúsítvány, amely 1 domain nevet tartalmaz úgy, hogy a bal oldali tag helyén „*” szimbólum található.
o a *.valami.hu címre szóló tanúsítvány több aldomain hitelesítésére is alkalmas (például: www.valami.hu, mail.valami.hu, stb.). Mivel azonban a „*” szimbólumnak kötelezően helyettesítenie kell egy tagot, így NEM alkalmas a valami.hu cím elérésére;
o a „*” szimbólum a domainben csak bal oldalon szerepelhet;
o a régebbi telefonok (WM5, WM6, és egyéb régebbi telefonos operációs rendszerek) a Wildcard tanúsítványokat nem támogatják
o általában az UCC tanúsítvány javasolt helyette, mely tartalmazhat wildcard tagokat is;
UCC tanúsítvány
Olyan tanúsítvány, amely több domain nevet is tartalmazhat, akár wildcard taggal is kombinálva.
o a több domain név lehetővé teszi, hogy domain nevek széles kombinációját használhassuk egy szerveren;
o a valami.hu és *.valami.hu neveket tartalmazó tanúsítvány lehetővé teszi, hogy oldalunkat elérjük a valami.hu, valamint a www.valami.hu, web.valami.hu, mail.valami.hu, stb. címeken;
o a valami.hu, *.valami.hu, valami.eu, *.valami.eu neveket tartalmazó tanúsítvány lehetővé teszi, hogy oldalunkat elérjük a .hu és .eu tartományon keresztül az előző példának megfelelő variációkban is;
o a valami.hu és akarmi.hu neveket tartalmazó tanúsítvány lehetővé teszi, hogy oldalunkat egyaránt elérjük a valami.hu vagy az akarmi.hu néven is;
o A fenti példák kombinációi alapján több különböző domain név, több TLD (pl.: .hu, .eu) vagy al- és fődomain egyidejű használata esetén javasolt.
6(15)
Figyelem!
Az onlinessl.netlock.hu oldalon domain ellenőrzött (DV) tanúsítványok vásárolhatók, Wildcard vagy UCC tanúsítványok esetén a hagyományos tanúsítvány kiadást kell igénybe vennie.
6. Tanúsítvány kérelem létrehozása a szerveren
A kérelem létrehozásának lépései a következők:
1. Indítson parancssort (Windows), vagy terminál ablakot (Linux), majd adja ki következő parancsot:
openssl req -newkey rsa:2048 -keyout domainnev.key -out domainnev.csr
Ha JELSZÓVAL NEM AKARJA védeni a kulcsot, akkor a következő parancsot adja ki. (Jól jöhet, automatikusan induló szerverekhez, azonban biztonsági problémát okozhat.)
openssl req –newkey rsa:2048 -nodes -keyout domainnev.key -out
domainnev.csr
2. Ez a parancs létrehoz két fájlt, az egyik a privát kulcs (.key), a másik a tanúsítvány kérelem (.csr), amit a tanúsítvány kiállításhoz fog tudni használni.
3. Miután elindította a parancsot, a tanúsítvány kérelem számára ki kell töltenie néhány adatot.
Fontos!
A kitöltésnél ne használjon ékezetes betűket, valamint semmiféleképp ne töltse ki az esetleg felajánlott e-mail mezőt, mert SSL tanúsítványban e-mail cím nem szerepelhet.
Ha valamit az openssl kitöltve ajánl fel (szögletes zárójel közötti rész), akkor azt Enter gombbal elfogadhatjuk. Pont megadásával a mező alapértelmezett tartalma törlésre kerül.
UCC tanúsítvány esetén a kérelem beadását követően érdemes felénk is jelezni (a domain név megadásával), hogy az adott kérelem során milyen domain neveket szeretne még a tanúsítványban látni, hogy azokat szükség esetén pótolhassuk.
7(15)
A tanúsítvány-kérelem kitöltendő mezői:
Common name (CN) Domain név teljes formájában. (https:// nélkül) Pl: www.akarmi.hu, mail.akarmi.hu
Country code (C)
Locality (L)
State (ST)
Organization (O)
Organization Unit (OU)
Az Email cím ne legyen kitöltve, az extra attribútumok kitöltése felesleges.
A létrejövő fájlok közül a kulcsot (.key) tegye majd az Apache megfelelő könyvtárába, a létrejövő kérelmet (.csr) kell majd a Netlock rendszerbe feltöltenie.
8(15)
6.1. Példa a kulcsgenerálásra és a kérelem létrehozására
Jelszavas kulcsgenerálás és kérelem létrehozás adatmegadást megelőző lépései
(kétszer kell megadni a jelszót, amit meg kell jegyeznünk).
Jelszó nélküli teljes kulcsgenerálás
9(15)
7. Tanúsítvány kérelem beadása
Az imént létrehozott kérelem beadását az onlinessl.netlock.hu oldalon a Megrendeléseim menüpont alatt, a kérelem feltöltésnél tudja beadni (CSR feltöltés menüpont).
A kérelmet az itt található mezőbe kell beillesztenie a vágólapról.
10(15)
8. Domain ellenőrzés és kiadás
Az onlineSSL oldalon igényelt tanúsítványoknál a domain ellenőrző kódot kétszer vizsgálja a rendszer:
1. Amikor a folyamatban egyébként is ez a lépés következik.
2. Közvetlenül a tanúsítvány kiadása előtt.
Amennyiben a tanúsítvány kiadása nem sikerül, úgy érdemes ellenőrizni, hogy a domaincheck.html a megfelelő tartalommal elérhető-e még a szerveren. Ha elérhető, a tanúsítvány az összes többi lépés OK állapota esetén kiadásra kerül.
9. Kiadott tanúsítvány telepítése
A tanúsítvány a kiadása után letölthetővé válik. Ezt töltse le, majd másolja fel szerverére (az Apache megfelelő könyvtárába), majd konfigurálja be a szervert.
SHA256 kiadók és az onlinessl.netlock.hu oldalról igényelt tanúsítvány esetében azonban szükséges beállítani az SSLCertificateChainFile opciót is.
Ehhez le kell töltenie a következő kiadói tanúsítványok egyikét az alábbi címekről:
Közjegyzői (SHA256) www.netlock.hu/index.cgi?ca=caca
Üzleti (SHA256) www.netlock.hu/index.cgi?ca=cbca
Expressz (SHA256) www.netlock.hu/index.cgi?ca=ccca
OnlineSSL (SHA256) www.netlock.hu/index.cgi?ca=olsslgca
9.1. Példa a konfigurációs állományra
A következő példa konfigurációs állomány SSL és nem SSL kapcsolattal működő szerver konfigurálását mutatja be:
# Az SSL kikapcsolása általánosan
SSLDisable
# Kapcsolat fogadása 80 (http) és 443 (https) portokon
Listen 80
Listen 443
# alapértelmezett konfiguráció
SSLLogFile /utvonal/SSL_log
SSLCertificateFile /utvonal/tanusitvany.pem
SSLCertificateKeyFile /utvonal/kulcs.pem
#A CACHAIN file megadasa akkor szukseges, ha a kiadott tanusitvany koztes
#kiadotol szarmazik
#SSLCertificateChainFile /utvonal/onlinesslCA.pem
#SSLCertificateChainFile /utvonal/cbca.cer
#SSLCertificateChainFile /utvonal/ccca.cer
11(15)
#kliens ellenőrzés opciók
#nincs tanúsítványos kliens ellenőrzés opció,
#tanusítványlánc ellenőrzése 10 szintig
#(értelemszerűen ha kikapcsolva, akkor nincs
SSLVerifyClient 0
SSLVerifyDepth 10
#klienstől elfogadott kódolások
#(itt minden, kivéve NULL, ennél kevesebb javasolt)
#Ban = tiltva
#FIGYELEM!!! EZ EGY MINTA SZAKASZ, A SAJAT SZERVER BEALLITAS MEGTARTASA
#A KODOLASOK ESETEBEN JAVASOLT LEHET!!!
SSLRequiredCiphers NULL-MD5:RC4-MD5:EXP-RC4-MD5:RC2-CBC-MD5:IDEA-CBC-
MD5:DES-CBC-MD5:DES-CBC-SHA:DES-CBC3-MD5:DES-CBC3-SHA:DES-CFB-M1
SSLRequireCipher NULL-MD5 RC4-MD5 EXP-RC4-MD5 RC2-CBC-MD5 IDEA-CBC-MD5 DES-
CBC-MD5 DES-CBC-SHA DES-CBC3-MD5 DES-CBC3-SHA DES-CFB-M1
SSLBanCipher NULL
#logolás helye
SSLLogFile utvonal/ssl_log
#most jön az SSL védett szerver
<VirtualHost www.akarmi.hu:443>
SSLEnable
DocumentRoot /utvonal/
ScriptAlias /cgi-bin/ /utvonal/
TransferLog utvonal/fajl
ErrorLog utvonal/fajl
</VirtualHost>
# itt következik a nem SSL védett site (SSLDisable kikapcsolja a site-ra)
<VirtualHost www.akarmi.hu:80>
SSLDisable
DocumentRoot /utvonal/
ScriptAlias /cgi-bin/ /utvonal/
ErrorLog utvonal/fajl
TransferLog utvonal/fajl
</VirtualHost>
12(15)
10. OCSP Stapling
10.1. Mi az OCSP Stapling?
Az OCSP Stapling előnye a Stapling nélküli és a Stapling használatával a működés bemutatásának különbségein keresztül érzékelhető.
10.1.1. Kapcsolat felépülése OCSP Stapling nélkül
A visszavonás ellenőrzés OCSP segítségével hagyományos esetben a következőképpen történik:
1. A kliens böngészője felveszi a kapcsolatot a webszerverrel.
2. A kliens böngészője a megkapott tanúsítványt lekérdezi a tanúsítványkiadó szerverétől, OCSP vagy CRL esetében.
3. Létrejön a kapcsolat.
Mint látható, minden kliens maga kommunikál a tanúsítványkiadóval, ami magas terhelés esetén a felhasználó számára hosszú válaszidőket eredményezhet a kliens oldalon.
10.1.2. Kapcsolat felépülése OCSP Stapling segítségével
Az OCSP Stapling kihasználja azt, hogy a kapcsolat kiépülésekor a már kiépített kapcsolaton keresztül akár a visszavonási információk lekérését is el lehet küldeni a kliens számára.
A visszavonás ellenőrzés OCSP segítségével hagyományos esetben a következőképpen történik:
Előkészítő lépés: A webszerver időnként letölti a tanúsítványához tartozó OCSP válaszokat, majd meghatározott időnként frissíti azt.
1. A kliens böngészője felveszi a kapcsolatot a webszerverrel.
2. A webszerver elküldi az OCSP választ a kliens részére.
3. Létrejön a kapcsolat.
Mint látható, a szerver gyakorlatilag „előre betárazza” az OCSP a választ, így a kapcsolat kiépülésének sebessége nem függ külső szervertől. Emiatt ajánlott az OCSP Stapling beállítása!
10.2. Előzetes követelmények 1 – A tűzfalakon szükséges engedélyezés
Ahhoz, hogy az OCSP Stapling használható legyen, a szervezet tűzfalain a szerver számára engedélyezni kell a következő címek elérését.
http://www.netlock.hu
http://ocsp1.netlock.hu
http://ocsp2.netlock.hu
http://ocsp3.netlock.hu
Javasolt a fenti esetek DNS alapú beállítása, mert a szolgáltatások felhőbe költözése esetén az IP címek változhatnak.
13(15)
10.3. Előzetes követelmények 2 – A gyökértanúsítványok beszerzése
Ahhoz, hogy az OCSP Stapling működjön, egyes szervereken szükséges a gyökértanúsítványok és a köztes tanúsítványok szerver számára elfogadható módon történő telepítése.
Az elfogadni kívánt tanúsítványok kiadója alapján a következő tanúsítványok letöltése szükséges. Mivel egyes böngészők ezt automatikusan megnyitják, a tanúsítvány letöltéséhez célszerű Internet Explorer-t használni.
Az egyes kiadók elérése a következő alfejezetben olvasható.
10.3.1. SHA 256 kiadók
Az SHA256 algoritmusú kiadók a következő URL-eken érhetők el.
Legfelső szintű kiadó:
Arany (SHA256) www.netlock.hu/index.cgi?ca=gold
Köztes szintű kiadó:
Közjegyzői (SHA256) www.netlock.hu/index.cgi?ca=caca
Üzleti (SHA256) www.netlock.hu/index.cgi?ca=cbca
Expressz (SHA256) www.netlock.hu/index.cgi?ca=ccca
OnlineSSL (SHA256) www.netlock.hu/index.cgi?ca=olsslgca
10.3.2. SHA 1 kiadók
Az SHA1 algoritmusú kiadók a következő URL-eken érhetők el.
Legfelső szintű kiadók:
Közjegyzői (SHA1) www.netlock.hu/index.cgi?ca=kozjegyzoi
10.3.3. Összes kiadó
Természetesen használható egy előre összeállított csomag is erre a célra, amely a következő címen érhető el (javasolt az netlock_osszes_ssl_kiado.pem fájl használata a csomagból): http://www.netlock.hu/docs/letoltes/ssl_kiadok_csomag.zip
14(15)
10.4. Az Apache 2.3 és későbbi szerver verziók beállítása
Az Apache 2.3 vagy későbbi verziójú webszerver esetén az Apache konfigurációs állományban a következőket kell megadni az OCSP Stapling bekapcsolásához:
1. A Szerveren ellenőrizzük, hogy az OpenSSL legalább 0.9.8h verziója legyen megtalálható, ha ez nem így van, akkor frissítsük azt. Az ellenőrzés elvégezhető a következő paranccsal.
openssl –version
2. A szerver modul betöltő részéhez (általában a httpd.conf fájlban található ez a szakasz) adjuk hozzá a következő szakaszt:
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Ez a beállítás betölti a megfelelő modult. Ellenőrizzük, és szükség esetén telepítsük, ha ez nem található meg a szerverünkön.
3. A szerver SSL részt beállító szakaszához adjuk hozzá a következő bejegyzéseket:
#stapling bekapcsolása, cache es cache timeout beallitasa
SSLUseStapling On
SSLStaplingCache shmcb:/path/to/datafile[(512000)]
SSLStaplingStandardCacheTimeout 3600
SSLStaplingResponseMaxAge 3600
#a valaszado lekeres timeout beallitasa
SSLStaplingResponderTimeout 30
#hibas ocsp eseten a valasz timeoutja
SSLStaplingErrorCacheTimeout 600
#ha a szerver nem tud staplingolni, trylater-t küld a kliensnek
SSLStaplingReturnResponderErrors on
SSLStaplingFakeTryLater on
A „/path/to/datafile” értéket helyettesítsük be, javasolt lehet a következő:
/var/cache/mod_shmcb/stapcache
Az útvonal és a fájl legyen létrehozva, jogosultsága legyen a webszerver jogosultságával egyező.
A fentiek megadása és az Apache szerver újraindítása után az OCSP stapling- nak működnie kell.
15(15)
11. Apache Tomcat beállítása
Amennyiben a tanúsítványa PFX állományban (PKCS #12) található, akkor azt a Tomcat szerver közvetlenül is tudja használni.
A teendő a konnektor beállításaihoz a következő három sor hozzáfűzése:
keystoreType= "PKCS12 "
keystoreFile= "/utvonal/akarmi.pfx "
keystorePass= "akarmijelszo"/
Recommended