Dostum selam, ellerine sağlık sana 5 temel tavsiyem var:
1. Bot ile Siteyi Tamamen Ayır :
İkisini sakın aynı dosyada/sistemde çalıştırma. Sitede bir açık çıksa botun tokenini ve veritabanını anında kaptırırsın. Siten ayrı dursun, botun ayrı. Siteden bir butona basıldığında bota komut gitmesi için araya Redis koy. Siteden istek Redis'e düşsün, bot oradan okuyup Discord'da işlemi yapsın. Site hacklense bile bota erişemesinler.
2. Windows'u Bırak, Linux Sunucuya Geç:
baslat.bat yerine ucuza bir Linux (Ubuntu) sunucu al. Sunucuda site ve bot için iki farklı kullanıcı aç. Böylece site patlasa bile Linux'un dosya izinleri yüzünden botun klasörüne giremezler. Tokenleri de sakın kodun içine yazma, .env dosyasında sakla.
3. Öne Cloudflare ve Nginx Çek:
Sitenin domainini Cloudflare’e bağla. Sunucunun gerçek IP’sini gizler, DDoS saldırılarını ve bot taramalarını bedavadan engeller. Sitenin önüne de Nginx koyarsın, SSL (HTTPS) işini tertemiz çözer.
4. Sitede Düz SQL Yazma:
Veritabanı işlemleri için SQLAlchemy gibi hazır bir kütüphane (ORM) kullan. Bu seni doğrudan SQL Injection belasından korur. Sitede üye girişlerini de uğraşmayıp direkt Discord OAuth2 ile yaptır.
5. Discord Botuna Stop Koy:
Botu sunuculara ekletirken sakın Administrator yetkisi isteme, sadece lazım olan yetkileri seçtir. Ayrıca koda limit koy: "10 saniyede 3'ten fazla kanal silinirse işlemi kes." Birisi senmişsin gibi yetkili hesabını çalsa bile bot sunucuları patlatamaz