





Merhaba,
VPS alıp "şimdi ne yapacağım" diye takılan arkadaşlar için bir araç yazdım. Sunucunuza SSH ile bağlanıp 45 salt-okunur kontrol yapıyor, hiçbir şeyi değiştirmiyor ve size "şunu şu yüzden yap" diyen Türkçe bir rapor çıkarıyor. Kendi bilgisayarınızda çalışıyor, ücretsiz ve açık kaynak.
Amacı bir kontrol paneli olmak değil: balık vermek yerine balık tutmayı öğretmek. Her bulgunun yanında "bu neden önemli", "yanlış giderse nasıl geri alınır" ve "elle nasıl yapılır" yazıyor.
Ne yapıyor?
- Canlı analiz — Sunucunuza bağlanır, 45 teşhis komutu çalıştırır, 40'tan fazla kuralla değerlendirir. Sunucuda hiçbir şey değişmez.
- Anlaşılır rapor — Her bulgu dört parça: ne bulundu → neden önemli → adım adım → komutlar. Önem sırasına göre sıralanır (KRİTİK → YÜKSEK → ORTA → DÜŞÜK), 100 üzerinden puan verir.
- İki uygulama yolu — Ya seçtiğiniz maddeler için komut dosyası alıp kendiniz çalıştırırsınız (öğrenmek için önerilir), ya da onay verip bota çalıştırırsınız; her komutun çıktısını görürsünüz.
- Sıfırdan rehberler — İlk SSH bağlantısından yedek almaya kadar 9 adım adım rehber.
- Rapor dışa aktarma — HTML ve Markdown olarak kaydedebilirsiniz.
Neye bakıyor?
AlanÖrneklerSistemİşletim sistemi ve destek durumu, disk ve inode doluluğu, log boyutu, saat eşitlemesi, yeniden başlatma ihtiyacıGüncellemeBekleyen paketler, güvenlik yamaları, otomatik güvenlik güncellemeleriGüvenlikroot ile SSH girişi, şifreyle giriş, SSH anahtarı var mı, port, deneme limiti, şifresiz hesaplar, fail2ban, sudo kullanıcısı, kaba kuvvet saldırıları, SELinuxAğGüvenlik duvarı (ufw/firewalld/nftables), internete açık veritabanı / Redis / Docker API portları, dinlenen tüm portlarZararlı yazılımClamAV, rkhunter, AIDE, kripto madenci ve botnet imzaları, curl | bash şeklindeki cron görevleri, /tmp içinde çalıştırılabilir dosyalarServislerHata veren birimler, gereksiz servisler, HTTPS sertifikası, MySQL sertleştirme, Docker'ın güvenlik duvarını atlamasıPerformansRAM ve OOM riski, swap yokluğu, swappiness, sistem yükü, açık dosya limiti, TCP kuyruk ayarlarıYedeklemeHiç yedek var mı, zamanlanmış görev, veritabanı dökümü, geri yükleme testi hatırlatmasıOyun sunucusuMinecraft / Source / FiveM / Valheim / Rust / ARK / Pterodactyl tespiti, UDP port açma, root ile çalışma, systemd servisi, Java sürümü, dünya yedeği, DDoS gerçekleri
Örnek bir bulgu
Rapordan aynen alınmıştır:
Altında da uygulanacak komutlar, doğrulama komutu ve geri alma komutu veriliyor.[KRİTİK] root kullanıcısı şifreyle SSH'a girebiliyor
Ne bulundu: PermitRootLogin=yes, PasswordAuthentication=yes
Neden önemli: İnternetteki otomatik botlar gün boyu 22 numaralı kapıya 'root' kullanıcısı ve sözlük şifreleriyle saldırır. Kullanıcı adını zaten bildikleri için sadece şifreyi bulmaları yeterlidir. Bu, bir VPS'in ele geçirilmesinin 1 numaralı yoludur.
Adım adım:SIRALAMA ÖNEMLİ — kendinizi dışarıda bırakmayın:
- Önce kendi bilgisayarınızda SSH anahtarı üretin: ssh-keygen -t ed25519
- Anahtarı sunucuya kopyalayın: ssh-copy-id kullanıcı@sunucu-ip
- YENİ bir terminal açıp anahtarla girebildiğinizi DOĞRULAYIN.
- Ancak ondan sonra aşağıdaki düzeltmeyi uygulayın.
- Uyguladıktan sonra mevcut oturumunuzu KAPATMAYIN; yeni bir pencereden test edin.
"Sunucu şifremi verecek miyim?" — güven kısmı
Sunucu bilgisi isteyen bir programa şüpheyle bakmak son derece haklı. O yüzden açıkça yazıyorum:
- Analiz asla yazma yapmaz. Çalıştırılan 45 komutun tamamı app/probes.py içinde tek bir açık listede duruyor. Üstelik bu listenin salt-okunur olduğu her testte otomatik olarak doğrulanıyor — yani "sadece okuyor" sözde kalan bir iddia değil, CI'da her değişiklikte kontrol edilen bir garanti.
- Hiçbir düzeltme kendiliğinden çalışmaz. Komutlar önce raporda gösterilir; çalışması için maddeyi seçip onay vermeniz gerekir.
- Bilgiler sizin bilgisayarınızda kalır. Sunucu bilgileri yerel olarak şifrelenir (Fernet), hiçbir yere gönderilmez, depoya da girmez.
- Uygulama dışarıya açılmaz. Yalnızca 127.0.0.1 dinlenir.
- Kod açık. Şüpheniz varsa probes.py dosyasına bakmanız 2 dakika sürer.
Kurulum
Gereken tek şey Python 3.10+.
- Depoyu indirin
- Windows'ta baslat.bat dosyasına çift tıklayın (Linux/macOS: ./baslat.sh)
- Tarayıcıda http://127.0.0.1:8765 açılır
Arayüz Türkçe ve İngilizce, üstteki seçiciden değiştirilebiliyor. İsteğe bağlı bir soru-cevap sekmesi de var; ücretli hiçbir API kullanmıyor — Ollama ile tamamen kendi bilgisayarınızda ya da ücretsiz kotalı servislerle çalışıyor. Kapalıyken de analiz ve raporların tamamı çalışıyor.
Sizden ricam
Deneyip fikir verirseniz çok makbule geçer yeni bir eğitim gören öğrenci bir arkadaş için geliştirdim ve ücretsiz paylaşıyorum eğer ki talep gelir ise daha fazla geliştirip daha iyi bir tasarımla sunacağım :
- Sizce hangi kontrol eksik? Sizi en çok yakan sunucu hatası neydi?
- Hangi panel veya oyun sunucusu için destek eklemeli? (cPanel, Plesk, CyberPanel, Pterodactyl...)
- Rapordaki açıklamalar yeni başlayan biri için yeterince anlaşılır mı?
GitHub: https://github.com/webdanismani/sunucu-kontrol