EQVPS
Anza

Jinsi ya kuhifadhi Telegram bot kwenye VPS (na kuiweka ikiendesha)

Jun 15, 2026 · 2 min read · EQVPS Team

Telegram bot inayoendesha tu wakati laptop yako iko wazi haiendeshi kweli — inafanya demo. Kuiwa na mtandaoni kweli, ikijibu saa 3 usiku, ikibaki kupitia reboots zako na crashes zake, inahitaji kuishi kwenye seva. Hii ndio njia nzima, mwanzo hadi mwisho, na amri.

Habari njema kwanza: bot ni mzigo mdogo. Kwa kiasi kikubwa inakaa idle ikisubiri messages, hivyo sanduku nafuu zaidi huiendesha vizuri — hakuna dedicated IP, hakuna domain, hakuna cha fancy.

1. Pata token kutoka BotFather

Katika Telegram, message @BotFather, tuma /newbot, chagua jina na username. Inakukabidhi token inayoonekana kama 12345:AAH.... Itendee kama nenosiri — yeyote aliye nayo anadhibiti bot yako.

2. Bot ndogo

SSH ndani ya seva, weka Python na maktaba:

sudo apt update && sudo apt install -y python3-venv
mkdir ~/mybot && cd ~/mybot
python3 -m venv venv && source venv/bin/activate
pip install python-telegram-bot

Bot inayojibu — ~/mybot/bot.py:

import os
from telegram.ext import ApplicationBuilder, CommandHandler

async def start(update, ctx):
    await update.message.reply_text("Alive and on a server. 🟢")

app = ApplicationBuilder().token(os.environ["BOT_TOKEN"]).build()
app.add_handler(CommandHandler("start", start))
app.run_polling()

Angalia inasoma token kutoka environment variable — si hardcoded. Hilo linahusika katika hatua inayofuata.

3. Sehemu inayoiweka ikiendesha kweli: systemd

Kama unaendesha tu python bot.py, inakufa mara unapofunga SSH. Huduma ya systemd ndicho kinachoifanya ibaki kupitia logout, crashes, na reboots. Unda /etc/systemd/system/mybot.service:

[Unit]
Description=Telegram bot
After=network-online.target

[Service]
WorkingDirectory=/home/youruser/mybot
Environment=BOT_TOKEN=12345:AAH...your-token
ExecStart=/home/youruser/mybot/venv/bin/python bot.py
Restart=always
RestartSec=5
User=youruser

[Install]
WantedBy=multi-user.target

Kisha:

sudo systemctl daemon-reload
sudo systemctl enable --now mybot
sudo systemctl status mybot      # inapaswa kusema active (running)
journalctl -u mybot -f           # live logs

Restart=always ndio mstari unaofanya kazi halisi — crash, na inarudi kwa sekunde 5. enable maana yake inakuja baada ya reboot. Hiyo ndiyo tofauti nzima kati ya "niliendesha bot mara moja" na "bot yangu iko juu."

4. Kwa nini hakuna domain au ports zilizo wazi

Bot inatumia long polling — inafikia Telegram kwa masasisho, hivyo hakuna kinachohitaji kufikia ndani. Hakuna URL ya umma, hakuna sheria ya firewall inayoingia, hakuna dedicated IP. Ndio hasa sababu NAT VPS (IP inayoshirikiwa, SSH kwenye port) ni gharama nzuri na nafuu kwa bot. Webhooks zipo kwa wingi wa juu sana, lakini karibu kwa hakika huzihitaji kuanza.

Tahadhari za uaminifu

Ndio hivyo. Funga sanduku kwanza na security checklist, ingiza huduma, na bot yako inabaki mtandaoni iwe wewe au la. Kwenye VPS iliyolipwa kwa crypto unaweza kuiwa ikiendesha dakika moja baada ya kuamua.

FAQ

Ninahitaji VPS gani kwa Telegram bot?

Ndogo zaidi. Telegram bot kwa kiasi kikubwa iko idle, ikisubiri masasisho, hivyo 1 GB RAM na cores 2 zinatosha kwa bots nyingi — hata zenye shughuli kiasi. Unahitaji zaidi tu kama bot hufanya kazi nzito yenyewe (image processing, modeli ya ndani, hifadhidata kubwa).

Ninawekaje Telegram bot iendelee kuendesha baada ya kufunga SSH?

Iendeshe kama huduma ya systemd. Tofauti na kuianzisha kwenye terminal yako, systemd huiweka hai baada ya kuingia nje, huirestart ikianguka, na huianzisha tena baada ya reboot. Hiyo ndiyo tofauti kati ya kichezeo na kitu kinachobaki juu.

Kwa nini bot yangu inaacha ninapodisconnect?

Kwa sababu uliianzisha kwenye kikao chako cha SSH, hivyo inakufa kikao hicho kinapoisha. Ilipiga katika huduma ya systemd (au tmux kwa jaribio la haraka) nayo inaendesha huru kutoka login yako.

Je ninahitaji domain au webhook kwa Telegram bot?

Hapana. Long polling (getUpdates) haihitaji URL ya umma, domain, port inayoingia — bot hufikia Telegram. Ndio sababu NAT VPS bila dedicated IP ni sawa kabisa kwa bot. Webhooks ni optimization ya hiari kwa wingi wa juu.

Je ni salama kuweka bot token yangu kwenye VPS?

Ndiyo, kama unaitendea kama nenosiri: iweke katika environment variable au faili inayosomeka tu na user wa bot, kamwe usiicommit kwa git, na funga seva na SSH keys. Kama token inavuja, iweke revoke katika BotFather na utoe mpya.

← Back to blogSee plans & pricing →

Maoni

Bado hakuna maoni. Kuwa wa kwanza.

Acha maoni

Maoni yanakaguliwa kabla ya kuonekana.