Egy SSL tanúsítvány két részből áll: egy privát kulcsból, amely titokban marad a szerveren, és magából a tanúsítványból, amely a hozzá tartozó nyilvános kulcsot és a domain adatait tartalmazza. A tanúsítvány igényléséhez egy CSR-t (Certificate Signing Request, tanúsítvány-aláírási kérelem) kell küldeni a tanúsítványkiadónak. A CSR tartalmazza a nyilvános kulcsot és a domain nevét, a privát kulcsot viszont nem.
Kell egyáltalán CSR-t készítenem?
Sok esetben nem:
- Az ingyenes Let’s Encrypt tanúsítványoknál a kulcsot és a CSR-t az AutoSSL vagy az ACME-kliens (például a Certbot) automatikusan elkészíti.
- A fizetős tanúsítványoknál, ha a domain a nálunk lévő cPanel tárhelyén van, válassza az Ügyfélportálon az Autoinstall (via cPanel) módot: a portál létrehozza a kulcsot és a CSR-t, és a kész tanúsítványt is telepíti. Lásd: Fizetős SSL tanúsítvány beállítása és újrakiállítása.
Saját CSR-re akkor van szükség, ha a tanúsítványt más szerverre telepíti (saját VPS, másik szolgáltató, levelezőszerver, terheléselosztó, Windows-szerver), és a privát kulcsot ott szeretné létrehozni, ahol használni fogja. Ez a legbiztonságosabb megoldás, mert a kulcs így soha nem hagyja el a szervert.
1. lehetőség: az Ügyfélportálon
Ha a tanúsítvány beállításakor a Manual Enrollment módot választja, és nem illeszt be saját CSR-t, a portál a megadott adatokból (domain, ország, város, szervezet) létrehozza a privát kulcsot és a CSR-t. A privát kulcsot a kiadás után a tanúsítvány oldalán a Privát kulcs letöltése gombbal töltheti le, a tanúsítvánnyal együtt kell telepítenie.
2. lehetőség: a cPanelben
- Jelentkezzen be a cPanelbe, és a Biztonság (Security) részben kattintson az SSL/TLS ikonra.
- A Tanúsítvány-aláírási kérelmek (CSR) részben kattintson a Generate, view, or delete SSL certificate signing requests linkre.
- Kulcsnak hagyja az alapértelmezett Generate a new key beállítást.
- Adja meg a domaint (például
pelda.huéswww.pelda.hukülön sorban), valamint a szervezet adatait. - Kattintson a Generate gombra.
A cPanel megjeleníti a CSR-t (-----BEGIN CERTIFICATE REQUEST----- kezdetű szöveg), ezt illessze be az Ügyfélportálon. A privát kulcs a cPanelben marad, a kész tanúsítvány telepítésekor a cPanel automatikusan párosítja vele.
3. lehetőség: OpenSSL paranccsal
Saját szerveren a privát kulcs és a CSR egyetlen paranccsal létrehozható:
openssl req -new -newkey rsa:2048 -nodes \
-keyout pelda.hu.key -out pelda.hu.csr \
-subj "/C=HU/L=Budapest/O=Pelda Kft./CN=pelda.hu" \
-addext "subjectAltName=DNS:pelda.hu,DNS:www.pelda.hu"
- A
pelda.hu.keya privát kulcs, apelda.hu.csra CSR. - A
CN(Common Name) a fő domain, asubjectAltNamea tanúsítványba kerülő összes domain. - DV tanúsítványnál a szervezet (
O) megadása nem kötelező, OV és EV tanúsítványnál a cég hivatalos nevét adja meg.
Ellenőrzésképpen a CSR tartalmát így jelenítheti meg:
openssl req -in pelda.hu.csr -noout -text
Mit adjak meg a CSR-ben?
| Mező | Jelentése | Példa |
|---|---|---|
| Common Name (CN) | a fő domain | pelda.hu vagy *.pelda.hu |
| Organization (O) | a cég hivatalos neve (OV/EV esetén) | Pelda Kft. |
| Organizational Unit (OU) | nem kötelező, a tanúsítványkiadók már nem veszik figyelembe | |
| Locality (L) | város | Budapest |
| State (ST) | megye | Pest |
| Country (C) | kétbetűs országkód | HU |
Ékezetes domain esetén a domain punycode alakját adja meg (például a példa.hu helyett xn--plda-bpa.hu).
A privát kulcs védelme
- A privát kulcsot soha ne küldje el e-mailben, chaten vagy hibajegyben, és ne töltse fel nyilvános helyre (például Git-tárolóba).
- A kulcsfájl jogosultsága legyen szigorú, például
chmod 600 pelda.hu.key. - Minden újrakiállításnál érdemes új kulcsot és CSR-t készíteni.
- Ha a kulcs elveszett, a tanúsítvány nem használható tovább: készítsen új kulcsot és CSR-t, és állítsa ki újra a tanúsítványt. Ha a kulcs illetéktelen kézbe került, olvassa el ezt a cikket.