33800 Docs

← Retour
#!/bin/bash # =========================================== # Liste les wildcards DNS configurés # Usage: ./list-wildcards.sh # =========================================== set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" source "$SCRIPT_DIR/../lib/config.sh" source "$SCRIPT_DIR/../lib/colors.sh" print_header "Wildcards DNS - $O2SWITCH_DOMAIN" # Récupérer la zone DNS RESPONSE=$(curl -s -u "$O2SWITCH_USERNAME:$O2SWITCH_PASSWORD" \ "$O2SWITCH_API_URL/json-api/cpanel?cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone&domain=$O2SWITCH_DOMAIN") # Vérifier si la réponse est valide if ! echo "$RESPONSE" | grep -q '"status":1'; then log_error "Erreur lors de la récupération des enregistrements DNS" exit 1 fi echo "" echo -e "┌─────────────────────────────────────────┬─────────────────┬──────────┬────────┐" echo -e "│ ${BOLD}Wildcard${NC} │ ${BOLD}IP${NC} │ ${BOLD}TTL${NC} │ ${BOLD}Line${NC} │" echo -e "├─────────────────────────────────────────┼─────────────────┼──────────┼────────┤" # Filtrer les wildcards (commencent par *) echo "$RESPONSE" | jq -r '.cpanelresult.data[0].record[] | select(.type == "A" and (.name | startswith("*"))) | [.name, .address, .ttl, .line] | @tsv' 2>/dev/null | while IFS=$'\t' read -r name ip ttl line; do printf "│ ${GREEN}%-39s${NC} │ %-15s │ %-8s │ %-6s │\n" "$name" "$ip" "$ttl" "$line" done echo -e "└─────────────────────────────────────────┴─────────────────┴──────────┴────────┘" echo "" log_info "Pour ajouter un wildcard: ./add-wildcard.sh <prefix>" log_info "Exemple: ./add-wildcard.sh 33802 → *.33802.$O2SWITCH_DOMAIN"