ربات برای فروش اکانت وایرگاردو میکروتیک
ربات فروش اکانت مایکروتیک (MikroTik) با پنل وب پیشرفته
Hamsell یک پروژه کامل پایتونی است که مدیریت و فروش اکانتهای MikroTik را از طریق ربات تلگرام و یک پنل وب ادمین قدرتمند، ممکن میسازد.
- پنل وب کامل: داشبورد تحت وب برای مدیریت جامع ربات.
- مدیریت سرویس: راهاندازی، توقف و ریاستارت سرویسهای ربات و پنل از طریق داشبورد.
- نصب آسان: راهاندازی پروژه از طریق یک صفحه نصب تحت وب.
- ساخت خودکار سرویس: پنل وب فایلهای سرویس
systemdرا برای اجرای دائمی ربات و پنل ایجاد میکند. - مشاهده لاگ: نمایش زنده لاگهای ربات در پنل وب برای عیبیابی.
- یکپارچگی با MikroTik: اتصال مستقیم به
routeros_apiجهت مدیریت کاربران. - فناوری: مبتنی بر Pyrogram (ربات تلگرام) و Flask (پنل وب).
برای نصب، به موارد زیر نیاز دارید:
- سرور لینوکس: VPS با Ubuntu 20.04/Debian 11 یا بالاتر و Python 3.10+.
- دسترسی Root: دسترسی
rootیاsudoبرای نصب پکیجها و سرویسها. - اطلاعات تلگرام: شامل
BOT_TOKEN،API_ID/API_HASH(از my.telegram.org) وMAIN_ADMIN_ID(آیدی عددی ادمین). - اطلاعات MikroTik: آیپی، نام کاربری و رمز عبور روتر.
این راهنما شما را از سرور خام تا راهاندازی کامل پروژه هدایت میکند.
۱. بهروزرسانی پکیجهای سیستم:
sudo apt update && sudo apt upgrade -y۲. نصب پکیجهای مورد نیاز پایتون (pip و venv):
sudo apt install -y python3-pip python3-venv۱. سورس پروژه را کلون کرده و وارد پوشه شوید (فرض: مسیر /root/hamsell):
git clone https://github.com/mamadhoseein/hamsell.git /root/hamsell
cd /root/hamsell۲. ساخت و فعالسازی محیط مجازی (myenv):
python3 -m venv myenv
source myenv/bin/activate۳. نصب تمام پکیجهای مورد نیاز از requirements.txt:
pip install --upgrade pip
pip install -r requirements.txt##مرحله ۳: راهاندازی اولیه و تنظیمات وب در این مرحله، پنل وب را فقط برای یک بار دستی اجرا میکنید تا تنظیمات را وارد کنید.
۱. (فقط برای بار اول) اجرای دستی پنل وب:
python3 web_dashboard.pyتوجه: ترمینال شما در این حالت مشغول خواهد ماند.
۲. در مرورگر خود، آدرس http://[YOUR_SERVER_IP]:5000/install را باز کنید.
۳. با لاگین اولیه admin / admin وارد شوید.
۴. فرم نصب را با تمام اطلاعات تلگرام و MikroTik پر کنید و نام کاربری و رمز عبور جدید پنل وب را وارد نمایید.
۵. دکمه «نصب و راهاندازی نهایی» را بزنید.
اتفاقی که پس از نصب میافتد: پنل وب تنظیمات شما را در فایل .env ذخیره میکند.
سرویسهای config_bot.service و config_bot_web.service در /etc/systemd/system/ ایجاد میشوند.
سرویسها با پایتون محیط مجازی (myenv) شروع به کار میکنند.
اجرای دستی پنل در ترمینال شما متوقف شده و به پسزمینه (سرویس systemd) منتقل میگردد.
۱. اجرای دستی اسکریپت را در ترمینال متوقف کنید (یا منتظر بمانید تا پس از ریاستارت وب متوقف شود). ۲. محیط مجازی را غیرفعال کنید:
deactivateنصب کامل شد! 🎉
از این پس، ربات و پنل وب شما به صورت خودکار در پسزمینه اجرا میشوند.
آدرس پنل: http://[YOUR_SERVER_IP]:5000 (به جای [YOUR_SERVER_IP] از آدرس IP واقعی سرور استفاده کنید). لاگین: با استفاده از نام کاربری و رمز عبور جدید تنظیمشده در مرحله ۳ استفاده کنید.
مدیریت سرویسها (از طریق SSH) برای بررسی وضعیت سرویسها:
وضعیت ربات:
systemctl status config_bot.serviceوضعیت پنل وب:
systemctl status config_bot_web.serviceلاگهای ربات (برای عیبیابی):
journalctl -u config_bot.service -f --no-pagerمراحل را باید به ترتیب برید.
دانلود کردن فایل نصبی!
wget https://raw.githubusercontent.com/mamadhoseein/hamsell/main/hamsellدادن دسترسی به فایل
chmod +x hamsellاجرا کردن فایل hamsell
./hamsellاین ابزار برای مدیریت آسان سرویسهای Hamsell (ربات تلگرام و پنل وب) طراحی شده است.
محیط مجازی (Virtual Environment) یک پوشه ایزوله برای نصب پکیجهای پایتون است تا با پکیجهای اصلی سیستم تداخل نداشته باشد. این اسکریپت به صورت خودکار این مراحل را انجام میدهد:
- بررسی پوشه: اسکریپت چک میکند که آیا پوشه محیط مجازی (
myenv) در مسیر پروژه (/opt/hamsell/myenv) وجود دارد یا خیر. - ایجاد محیط: اگر وجود نداشته باشد، آن را با دستور
python3 -m venv /opt/hamsell/myenvایجاد میکند. - نصب پکیجها: سپس وارد محیط مجازی شده و تمام نیازمندیها مانند
gunicorn,flask,pyrogramوPillowرا با استفاده ازpipنصب میکند.
نکته: گزینههای «Full Install» و «Install Dependencies» هر دو این فرآیند را به صورت خودکار انجام میدهند.
-
1) Full Install (From Scratch)
- این گزینه پروژه را به صورت کامل از ابتدا نصب میکند.
- نیازمندیهای سیستمی (مانند
gitوpython3-venv) را نصب میکند. - پروژه را از گیتهاب در مسیر
/opt/hamsellکلون میکند. - نیازمندیهای پایتون (مانند
flaskوgunicorn) را در یک محیط مجازی (venv) نصب میکند. (مراحل بالا) - سرویس
systemdرا برای پنل وب (config_bot_web.service) ایجاد و اجرا میکند.
-
2) Install Dependencies (Fix missing modules)
- اگر با خطای "missing module" (نبود ماژول) مواجه شدید، از این گزینه استفاده کنید.
- این دستور فقط نیازمندیهای پایتون را در محیط مجازی (
venv) نصب یا بهروزرسانی میکند و سپس پنل وب را ریستارت میکند.
-
3) Update Project Code (Pull & Restart)
- برای بهروزرسانی پروژه به آخرین نسخه موجود در گیتهاب.
- ابتدا سرویسها را متوقف میکند، سپس
git pullمیگیرد، نیازمندیها را مجدد نصب میکند (برای ماژولهای جدید) و در نهایت هر دو سرویس را ریستارت میکند.
-
4) Restart All Services
- هر دو سرویس (ربات تلگرام و پنل وب) را ریستارت (راهاندازی مجدد) میکند.
-
5) Check Service Status
- وضعیت فعلی (فعال، غیرفعال، یا دارای خطا) هر دو سرویس را نمایش میدهد.
-
6) Stop All Services
- هر دو سرویس (ربات تلگرام و پنل وب) را متوقف میکند.
-
7) Cleanup Project (Delete All)
- (خطرناک!) این گزینه پروژه را به طور کامل حذف میکند.
- سرویسها را متوقف کرده و فایلهای
systemdمربوطه را حذف میکند. - کل پوشه پروژه (
/opt/hamsell) را به همراه محیط مجازی (venv) پاک میکند.
-
0) Exit
- از ابزار مدیریت خارج میشود.
محیط مجازی (venv) یک پوشه ایزوله ایجاد میکند که پکیجهای پایتون مورد نیاز پروژه شما فقط در آن نصب میشوند. این کار از تداخل پکیجهای پروژههای مختلف با یکدیگر یا با پکیجهای اصلی سیستم جلوگیری میکند.
این دستور یک پوشه جدید به نام myenv (شما میتوانید هر اسمی انتخاب کنید) ایجاد میکند. این پوشه شامل یک نسخه کپی از پایتون و ابزارهای مورد نیاز آن است.
python3 -m venv myenvsource myenv/bin/activatetrx : TNdNyYK7512MqXciX6AGkokv9zXCV7qGiS