Aqbeż għall-kontenut

Verifika taċ-ċertifikati tal-cluster PostgreSQL

Waqt l-installazzjoni, waqt tiġdid, jew sempliċement biex issir taf meta jiskadu ċ-ċertifikati tal-cluster PostgreSQL, jista’ jkun utli li teżamina l-kontenut taċ-ċertifikati ġġenerati.

Iċ-ċertifikati li juża l-cluster PostgreSQL huma dawn li ġejjin:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
/etc/etcd/
├── ca.crt
├── client.crt
├── client.key
├── peer.crt
└── peer.key

/etc/patroni/
├── ca.crt
├── client.crt
└── client.key
ca.crt

Ċertifikat tal-awtorità taċ-ċertifikazzjoni għerq. L-istess ċertifikat jinsab fid-direttorji /etc/patroni/ u /etc/etcd/.

client.crt

Ċertifikat tan-nodu PostgreSQL. L-istess ċertifikat jinsab fid-direttorji /etc/patroni/ u /etc/etcd/. Jintuża minn patroni u etcd għall-komunikazzjonijiet tal-klijent bejn in-nodi.

client.key

Ċavetta assoċjata maċ-ċertifikat client.crt.

peer.crt

L-istess ċertifikat bħal client.crt. Jintuża għall-komunikazzjonijiet interni ta’ etcd bejn in-nodi.

peer.key

L-istess ċavetta bħal client.key.

Għalhekk hemm tliet elementi b’kollox:

  • iċ-ċertifikat tal-awtorità taċ-ċertifikazzjoni għerq (/etc/etcd/ca.crt, /etc/patroni/ca.crt);
  • iċ-ċertifikat tan-nodu PostgreSQL (/etc/etcd/client.crt, /etc/etcd/peer.crt, /etc/patroni/client.crt);
  • iċ-ċavetta assoċjata maċ-ċertifikat tan-nodu PostgreSQL (/etc/etcd/client.key, /etc/etcd/peer.key, /etc/patroni/client.key).

Verifika tad-data tal-iskadenza ta’ ċertifikat

Biex tivverifika d-data tal-iskadenza ta’ ċertifikat, uża l-kmand ta’ hawn taħt.

Tista’ tippersonalizza l-varjabbli għall-kmand li ġej:

Valur personalizzat Varjabbli Kumment
EXPIRY_CERT Mogħdija taċ-ċertifikat li trid tivverifika d-data tal-iskadenza tiegħu.

Jew imla l-qasam b’wieħed miċ-ċertifikati tal-cluster:

1
openssl x509 -in EXPIRY_CERT -noout -enddate

Jekk id-data tal-iskadenza tkun għaddiet, iċ-ċertifikat jitqies invalidu.

Twissija

Jekk l-awtorità taċ-ċertifikazzjoni li ħarġet iċ-ċertifikat tkun skadiet, iċ-ċertifikat jitqies ukoll invalidu. Għalhekk ivverifika wkoll id-data tal-iskadenza tal-awtorità taċ-ċertifikazzjoni.

Eżempju

Biex nivverifikaw id-data tal-iskadenza taċ-ċertifikat /etc/patroni/client.crt, nużaw il-kmand li ġej:

1
openssl x509 -in /etc/patroni/client.crt -noout -enddate

Ir-riżultat huwa simili għal dan:

1
notAfter=Dec 18 14:04:09 2030 GMT

Hawnhekk, iċ-ċertifikat jiskadi fit-18 ta’ Diċembru 2030 fl-14:04:09.

Verifika tal-ismijiet alternattivi (SAN) ta’ ċertifikat

Biex tivverifika l-ismijiet SAN (Subject Alternative Names) ta’ ċertifikat, jiġifieri l-ismijiet u l-indirizzi IP li għalihom huwa validu, uża l-kmand ta’ hawn taħt.

Tista’ tippersonalizza l-varjabbli għall-kmand li ġej:

Valur personalizzat Varjabbli Kumment
SAN_CERT Mogħdija taċ-ċertifikat li trid tivverifika l-ismijiet SAN tiegħu.

Jew imla l-qasam b’wieħed miċ-ċertifikati tan-nodu:

1
openssl x509 -in SAN_CERT -noout -ext subjectAltName

Jekk l-isem DNS jew l-indirizz IP użat biex tikkonnettja ma’ nodu ma jkunx fost l-ismijiet SAN taċ-ċertifikat tiegħu, il-konnessjoni titqies invalida. Bl-istess mod, meta nodu jiftaħ konnessjoni ma’ nodu ieħor, jekk iċ-ċertifikat li jippreżenta ma jaqbilx mal-isem DNS jew mal-indirizz IP tiegħu stess, in-nodu remot jirrifjuta l-konnessjoni.

Eżempju

Biex nivverifikaw l-ismijiet SAN taċ-ċertifikat /etc/etcd/peer.crt, nużaw il-kmand li ġej:

