Telegram ve Discord Botu 7/24 Nasıl Çalıştırılır? Bilgisayarı Açık Bırakmak Yerine VDS Rehberi (2026)
Telegram ve Discord Botu 7/24 Nasıl Çalıştırılır? Bilgisayarı Açık Bırakmak Yerine VDS Rehberi (2026)
Kısa cevap: Bir Telegram ya da Discord botunun 7/24 çalışması için sürekli açık ve internete bağlı bir bilgisayar gerekir. Bunun en pratik yolu küçük bir sanal sunucudur: botun dosyalarını sunucuya yükler, bir servis olarak tanımlar ve bilgisayarınızı kapatırsınız. Bot çökerse kendiliğinden yeniden başlar, sunucu yeniden açılırsa kendiliğinden devreye girer. Komutlara yanıt veren sıradan bir bot için 1 vCPU ve 2 GB RAM fazlasıyla yeter; kurulum yaklaşık 15 dakika sürer.
Öne Çıkanlar
- Bir botu 7/24 açık tutmanın güvenilir yolu, onu bir sanal sunucuda sistem servisi olarak çalıştırmaktır.
- Komutlara yanıt veren tipik bir Telegram ya da Discord botu için 1 vCPU ve 2 GB RAM yeterlidir; aynı sunucuda birden fazla bot çalıştırılabilir.
- Bu botlar için sunucuda dışarıya kapı açmak gerekmez: bot, Telegram ve Discord sunucularına kendisi bağlanır.
- Bot paylaşımlı web hostingde çalışmaz, çünkü sürekli çalışan bir süreç ister.
- Botun erişim anahtarı (token) kodun içine yazılmamalı, yalnızca sunucudaki ayrı bir dosyada tutulmalıdır.
Bot Neden Kendi Bilgisayarınızda 7/24 Çalışmaz?
Botu yazarken kendi bilgisayarınızda çalıştırmak doğaldır. Ama kullanıma açtığınız anda üç sorun ortaya çıkar:
- Bilgisayar kapanınca bot susar. Uyku moduna geçmesi, güncelleme için yeniden başlaması ya da elektriğin kesilmesi yeter.
- Ev interneti kesintisiz değildir. Modemin yeniden başlaması bile botu düşürür ve çoğu zaman elle yeniden çalıştırmanız gerekir.
- Bot çökerse kimse fark etmez. Beklenmeyen bir hatada program kapanır ve siz görene kadar kapalı kalır.
Ücretsiz bot barındırma hizmetleri de genellikle aynı noktada takılır: belirli bir süre işlem olmayınca uygulamayı uyutur ya da aylık çalışma süresini sınırlar. Sürekli açık olması gereken bir bot için sürekli açık bir sunucu gerekir.
Bot İçin Nasıl Bir Sunucu Gerekir?
Botlar düşündüğünüzden az kaynak ister. Komut bekleyen bir bot, zamanının neredeyse tamamını boşta geçirir. Kaynağı asıl tüketen, botun yaptığı iştir: ses çalmak, görsel işlemek, büyük bir veritabanını sorgulamak.
| Bot türü | Önerilen kaynak | Uygun paket |
|---|---|---|
| Komutlara yanıt veren, duyuru yapan, moderasyon botu (bir ya da birkaç tane) | 1 vCPU, 2 GB RAM | Starter VDS |
| Müzik botu, görsel üreten ya da dosya işleyen bot; veritabanı kullanan bot | 2 vCPU, 4 GB RAM | Standard VDS |
| Çok sayıda sunucuda ya da kalabalık gruplarda çalışan bot; birçok botun aynı sunucuda çalışması | 3–4 vCPU, 6–8 GB RAM | Advanced veya Pro VDS |
Bunlar başlangıç için makul ölçülerdir, garanti değildir. Küçük paketle başlayıp ihtiyaç olursa yükseltmek en mantıklı yoldur. Paketleri VDS sunucu kiralama sayfasında karşılaştırabilirsiniz. İşletim sistemi olarak Ubuntu seçin; bu rehberdeki komutlar Ubuntu 24.04 ve 22.04 içindir. Neden Linux önerdiğimizi Linux sunucu mu Windows sunucu mu yazımızda anlattık.
Adım 1: Sunucuya Bağlanın ve Gerekli Paketleri Kurun
Sunucuya SSH ile bağlanın. Daha önce yapmadıysanız SSH ile sunucuya nasıl bağlanılır yazımıza bakın. Ardından sistemi güncelleyip botunuzun diline göre gerekenleri kurun.
Python ile yazılmış bot için:
apt update && apt upgrade -y
apt install -y python3 python3-venv python3-pip git
Node.js ile yazılmış bot için:
apt update && apt upgrade -y
apt install -y nodejs npm git
Adım 2: Bot İçin Ayrı Bir Kullanıcı Açın
Botu yönetici (root) hesabıyla çalıştırmayın. Botun kullandığı bir kütüphanede açık çıkarsa, zararın o kullanıcının klasörüyle sınırlı kalması gerekir.
adduser --disabled-password --gecos "" bot
su - bot
Bundan sonraki komutları bot kullanıcısıyla çalıştırıyorsunuz.
Adım 3: Bot Dosyalarını Sunucuya Yükleyin
Kodunuz bir Git deposundaysa doğrudan çekin:
git clone https://github.com/kullanici/botum.git ~/botum
cd ~/botum
Kod yalnızca bilgisayarınızdaysa, kendi bilgisayarınızda şu komutla klasörü sunucuya kopyalayın (sunucu IP adresini kendinizinkiyle değiştirin):
scp -r ./botum root@SUNUCU_IP:/home/bot/
Bu yolla kopyaladıysanız sunucuda, yönetici hesabıyla, klasörün sahibini düzeltin: chown -R bot:bot /home/bot/botum
Adım 4: Bağımlılıkları Kurun ve Erişim Anahtarını Ayrı Dosyaya Koyun
Python botu için sanal ortam oluşturup kütüphaneleri kurun:
cd ~/botum
python3 -m venv venv
venv/bin/pip install -r requirements.txt
Node.js botu için:
cd ~/botum
npm install
Şimdi en önemli güvenlik adımı: botun erişim anahtarını (token) kodun içine yazmayın. Anahtarı ele geçiren kişi botunuzu sizin adınıza yönetebilir. Anahtarı yalnızca sunucuda duran ayrı bir dosyaya koyun:
nano ~/botum/.env
BOT_TOKEN=buraya_kendi_anahtariniz
chmod 600 ~/botum/.env
Son komut, dosyayı yalnızca bot kullanıcısının okuyabileceği hale getirir. Kodunuzda anahtarı bu ortam değişkeninden okuyun (Python'da os.environ["BOT_TOKEN"], Node.js'te process.env.BOT_TOKEN). Kodunuzu bir depoda tutuyorsanız .env dosyasını depoya eklemediğinizden emin olun.
Devam etmeden önce botu bir kez elle çalıştırıp hata vermediğini görün. Python için set -a; . ./.env; set +a; venv/bin/python bot.py, Node.js için set -a; . ./.env; set +a; node index.js. Bot çalışıyorsa Ctrl+C ile durdurun ve exit yazarak yönetici hesabına dönün.
Adım 5: Botu Servis Olarak Tanımlayın
Botu 7/24 açık tutan adım budur. Bir servis tanımı, sisteme "bu programı her zaman çalışır tut" der. Yönetici hesabıyla servis dosyasını oluşturun:
nano /etc/systemd/system/botum.service
Python botu için dosyanın içeriği:
[Unit]
Description=Botum
After=network-online.target
Wants=network-online.target
[Service]
User=bot
WorkingDirectory=/home/bot/botum
EnvironmentFile=/home/bot/botum/.env
ExecStart=/home/bot/botum/venv/bin/python bot.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
Node.js botu için yalnızca bir satır değişir:
ExecStart=/usr/bin/node index.js
Ana dosyanızın adı farklıysa (main.py, app.js gibi) ExecStart satırında onu yazın. Sonra servisi etkinleştirip başlatın:
systemctl daemon-reload
systemctl enable --now botum
systemctl status botum
Durum çıktısında active (running) yazıyorsa botunuz çalışıyor. Dosyadaki iki satır işin özüdür: Restart=always bot çökerse beş saniye sonra yeniden başlatır; enable komutu da sunucu yeniden açıldığında botun kendiliğinden başlamasını sağlar. Artık bilgisayarınızı kapatabilirsiniz.
Bot Çalışıyor mu, Hata Veriyor mu, Nasıl Anlarım?
Botun yazdırdığı her şey sistem kayıtlarına düşer. Canlı izlemek için:
journalctl -u botum -f
Son yüz satırı görmek için journalctl -u botum -n 100 yeterlidir. Bot sürekli yeniden başlıyorsa neden burada yazar: çoğu zaman eksik bir kütüphane, yanlış dosya adı ya da hatalı erişim anahtarıdır.
Botu Nasıl Güncellerim?
Kodda değişiklik yaptığınızda yeni dosyaları sunucuya alıp servisi yeniden başlatmanız yeterlidir:
su - bot -c "cd ~/botum && git pull"
systemctl restart botum
Yeni bir kütüphane eklediyseniz yeniden başlatmadan önce bağımlılıkları da kurun (venv/bin/pip install -r requirements.txt ya da npm install).
Aynı Sunucuda Birden Fazla Bot Çalıştırabilir miyim?
Evet. Her bot için ayrı bir klasör ve ayrı bir servis dosyası oluşturun: botum.service, ikincibot.service gibi. Her biri bağımsız çalışır; biri çökerse diğeri etkilenmez. Kaynak kullanımını systemctl status botum çıktısındaki bellek satırından ya da htop ile izleyebilirsiniz. Bellek sürekli sınıra dayanıyorsa paketi yükseltme zamanı gelmiştir.
Güvenlik İçin Nelere Dikkat Etmeliyim?
- Güvenlik duvarını açın ve yalnızca SSH'a izin verin. Telegram ve Discord botları dışarıdan bağlantı beklemez; kendileri bağlanır. Bu yüzden başka kapı açmanız gerekmez:
ufw allow OpenSSH && ufw enable - Erişim anahtarını kimseyle paylaşmayın. Yanlışlıkla bir yerde yayınladıysanız, Telegram'da BotFather'dan, Discord'da geliştirici panelinden hemen yenisini üretin ve
.envdosyasını güncelleyin. - Sunucuyu güncel tutun ve SSH girişini sağlamlaştırın. Adımları sanal sunucu güvenliği: 10 kritik adım yazımızda sıraladık.
- Veritabanı kullanıyorsanız yedek alın. Botun kodu deponuzda durur ama kullanıcı verileri yalnızca sunucudadır.
Bir not: Telegram botunuzu "web kancası" yöntemiyle çalıştıracaksanız durum değişir; o zaman sunucunun bir alan adı ve SSL sertifikasıyla dışarıdan erişilebilir olması gerekir. Başlangıç için bu rehberdeki gibi botun kendisinin bağlandığı yöntem daha basittir ve çoğu bot için yeterlidir.
Sık Sorulan Sorular
Botu paylaşımlı web hostingde çalıştırabilir miyim?
Hayır. Bot sürekli çalışan bir programdır; paylaşımlı hosting ise gelen ziyaretçiye sayfa göstermek için tasarlanmıştır ve uzun süre çalışan süreçlere izin vermez. Tam yetkiyle yönettiğiniz bir sanal sunucu gerekir. Farkı sanal sunucu nedir yazımızda bulabilirsiniz.
En küçük paket gerçekten yeter mi?
Komutlara yanıt veren, duyuru yapan ya da moderasyon yapan botlar için evet. Bu botlar boştayken birkaç on megabayt bellek kullanır. Müzik çalan ya da görsel işleyen botlar daha fazlasını ister.
Windows sunucu kullanabilir miyim?
Kullanabilirsiniz ama aynı iş için daha fazla bellek gerekir ve bu rehberdeki servis tanımı Linux'a özgüdür. Yalnızca bot çalıştıracaksanız Ubuntu daha ekonomik ve daha basittir.
Sunucu yeniden başlarsa bot da başlar mı?
Evet. Servisi enable ettiğiniz için sunucu açıldığında bot kendiliğinden başlar.
Bot dışında başka şeyler de çalıştırabilir miyim?
Evet, sunucu sizindir. Aynı sunucuya otomasyon araçları da kurabilirsiniz; örneğin n8n kurulum rehberimiz aynı sunucuda uygulanabilir. Yalnız toplam kaynak kullanımını izlemeyi unutmayın.
Sonuç
Bir botu 7/24 açık tutmak için bilgisayarınızı açık bırakmanız gerekmez. Küçük bir sanal sunucu, bir servis dosyası ve on beş dakika yeterlidir. Karşılığında bot çöktüğünde kendiliğinden kalkar, sunucu yeniden başladığında kendiliğinden devreye girer ve siz yalnızca kodunuzla ilgilenirsiniz. Paketleri VDS sunucu kiralama ve Linux sunucu kiralama sayfalarımızda inceleyebilir, ihtiyaç hesabı için sanal sunucu nasıl kiralanır yazımıza bakabilirsiniz.