EQVPS

איך לארח בוט Telegram על VPS (ולשמור אותו רץ)

15 ביוני 2026 · 2 דק' קריאה · EQVPS Team

בוט Telegram שרץ רק בזמן שהמחשב הנייד שלכם פתוח לא באמת רץ — הוא עושה הדגמה. כדי שהוא באמת יהיה מקוון, עונה ב-3 לפנות בוקר, שורד את האתחולים שלכם ואת הקריסות שלו, הוא צריך לחיות על שרת. הנה כל הנתיב, מתחילה ועד סוף, עם הפקודות.

חדשות טובות קודם: בוט הוא workload זעיר. הוא בעיקר יושב בטל ומחכה להודעות, אז הארגז הזול ביותר מריץ אותו בסדר — ללא IP ייעודי, ללא דומיין, שום דבר מפואר.

1. השיגו טוקן מ-BotFather

ב-Telegram, שלחו הודעה ל-@BotFather, שלחו /newbot, בחרו שם ושם משתמש. הוא מוסר לכם טוקן שנראה כמו 12345:AAH.... התייחסו אליו כמו סיסמה — לכל מי שיש אותו שולט בבוט שלכם.

2. בוט מינימלי

התחברו ב-SSH לשרת, הגדירו את Python והספרייה:

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

בוט שמגיב — ~/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()

שימו לב שהוא קורא את הטוקן ממשתנה סביבה — לא מקודד-קשיח. זה חשוב בצעד הבא.

3. החלק שבאמת שומר אותו רץ: systemd

אם אתם פשוט מריצים python bot.py, הוא מת ברגע שאתם סוגרים את SSH. שירות systemd הוא מה שגורם לו לשרוד התנתקות, קריסות, ואתחולים. צרו /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

ואז:

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

Restart=always היא השורה שעושה את העבודה האמיתית — קריסה, והוא חוזר תוך 5 שניות. enable אומר שהוא עולה אחרי אתחול. זה כל ההבדל בין "הרצתי בוט פעם אחת" ל"הבוט שלי למעלה."

4. למה ללא דומיין או פורטים פתוחים

הבוט משתמש ב-long polling — הוא פונה החוצה ל-Telegram לעדכונים, אז שום דבר לא צריך להגיע פנימה. ללא URL ציבורי, ללא כלל חומת אש נכנס, ללא IP ייעודי. זו בדיוק הסיבה ש-NAT VPS (IP משותף, SSH על פורט) הוא בית בסדר וזול לבוט. webhooks קיימים לנפח גבוה מאוד, אבל אתם כמעט בוודאי לא צריכים אותם כדי להתחיל.

הסתייגויות כנות

זהו. נעלו את הארגז קודם עם רשימת התיוג לאבטחה, הכניסו את השירות, והבוט שלכם נשאר מקוון בין אם אתם ובין אם לא. על VPS משולם-קריפטו אתם יכולים שהוא ירוץ דקה אחרי שאתם מחליטים.

שאלות נפוצות

איזה VPS אני צריך לבוט Telegram?

הקטן ביותר. בוט Telegram בעיקר בטל, מחכה לעדכונים, אז 1 GB RAM ו-2 ליבות בשפע לרוב הבוטים — אפילו עסוקים למדי. אתם צריכים יותר רק אם הבוט עושה עבודה כבדה בעצמו (עיבוד תמונות, מודל מקומי, מסד נתונים גדול).

איך אני שומר בוט Telegram רץ אחרי שאני סוגר את SSH?

הריצו אותו כשירות systemd. בניגוד להפעלתו בטרמינל שלכם, systemd שומר אותו חי אחרי שאתם מתנתקים, מפעיל אותו מחדש אם הוא קורס, ומתחיל אותו שוב אחרי אתחול. זה ההבדל בין צעצוע למשהו שנשאר למעלה.

למה הבוט שלי נעצר כשאני מתנתק?

כי הפעלתם אותו בסשן ה-SSH שלכם, אז הוא מת כשהסשן הזה נגמר. עטפו אותו בשירות systemd (או tmux לבדיקה מהירה) והוא רץ בלתי-תלוי בהתחברות שלכם.

האם אני צריך דומיין או webhook לבוט Telegram?

לא. long polling (getUpdates) לא צריך URL ציבורי, לא דומיין, לא פורט נכנס — הבוט פונה החוצה ל-Telegram. לכן NAT VPS ללא IP ייעודי לגמרי בסדר לבוט. webhooks הם אופטימיזציה אופציונלית לנפח גבוה.

האם זה בטוח לשים את טוקן הבוט שלי על VPS?

כן, אם אתם מתייחסים אליו כמו סיסמה: שמרו אותו במשתנה סביבה או בקובץ קריא רק למשתמש של הבוט, לעולם אל תכניסו אותו ל-git, ונעלו את השרת עם מפתחות SSH. אם טוקן דולף, בטלו אותו ב-BotFather והנפיקו חדש.

← חזרה לבלוגראו תוכניות ומחירים →

תגובות

אין עדיין תגובות. היו הראשונים.

השאירו תגובה

התגובות עוברות מודרציה לפני שהן מופיעות.