PostgreSQL klastera sertifikātu pārbaude¶
Instalēšanas laikā, atjaunošanas laikā vai vienkārši, lai noskaidrotu, kad beidzas PostgreSQL klastera sertifikātu derīgums, var būt noderīgi pārbaudīt ģenerēto sertifikātu saturu.
PostgreSQL klasteris izmanto šādus sertifikātus:
1 2 3 4 5 6 7 8 9 10 11 | |
ca.crt-
Saknes sertificēšanas iestādes sertifikāts. Tas pats sertifikāts atrodas direktorijos
/etc/patroni/un/etc/etcd/. client.crt-
PostgreSQL mezgla sertifikāts. Tas pats sertifikāts atrodas direktorijos
/etc/patroni/un/etc/etcd/. To izmantopatroniunetcdklienta saziņai starp mezgliem. client.key-
Atslēga, kas saistīta ar sertifikātu
client.crt. peer.crt-
Tas pats sertifikāts, kas
client.crt. To izmantoetcdiekšējai saziņai starp mezgliem. peer.key-
Tā pati atslēga, kas
client.key.
Tātad kopumā ir trīs elementi:
- saknes sertificēšanas iestādes sertifikāts (
/etc/etcd/ca.crt,/etc/patroni/ca.crt); - PostgreSQL mezgla sertifikāts (
/etc/etcd/client.crt,/etc/etcd/peer.crt,/etc/patroni/client.crt); - atslēga, kas saistīta ar PostgreSQL mezgla sertifikātu (
/etc/etcd/client.key,/etc/etcd/peer.key,/etc/patroni/client.key).
Sertifikāta derīguma beigu datuma pārbaude¶
Lai pārbaudītu sertifikāta derīguma beigu datumu, izmantojiet tālāk norādīto komandu.
Tālāk norādītajai komandai varat pielāgot mainīgo:
| Pielāgotā vērtība | Mainīgais | Komentārs |
|---|---|---|
EXPIRY_CERT |
Ceļš uz sertifikātu, kura derīguma beigu datums jāpārbauda. |
Vai arī aizpildiet lauku ar kādu no klastera sertifikātiem:
1 | |
Ja derīguma beigu datums ir pagājis, sertifikāts tiek uzskatīts par nederīgu.
Brīdinājums
Ja sertifikātu izdevušās sertificēšanas iestādes derīgums ir beidzies, arī sertifikāts tiek uzskatīts par nederīgu. Tāpēc pārbaudiet arī sertificēšanas iestādes derīguma beigu datumu.
Piemērs
Lai pārbaudītu sertifikāta /etc/patroni/client.crt derīguma beigu datumu, izmantojam šādu komandu:
1 | |
Izvade ir līdzīga šai:
1 | |
Šajā gadījumā sertifikāta derīgums beidzas 2030. gada 18. decembrī plkst. 14:04:09.
Sertifikāta Subject Alternative Names pārbaude¶
Lai pārbaudītu sertifikāta SAN (Subject Alternative Names), t. i., nosaukumus un IP adreses, kurām tas ir derīgs, izmantojiet tālāk norādīto komandu.
Tālāk norādītajai komandai varat pielāgot mainīgo:
| Pielāgotā vērtība | Mainīgais | Komentārs |
|---|---|---|
SAN_CERT |
Ceļš uz sertifikātu, kura SAN jāpārbauda. |
Vai arī aizpildiet lauku ar kādu no mezglu sertifikātiem:
1 | |
Ja DNS nosaukums vai IP adrese, ko izmanto savienojuma izveidei ar mezglu, nav iekļauta tā sertifikāta SAN, savienojums tiek uzskatīts par nederīgu. Tāpat, ja mezgls izveido savienojumu ar citu mezglu un tā uzrādītais sertifikāts neatbilst tā paša DNS nosaukumam vai IP adresei, attālais mezgls savienojumu noraida.
Piemērs
Lai pārbaudītu sertifikāta /etc/etcd/peer.crt SAN, izmantojam šādu komandu:
1 | |
Komanda atgriež rezultātu, kas līdzīgs šim:
1 2 | |
Šajā gadījumā sertifikāts aptver DNS nosaukumus PSQL_VIP un PSQL_2, kā arī IP adreses 192.168.1.4 un 192.168.1.2.
Pārbaude, kura sertificēšanas iestāde izdevusi sertifikātu¶
Ģenerējot sertifikātu, tam var pievienot X509v3 paplašinājumu Authority Key Identifier. Šajā paplašinājumā var glabāt tā izdevēja publiskās atslēgas jaucējkodu, kas atbilst izdevēja X509v3 paplašinājuma Subject Key Identifier saturam.
Informācija
Sertifikātiem, kas ģenerēti saskaņā ar PostgreSQL klastera instalēšanas dokumentāciju, ir paplašinājumi Authority Key Identifier un Subject Key Identifier.
Ja šie paplašinājumi ir pieejami, varat izgūt sertifikāta izdevēja publiskās atslēgas jaucējkodu un pēc tam salīdzināt to ar jaucējkodu tās CA paplašinājumā Subject Key Identifier, kurai būtu vajadzējis izdot sertifikātu, lai pārliecinātos, ka tā ir pareizā.
Lai izgūtu sertifikāta paplašinājuma Authority Key Identifier vērtību, izmantojiet tālāk norādīto komandu.
Tālāk norādītajai komandai varat pielāgot mainīgo:
| Pielāgotā vērtība | Mainīgais | Komentārs |
|---|---|---|
ISSUED_CERT |
Ceļš uz sertifikātu, kura izdevējs jāpārbauda. |
Vai arī aizpildiet lauku ar kādu no mezglu sertifikātiem:
1 | |
Informācija
Opcija -issuer izgūst izdevēja sertifikāta CN.
Lai izgūtu sertifikāta paplašinājuma Subject Key Identifier vērtību, izmantojiet tālāk norādīto komandu.
Tālāk norādītajai komandai varat pielāgot mainīgo:
| Pielāgotā vērtība | Mainīgais | Komentārs |
|---|---|---|
ISSUER_CA |
Ceļš uz tās sertificēšanas iestādes sertifikātu, kura tiek uzskatīta par izdevēju. |
Vai arī aizpildiet lauku ar kādu no sertificēšanas iestāžu sertifikātiem:
1 | |
Informācija
Opcija -subject izgūst sertifikāta CN.
Piemērs
Mēs vēlamies pārbaudīt, vai CA, kas parakstījusi sertifikātu failā /etc/patroni/client.crt, patiešām ir tā, kas atrodas failā /etc/patroni/ca.crt.
Vispirms ar šo komandu izgūstam sertifikāta /etc/patroni/client.crt X509v3 paplašinājuma Authority Key Identifier saturu:
1 | |
Komanda atgriež:
1 2 3 | |
Pēc tam ar šo komandu izgūstam CA /etc/patroni/ca.crt X509v3 paplašinājuma Subject Key Identifier saturu:
1 | |
Komanda atgriež:
1 2 3 | |
Abu izvažu salīdzinājums parāda, ka Key Identifier un CN ir identiski: sertifikāts failā /etc/patroni/ca.crt patiešām ir CA, kas parakstījusi sertifikātu failā /etc/patroni/client.crt.