From 7173da31d4a2b4eeef395bef37a702e35f31191c Mon Sep 17 00:00:00 2001 From: Andreas Knuth Date: Mon, 2 Mar 2026 15:43:54 -0600 Subject: [PATCH] fix --- basic_setup/cloudflareMigrationDns.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/basic_setup/cloudflareMigrationDns.sh b/basic_setup/cloudflareMigrationDns.sh index 4ca7949..6fe0381 100755 --- a/basic_setup/cloudflareMigrationDns.sh +++ b/basic_setup/cloudflareMigrationDns.sh @@ -212,11 +212,17 @@ echo "" echo "--- 5. Root Domain SPF ---" # Aktuellen SPF-Record lesen +# Cloudflare liefert TXT-Content manchmal mit Anführungszeichen, +# daher erst alle TXT-Records holen und dann filtern CURRENT_SPF=$(curl -s -X GET "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records?type=TXT&name=$DOMAIN_NAME" \ -H "Authorization: Bearer $CF_API_TOKEN" -H "Content-Type: application/json" \ - | jq -r '[.result[] | select(.content | startswith("v=spf1"))][0].content // ""') + | jq -r '[.result[] | select(.content | gsub("^\"|\"$";"") | startswith("v=spf1"))][0].content // ""') + +# Anführungszeichen sofort entfernen +CURRENT_SPF=$(echo "$CURRENT_SPF" | tr -d '"') if [ -n "$CURRENT_SPF" ]; then + echo " 📋 Aktueller SPF: $CURRENT_SPF" # Prüfe ob amazonses.com schon drin ist if echo "$CURRENT_SPF" | grep -q "include:amazonses.com"; then echo " 🆗 SPF enthält bereits include:amazonses.com" @@ -225,8 +231,7 @@ if [ -n "$CURRENT_SPF" ]; then NEW_SPF=$(echo "$CURRENT_SPF" | sed 's/v=spf1 /v=spf1 include:amazonses.com /') # ?all → ~all upgraden NEW_SPF=$(echo "$NEW_SPF" | sed 's/?all/~all/') - # Anführungszeichen entfernen falls vorhanden - NEW_SPF=$(echo "$NEW_SPF" | tr -d '"') + echo " 📝 Neuer SPF: $NEW_SPF" ensure_record "TXT" "$DOMAIN_NAME" "$NEW_SPF" false fi else