# CF Guard Pro — Kurulum & Kullanım Rehberi

## 🚀 Hızlı Kurulum (3 Adım)

### 1. Dosyaları Yükle
- ZIP'i cPanel File Manager'da `public_html/cfguard/` klasörüne çıkart
- Tüm dosya izinlerini kontrol et: PHP dosyaları `644`, dizinler `755`
- `data/` klasörü `755` olmalı (yazılabilir)

### 2. Kurulum Sihirbazını Çalıştır
Tarayıcıda aç: `https://siteniz.com/cfguard/install.php`
- Gereksinimleri kontrol et ✅
- Admin kullanıcı adı ve şifre belirle
- Site URL'sini gir
- **Kur!**

### 3. cPanel Cron Job Ayarla
cPanel → Cron Jobs menüsüne git ve şu iki satırı ekle:

```
*/2 * * * * /usr/bin/php /home/KULLANICI/public_html/cfguard/cron-monitor.php
*/5 * * * * /usr/bin/php /home/KULLANICI/public_html/cfguard/cron-auto-switch.php
```
`KULLANICI` yerine cPanel kullanıcı adınızı yazın.

---

## ⚙️ İlk Yapılandırma (Panel Sırası)

1. **CF Hesapları** → Ana CF hesabı ekle (is_primary ✅)
2. **CF Hesapları** → Yedek CF hesabı ekle (is_backup ✅)
3. **Dynadot** → API Key gir ve test et
4. **Telegram** → Bot Token + Chat ID gir, test mesajı gönder
5. **Domainler** → Domain ekle, CF zone otomatik oluşur

---

## 🤖 Telegram Bot Kurulumu

1. Telegram'da **@BotFather**'a mesaj at
2. `/newbot` komutunu gönder
3. Bot adını belirle
4. Aldığın **token**'ı kopyala
5. Chat ID için:
   - Botu grubuna ekle
   - `https://api.telegram.org/bot<TOKEN>/getUpdates` adresinden chat_id'yi bul

---

## 🔄 Otomatik Geçiş Mantığı

```
Cron (2dk)  →  CF Zone durumu kontrol
                    ↓ Phishing tespit
              Telegram'a butonlu mesaj gönder
                    ↓
         [✅ Onayla]     [❌ Reddet]
              ↓                ↓
     Yedek CF'ye geç    Domain askıya al
     
     (5 dakika içinde yanıt yoksa)
     Auto-switch cron devreye girer
```

---

## 🔐 Güvenlik Notları

- `data/` dizinine web üzerinden erişim `.htaccess` ile engellenmiş
- API tokenlar AES-256-CBC ile şifrelenmiş
- JWT tokenlar 30 günlük geçerlilik süreli
- Rate limiting aktif (dakikada max 20 istek)
- `install.php` kurulum sonrası `.installed` lock dosyası oluşturur

---

## 📂 Önemli Dosyalar

| Dosya | Açıklama |
|-------|----------|
| `install.php` | İlk kurulum sihirbazı |
| `cron-monitor.php` | Phishing kontrol cron (2dk) |
| `cron-auto-switch.php` | Otomatik geçiş cron (5dk) |
| `api/telegram-webhook.php` | Telegram buton callback |
| `data/cfguard.db` | SQLite veritabanı |
| `data/cron.log` | Monitor log dosyası |
| `data/auto_switch.log` | Auto-switch log dosyası |

---

## 🐛 Sorun Giderme

**Cron çalışmıyor:**
- PHP path'i `/usr/bin/php` yerine `/usr/local/bin/php` dene
- `data/cron.log` dosyasını kontrol et

**CF zone oluşturulmuyor:**
- API Token'ın `Zone:Edit` yetkisine sahip olduğunu kontrol et
- CF hesabında domain limit olabilir

**Telegram mesajı gelmiyor:**
- Bot token'ı doğru mu? `/getMe` ile test et
- Chat ID negatif mi? (grup için: -100xxxxxxx)
- Webhook doğru ayarlandı mı? (https zorunlu)
