#!/bin/bash
# Skrypt naprawy certyfikatu SSL dla NAKIVO Transporter
# Problem: curlCode: 90 - Peer certificate cannot be authenticated with known CA certificates
# Rozwiązanie: Dodanie certyfikatów Let's Encrypt do s3-trust.pem

echo "=== Krok 1: Pobieranie certyfikatów Let's Encrypt ==="
curl -sS https://letsencrypt.org/certs/isrgrootx1.pem.txt -o /tmp/isrg-root-x1.pem
curl -sS https://letsencrypt.org/certs/isrg-root-x2.pem.txt -o /tmp/isrg-root-x2.pem
curl -sS https://letsencrypt.org/certs/lets-encrypt-r3.pem.txt -o /tmp/lets-encrypt-r3.pem

echo "=== Krok 2: Sprawdzenie pobranych certyfikatów ==="
echo "--- ISRG Root X1 ---"
cat /tmp/isrg-root-x1.pem
echo ""
echo "--- Let's Encrypt R3 ---"
cat /tmp/lets-encrypt-r3.pem
echo ""

echo "=== Krok 3: Backup obecnego s3-trust.pem ==="
sudo cp /opt/nakivo/transporter/s3-trust.pem /opt/nakivo/transporter/s3-trust.pem.backup-$(date +%Y%m%d_%H%M%S)

echo "=== Krok 4: Dodanie certyfikatów do s3-trust.pem ==="
cat /tmp/isrg-root-x1.pem >> /opt/nakivo/transporter/s3-trust.pem
cat /tmp/isrg-root-x2.pem >> /opt/nakivo/transporter/s3-trust.pem
cat /tmp/lets-encrypt-r3.pem >> /opt/nakivo/transporter/s3-trust.pem

echo "=== Krok 5: Weryfikacja - ostatnie 30 linii s3-trust.pem ==="
tail -30 /opt/nakivo/transporter/s3-trust.pem

echo "=== Krok 6: Restart usługi NAKIVO Transporter ==="
sudo systemctl restart nakivo-transporter

echo "=== Krok 7: Sprawdzenie statusu usługi ==="
sudo systemctl status nakivo-transporter --no-pager

echo "=== Krok 8: Oczekiwanie 10 sekund na start usługi ==="
sleep 10

echo "=== Krok 9: Sprawdzenie logów (ostatnie 50 linii) ==="
tail -50 /opt/nakivo/transporter/bh-logs/bhsvc.log

echo ""
echo "=== ZROBIONE ==="
echo "Sprawdź logi czy błędy curlCode: 90 nadal występują."
echo "Jeśli tak - uruchom: openssl s_client -connect hel1.your-objectstorage.com:443 -showcerts"
