Cloudflare Api Scripti
15
●514
- 21-08-2025, 22:45:38Üyeliği durduruldulinux sunucu için sh dosyası oluşturun.
#!/bin/bash # Config API_TOKEN="YOUR_CLOUDFLARE_API_TOKEN" ZONES=("ZONE_ID_1" "ZONE_ID_2") THRESHOLD_HIGH=10 THRESHOLD_LOW=5 STATE_FILE="/var/tmp/loadcheck_state" # Load average 1 dakikalık LOAD=$(awk '{print $1}' /proc/loadavg) echo "$(date) - Current load: $LOAD" # Önceki durumu oku PREV_STATE="normal" if [ -f "$STATE_FILE" ]; then PREV_STATE=$(cat "$STATE_FILE") fi # Yeni durum belirle NEW_STATE="$PREV_STATE" if (( $(echo "$LOAD > $THRESHOLD_HIGH" | bc -l) )); then NEW_STATE="high" elif (( $(echo "$LOAD < $THRESHOLD_LOW" | bc -l) )); then NEW_STATE="normal" fi # Durum değiştiyse işlem yap if [ "$NEW_STATE" != "$PREV_STATE" ]; then for ZONE in "${ZONES[@]}"; do if [ "$NEW_STATE" == "high" ]; then VALUE="under_attack" ACTION="enabled" else VALUE="essentially_off" ACTION="disabled" fi RESPONSE=$(curl -s -X PATCH "https://api.cloudflare.com/client/v4/zones/$ZONE/settings/security_level" \ -H "Authorization: Bearer $API_TOKEN" \ -H "Content-Type: application/json" \ --data "{\"value\":\"$VALUE\"}") SUCCESS=$(echo "$RESPONSE" | grep -o '"success":true') if [ "$SUCCESS" == '"success":true' ]; then echo "$(date) - Zone $ZONE: Under Attack Mode $ACTION." else echo "$(date) - Zone $ZONE: Failed to change mode. Response: $RESPONSE" fi done echo "$NEW_STATE" > "$STATE_FILE" else echo "$(date) - Load state unchanged ($NEW_STATE). No action." fiScript’i örneğin /usr/local/bin/loadcheck.sh olarak kaydedin ve çalıştırılabilir yapın:
chmod +x /usr/local/bin/loadcheck.sh
Her dakika çalışması için cron’a ekleyin:
* * * * * /usr/local/bin/loadcheck.sh >> /var/log/loadcheck.log 2>&1
Bu işlemleri uygulayın işinizi görecektir. - 21-08-2025, 22:48:22Aşağıdaki kısımda her domaine ait "ZONE_ID_1 " numaralarını 1 seferlik yazmam mı lazım? Yani böyle böyle 500 domainin de zone id kodu girilecek?IrmakDilara adlı üyeden alıntı: mesajı görüntüle
# Config
API_TOKEN="YOUR_CLOUDFLARE_API_TOKEN"
ZONES=("ZONE_ID_1" "ZONE_ID_2")
THRESHOLD_HIGH=10
THRESHOLD_LOW=5
STATE_FILE="/var/tmp/loadcheck_state" - 21-08-2025, 22:50:38Üyeliği durdurulduGüncellenmiş Halired5553 adlı üyeden alıntı: mesajı görüntüle
#!/bin/bash # Cloudflare API Token API_TOKEN="YOUR_CLOUDFLARE_API_TOKEN" # Threshold değerleri THRESHOLD_HIGH=10 THRESHOLD_LOW=5 # Önceki durumu saklayacak dosya STATE_FILE="/var/tmp/loadcheck_state" # Load average 1 dakikalık LOAD=$(awk '{print $1}' /proc/loadavg) echo "$(date) - Current load: $LOAD" # Önceki durumu oku PREV_STATE="normal" if [ -f "$STATE_FILE" ]; then PREV_STATE=$(cat "$STATE_FILE") fi # Yeni durum belirle NEW_STATE="$PREV_STATE" if (( $(echo "$LOAD > $THRESHOLD_HIGH" | bc -l) )); then NEW_STATE="high" elif (( $(echo "$LOAD < $THRESHOLD_LOW" | bc -l) )); then NEW_STATE="normal" fi # Durum değiştiyse API çağrısı yap if [ "$NEW_STATE" != "$PREV_STATE" ]; then # Tüm zone ID'lerini dinamik olarak al ZONES=($(curl -s -X GET "https://api.cloudflare.com/client/v4/zones" \ -H "Authorization: Bearer $API_TOKEN" \ -H "Content-Type: application/json" | jq -r '.result[].id')) for ZONE in "${ZONES[@]}"; do if [ "$NEW_STATE" == "high" ]; then VALUE="under_attack" ACTION="enabled" else VALUE="essentially_off" ACTION="disabled" fi RESPONSE=$(curl -s -X PATCH "https://api.cloudflare.com/client/v4/zones/$ZONE/settings/security_level" \ -H "Authorization: Bearer $API_TOKEN" \ -H "Content-Type: application/json" \ --data "{\"value\":\"$VALUE\"}") SUCCESS=$(echo "$RESPONSE" | grep -o '"success":true') if [ "$SUCCESS" == '"success":true' ]; then echo "$(date) - Zone $ZONE: Under Attack Mode $ACTION." else echo "$(date) - Zone $ZONE: Failed to change mode. Response: $RESPONSE" fi done # Durumu kaydet echo "$NEW_STATE" > "$STATE_FILE" else echo "$(date) - Load state unchanged ($NEW_STATE). No action." fi - 21-08-2025, 22:53:34Üyeliği durdurulduAyrıca cf waf'ı yeterli gelmeme durumu olursa söyleyin worker olarak çalışan WAF kaynak kodlarını da paylaşabilirim. Hem Google Recaptcha v2 hem de v3 kullanarak gerçek kullanıcılara 2 adet birbirini doğrulayan cookie oluşturur ve bu cookilerden birinde bi değişiklik olursa şifrelenmiş veride banlar. veya giriş yapamaz. şifrelenmiş veride de ip adresi olduğu için o cookie kullanarak bot'a ekleyemezler.
- 21-08-2025, 22:57:08Hocam bu konuda bilgili olduğunu görüyoruz, sizden olası saldırıları engellemede etkili olabilecek birkaç tane Waf kodu önerisi alabilirmiyim? Genelde şunları kullanıyorum:IrmakDilara adlı üyeden alıntı: mesajı görüntüle
1)Kötü botları engelle /yaklaşık çok bilinen 100 tane bot var
2)Google botlarına İzin Ver /google, yahoo,yandex
3) kötü tarayıcıları engelle /eski sürümler
4)kötü ülkeleri engelle /çin gibi
5) Yurt dışından gelen herkese ben robot değilimi aktif et
bunun dışında 500 tıklama yapan herkese "ben robot değilimi" göster. - 22-08-2025, 01:06:12red5553 adlı üyeden alıntı: mesajı görüntüle
Merhabalar : Api scriptle tum sitelere load average okutup saldiri altindayim modu actirabilirsiniz script paylasilmis yanliz herlukarda bu tur dogrulama yontemli korumalar eticaret sitelerinde trafik dusuklugune ve kullanici konforunu bozan koruma yontemleridir genel olarak, eger turk iplerden saldiri gelmiyorsa tum accountdaki sitelerde human dogrulamayi sadece yurtdisi trafik icin aktif edip yurtici trafigi serbest birakarak 7/24 bir koruma aktif etmis olmaniz daha ziyaretci odakli olur.
Eger daha profesyonel kullanicilarin ekraninda hic bir dogrulama yontemi gostermeden gizli dogrulama yaparak ozel bir koruma hizmeti dusunurseniz cloudflare ile sunucunuzun arasinda bir proxy waf yerlestirebiliriz, ilginizi cekerse ozel mesaj gonderebilirsiniz.
iyi calismalar.