Wygasł certyfikat TLS

Witam

Przegapiłem datę wygaśnięcia certyfikatu TLS i nie działa EZD tylko nie mogę wkleić w panelu Ranchera nowego certyfikatu bo panel się nie wczytuje. Serwer odrzuca połączenie. Gdzie szukać problemu?

Rancher zwraca, że serwer odrzucił połączenie.

Który cert Ci wygasł? Ten od ezd czy od rke2? W przypadku tego drugiego trochę chyba trzeba się nagimnastykować bo pewnie sam restart usługi rke2 nie odświeży certyfikatu.

Jeżeli chodzi o certyfikat rke2 to:

Certyfikat w namespace cattle-system → secret o nazwie serving-cert po roku traci ważność jeśli klaster RKE2 lub k3S nie zostanie zrestartowany.

Rozwiązanie 1 - Przed upływem czasu można dodatkowo dla pewności zastosować

- Stop RKE2

systemctl stop rke2-server

- Rotate certificates

rke2 certificate rotate

- Start RKE2

systemctl start rke2-server

Rozwiązanie 2 - po upływie czasu

Zweryfikować do kiedy był ważny certyfikat namespace cattle-system → secret o nazwie serving-cert w interfejsie Ranchera, lub polecenie:

kubectl -n cattle-system get secret serving-cert -o jsonpath='{.data.tls\.crt}' \
  | base64 -d \
  | openssl x509 -noout -dates

- Należy zmienić datę na taką żeby certyfikat jeszcze działał i czas oraz wyłączyć komunikację z serwerem czasu NTP.

timedatectl set-ntp no
timedatectl set-time '20XX-12-31 16:14:50'

- Usuwamy secret w rancher namespace cattle-system serving-cert

kubectl delete secret serving-cert -n cattle-system

- Włączamy ponownie synchronizację czasu

timedatectl set-ntp yes

- Ewentualnie weryfikujemy czas systemu

timedatectl status

- Wykonujemy rotate

rke2 certificate rotate

- Restartujemy RKE2

systemctl restart rke2-server

Konieczna też może być weryfikacja logów Ranchera czy na pewno to kwestia certyfikatu RKE2

Wygasł certyfiakt TLS dla EZD i jak chciałem go podmienić w rancherze to rancher przestał się uruchamiać.

Dopiero weekendowa analiza wszystkiego dała odpowiedzi.

Niestety mój błąd, ze nie zaglądałem do ranchera za często i nie zauważyłem, ze baza etcd się zapełniła i przez to rancher nie wstawał tylko resetował sie w koło. W dockerze niestety nie jest łatwo to naprawić przez ciągłą pętlę uruchamiania kontenera ranchera. Skończyło się na postawieniu na nowo ranchera i imporcie klastra.