12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #!/bin/bash
- red='\e[1;31m'
- green='\e[0;32m'
- NC='\e[0m'
- MYIP=$(wget -qO- https://icanhazip.com);
- echo "Checking VPS"
- apt install jq curl -y
- DOMAIN=kayyo.online
- sub=$(</dev/urandom tr -dc a-z0-9 | head -c4)
- SUB_DOMAIN=${sub}.kayyo.online
- WILDCARD=*.${sub}.kayyo.online
- CF_ID=5faktadunia@gmail.com
- CF_KEY=b2185bbc8fc43ebbf4132daf1eee48a32b5d3
- set -euo pipefail
- IP=$(wget -qO- https://icanhazip.com);
- echo "Updating DNS for ${SUB_DOMAIN}..."
- ZONE=$(curl -sLX GET "https://api.cloudflare.com/client/v4/zones?name=${DOMAIN}&status=active" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" | jq -r .result[0].id)
- RECORD=$(curl -sLX GET "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records?name=${SUB_DOMAIN}" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" | jq -r .result[0].id)
- if [[ "${#RECORD}" -le 10 ]]; then
- RECORD=$(curl -sLX POST "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" \
- --data '{"type":"A","name":"'${SUB_DOMAIN}'","content":"'${IP}'","ttl":120,"proxied":false}' | jq -r .result.id)
- fi
- RESULT=$(curl -sLX PUT "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records/${RECORD}" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" \
- --data '{"type":"A","name":"'${SUB_DOMAIN}'","content":"'${IP}'","ttl":120,"proxied":false}')
- echo "Host : $SUB_DOMAIN"
- echo $SUB_DOMAIN > /root/domain
- sleep 5
- echo "Updating DNS for ${WILDCARD}..."
- ZONE=$(curl -sLX GET "https://api.cloudflare.com/client/v4/zones?name=${DOMAIN}&status=active" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" | jq -r .result[0].id)
- RECORD=$(curl -sLX GET "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records?name=${WILDCARD}" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" | jq -r .result[0].id)
- if [[ "${#RECORD}" -le 10 ]]; then
- RECORD=$(curl -sLX POST "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" \
- --data '{"type":"A","name":"'${WILDCARD}'","content":"'${IP}'","ttl":120,"proxied":false}' | jq -r .result.id)
- fi
- RESULT=$(curl -sLX PUT "https://api.cloudflare.com/client/v4/zones/${ZONE}/dns_records/${RECORD}" \
- -H "X-Auth-Email: ${CF_ID}" \
- -H "X-Auth-Key: ${CF_KEY}" \
- -H "Content-Type: application/json" \
- --data '{"type":"A","name":"'${WILDCARD}'","content":"'${IP}'","ttl":120,"proxied":false}')
- echo "Host : $WILDCARD"
- echo $WILDCARD > /home/wildcard
- rm -f /root/cf.sh
|