• 21-08-2025, 22:36:27
    #10
    Ya saldırı gelen ASN ve Ülkeleri BANlama daha iyi olur.
  • 21-08-2025, 22:45:38
    #11
    Üyeliği durduruldu
    linux 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."
    fi
    Script’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:22
    #12
    IrmakDilara adlı üyeden alıntı: mesajı görüntüle
    linux 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."
    fi
    Script’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.
    Aş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?

    # 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
    #13
    Üyeliği durduruldu
    red5553 adlı üyeden alıntı: mesajı görüntüle
    Aş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?

    # 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"
    Güncellenmiş Hali

    #!/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
    #14
    Üyeliği durduruldu
    Ayrı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:08
    #15
    IrmakDilara adlı üyeden alıntı: mesajı görüntüle
    Ayrı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.
    Hocam 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:
    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:12
    #16
    red5553 adlı üyeden alıntı: mesajı görüntüle
    Hocam 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:
    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.

    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.