Bölüm 1: İlk Kurulum ve Yapılandırma (Süper Admin İçin)
Bu adımlar, yazılımı sunucunuza ilk kez kurarken izlenmelidir.
1. Dosyaların Sunucuya Yüklenmesi:- Projenin tüm dosya ve klasörlerini sunucunuzun ana dizinine (public_html veya benzeri) yükleyin.
2. Veritabanı Oluşturma:- Hosting panelinizden (cPanel, Plesk vb.) yeni bir MySQL veritabanı ve bir veritabase kullanıcısı oluşturun.
- Size sağlanan tam SQL kodunu, phpMyAdmin'deki "İçe Aktar" (Import) veya "SQL" sekmesini kullanarak bu yeni veritabanına yükleyin.
4. .env Dosyasını Yapılandırma:- Proje ana dizinindeki .env.example dosyasının adını .env olarak değiştirin.
- .env dosyasını açıp aşağıdaki bilgileri kendi sunucu ve hesap bilgilerinize göre doldurun:
- DB_HOST: Veritabanı sunucunuz (genellikle localhost).
- DB_NAME: Oluşturduğunuz veritabanının adı.
- DB_USER: Oluşturduğunuz veritabanı kullanıcısı.
- DB_PASS: Kullanıcının şifresi.
- APP_ENCRYPTION_KEY: ÇOK ÖNEMLİ! generate_key.php aracıyla ürettiğiniz 32 karakterlik benzersiz şifreleme anahtarınız.
- IMAP_HOST: E-posta sunucunuzun IMAP adresi (örn: {imap.gmail.com:993/imap/ssl}INBOX).
- TELEGRAM_BOT_TOKEN: (Opsiyonel) Telegram botunuzun token'ı.
5. Önemli Kimlik Bilgileri: Uygulama Şifresi ve TOTP Anahtarı
Platformunuzun düzgün çalışabilmesi için, "Paylaşımlı Hesap" eklerken sizden istenecek iki tür özel kimlik bilgisini nasıl alacağınızı bilmeniz önemlidir.
A) Uygulama Şifresi (App Password) Nedir ve Nasıl Alınır?
Nedir? Uygulama Şifresi, 2 Adımlı Doğrulama kullanan hesaplarınızda (Google, Microsoft vb.), PHP script'imiz gibi uygulamaların hesabınıza erişmesine izin veren, 16 haneli, tek kullanımlık bir şifredir.
Bu, hesabınızın ana şifresi DEĞİLDİR ve ana şifrenizin güvende kalmasını sağlar.
Nasıl Alınır (Gmail / Google için):- 2 Adımlı Doğrulama'yı Aktif Edin: Google Hesabınıza gidin > Güvenlik > 2 Adımlı Doğrulama'yı açın.
- Uygulama Şifreleri Menüsüne Gidin: Yine Güvenlik sekmesinde, "Google'da oturum açma" başlığı altındaki Uygulama Şifreleri'ne tıklayın.
- Yeni Şifre Oluşturun: "Uygulama seçin" menüsünden "Posta", "Cihaz seçin" menüsünden "Diğeri (Özel ad...)" seçeneğini seçin. Bir isim verip (örn: 2FA Scriptim) "Oluştur" butonuna basın.
- Şifreyi Kopyalayın: Google, size sarı bir kutu içinde 16 haneli, boşluksuz bir şifre verecektir. Bu şifreyi hemen kopyalayın, çünkü bu ekranı kapattıktan sonra bir daha göremezsiniz.
- Sisteme Kaydedin: Kopyaladığınız bu 16 haneli şifre, yönetici panelinden "E-posta (IMAP)" yöntemiyle yeni bir hesap eklerken "Uygulama Şifresi" alanına gireceğiniz şifredir.
B) Authenticator (TOTP) Gizli Anahtarı Nedir ve Nasıl Alınır?
Nedir? Bu, bir servis (Steam, Epic Games vb.) için Authenticator uygulamasını ilk kez kurarken, QR koduna ek olarak sunulan, genellikle 16 veya daha fazla karakterden oluşan metin tabanlı bir anahtardır.
Nasıl Alınır:- İlgili servisin güvenlik ayarlarına gidin ve 2 Adımlı Doğrulamayı aktif etme işlemini başlatın.
- Size bir QR kodu gösterdiğinde, genellikle o kodun altında veya yanında "kodu tarayamıyor musunuz?" veya "kurulum anahtarını göster" gibi bir link bulunur.
- Bu linke tıkladığınızda, ekranda JBSWY3DPEHPK3PXP gibi bir metin (gizli anahtar) görünecektir.
- Sisteme Kaydedin: Yönetici panelinden "Authenticator (TOTP)" yöntemiyle yeni bir hesap eklerken, kopyaladığınız bu metni "TOTP Gizli Anahtarı" alanına gireceksiniz.
Bölüm 2: Süper Admin Paneli Kullanımı
/admin adresinden giriş yaptıktan sonra erişeceğiniz bu panelden tüm sistemi yönetirsiniz.
- Ana Panel (Dashboard): Sistemin genel durumu (toplam lisans, sorunlu hesap, günlük kullanım vb.) hakkında anlık istatistikler sunar.
- Bayi Yönetimi: Yeni bayiler oluşturur, mevcutları düzenler (paket, süre, durum) ve silersiniz.
- Bayi Paketleri: S, M, L gibi abonelik paketlerini, fiyatlarını ve hesap ekleme limitlerini yönetirsiniz.
- Platformlar: Sisteme yeni servisler (örn: Amazon Prime) ekler, gönderici e-postalarını ve kod bulma kurallarını (Regex) yönetirsiniz.
- Hesap Yönetimi: Kendi ana bayiliğinize (bayi_id = 1) ait paylaşımlı hesapları yönetirsiniz.
- Lisans Anahtarları: Kendi ana bayiliğiniz üzerinden müşterilere satacağınız lisans anahtarlarını oluşturup yönetirsiniz.
- Diğer Menüler: "Sorun Bildirimleri", "Geri Bildirimler", "Duyurular", "Yöneticiler" ve "Site Ayarları"nı bu menülerden yönetirsiniz.
Bölüm 3: Bayi Paneli Kullanımı
Bayileriniz, /admin adresinden kendi kullanıcı bilgileriyle giriş yaptıklarında kısıtlı bir panel görürler.
- Ana Panel (Dashboard): Bayi, sadece kendi durumu hakkında bilgi görür: Mevcut paketi, aboneliğinin ne zaman biteceği ve paketine tanımlı hesap limitinin ne kadarını kullandığı (örn: "Hesap Kullanımı: 45 / 75").
- Hesap Yönetimi: Bayi, sadece kendi paylaşımlı hesaplarını, abone olduğu paketin limitleri dahilinde ekleyebilir, düzenleyebilir ve silebilir.
- Lisans Anahtarları: Bayi, sadece kendi müşterileri için ve sadece kendi eklediği hesaplara erişim yetkisi olan lisans anahtarları oluşturabilir.
- Raporlar ve Geri Bildirimler: Bayi, sadece kendi müşterilerinden gelen sorun bildirimlerini ve geri bildirimleri görür.
Bölüm 4: Müşteri Portalı Kullanımı
Müşterilerinizin 2FA kodu almak için izleyeceği adımlar:
- Doğru Adrese Gidin: Bayiden aldıkları özel mağaza linkine (siteadresiniz.com/b/magaza-ismi) giderler.
- Anahtarı Girin: Kendilerine verilen lisans anahtarını giriş kutusuna yazarlar.
- Platform Seçin: Panel açıldığında, kod almak istedikleri platformun (Netflix, Steam vb.) butonuna tıklarlar.
- Kodu Alın: Sistem, arka planda yeni bir kod gelip gelmediğini sürekli kontrol eder. Kod geldiği an, ekranda belirir ve kalan kullanım hakları güncellenir.
Bölüm 5: Sıkça Sorulan Sorular ve Sorun Giderme
- Hata: "Login aborted" veya E-posta Bağlantı Sorunları
- Çözüm: İlgili Gmail hesabının güvenlik ayarlarını kontrol edin. IMAP erişiminin aktif olduğundan, "Kritik Güvenlik Uyarısı" e-postasından "Evet, bendim" diyerek onay verildiğinden ve gerekirse CAPTCHA kilidinin kaldırıldığından emin olun.
- Hata: "Class not found" (Canlı Sunucuda)
- Çözüm: vendor klasörünün sunucuya eksiksiz yüklendiğinden emin olun. Dosya ve klasör isimlerinin büyük/küçük harf uyumunu kontrol edin (Linux sunucular bu konuda hassastır).
- Hata: "Dosya yüklenemedi"
- Çözüm: Sunucunuzdaki public/uploads/ klasörünün ve alt klasörlerinin yazma izinlerinin (genellikle 755 veya 777) doğru ayarlandığından emin olun.
- Hata: "Şifreleme anahtarı 32 byte olmalıdır"
- Çözüm: .env dosyanızdaki APP_ENCRYPTION_KEY değişkeninin tam olarak 32 karakter uzunluğunda olduğundan emin olun.