حرّ الصيف — كل شيء يذوب، حتى أسعارنا.−25%−25% على كل خطة سنوية، حتى 31 أغسطسعرض الخطط
EQVPS

كيف تستضيف بوت تيليجرام على VPS (وتُبقيه يعمل)

15 يونيو 2026 · 2 دقيقة قراءة · EQVPS Team

بوت تيليجرام يعمل فقط بينما حاسوبك المحمول مفتوح ليس يعمل حقًا — إنه يعرض. ليكون على الإنترنت فعلًا، يجيب الساعة الثالثة فجرًا، ينجو من إعادات تشغيلك وأعطاله، عليه أن يعيش على خادم. إليك المسار كله، من البداية إلى النهاية، بالأوامر.

الأخبار الجيّدة أولًا: البوت حِمل ضئيل. يجلس خاملًا غالبًا منتظرًا الرسائل، فـ أرخص صندوق يُشغّله جيّدًا — بلا IP مخصّص، بلا نطاق، بلا شيء فاخر.

1. احصل على رمز من BotFather

في تيليجرام، راسل @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      # ينبغي أن يقول active (running)
journalctl -u mybot -f           # سجلّات حيّة

Restart=always هو السطر الذي يقوم بالعمل الحقيقي — تعطّل، ويعود في 5 ثوانٍ. enable يعني عودته بعد إعادة تشغيل. ذلك كل الفرق بين «شغّلت بوتًا مرة» و«بوتي مشتغل».

4. لماذا لا نطاق أو منافذ مفتوحة

يستخدم البوت الاستطلاع الطويل — يمدّ يده إلى تيليجرام للتحديثات، فلا شيء يحتاج الوصول للداخل. لا رابط عامّ، لا قاعدة جدار حماية واردة، لا IP مخصّص. لهذا بالضبط VPS من نوع NAT (IP مشترك، SSH على منفذ) بيت جيّد ورخيص لبوت. webhooks موجودة للحجم العالي جدًا، لكنك على الأرجح لا تحتاجها للبدء.

تحفّظات صادقة

هذا كل شيء. أحكِم الصندوق أولًا بـقائمة الأمان، ضع الخدمة، ويبقى بوتك على الإنترنت سواء بقيت أنت أم لا. على VPS مدفوع بالعملات المشفّرة يمكنك تشغيله بعد دقيقة من قرارك.

الأسئلة الشائعة

أي VPS أحتاج لبوت تيليجرام؟

الأصغر. بوت تيليجرام خامل غالبًا، ينتظر التحديثات، فـ 1 GB ذاكرة ونواتان وافيان لمعظم البوتات — حتى المزدحمة نسبيًا. تحتاج أكثر فقط إن قام البوت بعمل ثقيل بنفسه (معالجة صور، نموذج محلي، قاعدة بيانات كبيرة).

كيف أُبقي بوت تيليجرام يعمل بعد إغلاق SSH؟

شغّله كخدمة systemd. بخلاف إطلاقه في طرفيتك، systemd يُبقيه حيًّا بعد تسجيل الخروج، يُعيد تشغيله إن تعطّل، ويبدأه ثانيةً بعد إعادة تشغيل. ذلك الفرق بين لعبة وشيء يبقى مشتغلًا.

لماذا يتوقّف بوتي حين أفصل؟

لأنك بدأته في جلسة SSH، فيموت حين تنتهي تلك الجلسة. غلّفه في خدمة systemd (أو tmux لاختبار سريع) فيعمل مستقلًّا عن دخولك.

هل أحتاج نطاقًا أو webhook لبوت تيليجرام؟

لا. الاستطلاع الطويل (getUpdates) لا يحتاج رابطًا عامًا، لا نطاقًا، لا منفذًا واردًا — البوت يمدّ يده إلى تيليجرام. لهذا VPS من نوع NAT بلا IP مخصّص جيّد تمامًا لبوت. webhooks تحسين اختياري للحجم العالي.

هل من الآمن وضع رمز بوتي على VPS؟

نعم، إن عاملته ككلمة مرور: أبقِه في متغيّر بيئة أو ملف يقرؤه مستخدم البوت فقط، لا تلتزمه أبدًا في git، وأحكِم الخادم بمفاتيح SSH. إن تسرّب رمز، ألغِه في BotFather وأصدر جديدًا.

← العودة إلى المدوّنة← الخطط والأسعار

التعليقات

لا تعليقات بعد. كن الأول.

اترك تعليقًا

تُراجَع التعليقات قبل ظهورها.