1
openssl x509 -in /etc/etcd/peer.crt -noout -ext subjectAltName

Il-kmand jagħti riżultat simili għal dan:

1
2
X509v3 Subject Alternative Name:
    DNS:PSQL_VIP, DNS:PSQL_2, IP Address:192.168.1.4, IP Address:192.168.1.2

Hawnhekk, iċ-ċertifikat ikopri l-ismijiet DNS PSQL_VIP u PSQL_2, kif ukoll l-indirizzi IP 192.168.1.4 u 192.168.1.2.

Verifika ta’ liema awtorità taċ-ċertifikazzjoni ħarġet ċertifikat

Meta jiġi ġġenerat ċertifikat, tista’ tiżdied miegħu l-estensjoni X509v3 Authority Key Identifier. Din l-estensjoni tista’ taħżen il-hash taċ-ċavetta pubblika tal-emittent tiegħu, li jaqbel mal-kontenut tal-estensjoni X509v3 Subject Key Identifier tal-emittent.

Informazzjoni

Iċ-ċertifikati ġġenerati billi ssegwi d-dokumentazzjoni tal-installazzjoni tal-cluster PostgreSQL għandhom l-estensjonijiet Authority Key Identifier u Subject Key Identifier.

Jekk dawn l-estensjonijiet ikunu preżenti, tista’ tikseb il-hash taċ-ċavetta pubblika tal-emittent ta’ ċertifikat, imbagħad tqabblu mal-hash fl-estensjoni Subject Key Identifier tal-awtorità taċ-ċertifikazzjoni (CA) li suppost ħarġet iċ-ċertifikat, biex tikkonferma li hija dik it-tajba.

Biex tikseb il-valur tal-estensjoni Authority Key Identifier ta’ ċertifikat, uża l-kmand ta’ hawn taħt.

Tista’ tippersonalizza l-varjabbli għall-kmand li ġej:

Valur personalizzat Varjabbli Kumment
ISSUED_CERT Mogħdija taċ-ċertifikat li trid tivverifika l-emittent tiegħu.

Jew imla l-qasam b’wieħed miċ-ċertifikati tan-nodu:

1
openssl x509 -in ISSUED_CERT -noout -issuer -ext authorityKeyIdentifier

Informazzjoni

L-għażla -issuer tikseb il-valur CN taċ-ċertifikat emittent.

Biex tikseb il-valur tal-estensjoni Subject Key Identifier ta’ ċertifikat, uża l-kmand ta’ hawn taħt.

Tista’ tippersonalizza l-varjabbli għall-kmand li ġej:

Valur personalizzat Varjabbli Kumment
ISSUER_CA Mogħdija taċ-ċertifikat tal-awtorità taċ-ċertifikazzjoni li suppost hija l-emittent.

Jew imla l-qasam b’wieħed miċ-ċertifikati tal-awtorità taċ-ċertifikazzjoni:

1
openssl x509 -in ISSUER_CA -noout -subject -ext subjectKeyIdentifier

Informazzjoni

L-għażla -subject tikseb il-valur CN taċ-ċertifikat.

Eżempju

Irridu nivverifikaw li l-awtorità taċ-ċertifikazzjoni (CA) li ffirmat iċ-ċertifikat fil-fajl /etc/patroni/client.crt hija tassew dik fil-fajl /etc/patroni/ca.crt.
L-ewwel nett, niksbu l-kontenut tal-estensjoni X509v3 Authority Key Identifier taċ-ċertifikat /etc/patroni/client.crt bil-kmand li ġej:

1
openssl x509 -in /etc/patroni/client.crt -noout -issuer -ext authorityKeyIdentifier

Li jagħti:

1
2
3
issuer=CN = BDD-ROOT-CA
X509v3 Authority Key Identifier:
    38:B3:EC:CD:20:90:80:A4:B3:60:F8:E5:7B:98:92:3B:7D:26:06:2B

Imbagħad niksbu l-kontenut tal-estensjoni X509v3 Subject Key Identifier tal-awtorità taċ-ċertifikazzjoni /etc/patroni/ca.crt bil-kmand li ġej:

1
openssl x509 -in /etc/patroni/ca.crt -noout -subject -ext subjectKeyIdentifier

Li jagħti:

1
2
3
subject=CN = BDD-ROOT-CA
X509v3 Subject Key Identifier:
    38:B3:EC:CD:20:90:80:A4:B3:60:F8:E5:7B:98:92:3B:7D:26:06:2B

Meta nqabblu ż-żewġ riżultati, naraw li l-valuri Key Identifier u CN huma identiċi: iċ-ċertifikat fil-fajl /etc/patroni/ca.crt huwa tassew l-awtorità taċ-ċertifikazzjoni li ffirmat iċ-ċertifikat fil-fajl /etc/patroni/client.crt.