پنل مرزبان ( آموزشی )
Открыть в Telegram
لینک Github مرزبان https://github.com/Gozargah/Marzban-examples گروه مرزبان https://t.me/gozargah_marzban
Больше333
Подписчики
Нет данных24 часа
Нет данных7 дней
Нет данных30 день
Архив постов
✔️ تمپلیت صفحه ساباسکریپشن
⭐️اپدیت جدید
https://github.com/MuhammadAshouri/marzban-templates
برای دوستانی که هاست دارن (آپدیت شد):
https://github.com/AC-Lover/AC-Subcription
تغییرات:
- بهبود عملکرد QR Code
- گزینه پروکسی
- انتخاب نرم افزار پیشنهادی
- ترتیب درست آموزشها
- افزودن reaction به گزینه کپی همه
- عدم نمایش نرم افزارهای بدون آموزش
- رفع باگهای جزئی
✅ آموزش اتصال یک سرور نود به دو یا چند سرور:
نمونه کانفیگ اتصال به دو سرور:
services:
node-1:
image: gozargah/marzban-node:latest
restart: always
volumes:
- /var/lib/marzban-node:/var/lib/marzban-node
ports:
- 6722:62050
- 6723:62051
- 8989:8989
node-2:
image: gozargah/marzban-node:latest
restart: always
volumes:
- /var/lib/marzban-node:/var/lib/marzban-node
ports:
- 1723:62050
- 1724:62051
- 1982:1982
❗️ توضیحات
تمامی تنظیمات و کانفیگ سرور نود در فایل docker-compose.yml قرار میگیرد.
تنظیمات سمت سرور اصلی به شکل زیر می شود:
port : 1723 6722
api port : 1724 6723
config port: 1982 8989بکاپ
قدم اول : اسکریپت را اجرا کنید
ابتدا این دستور را روی سرور خود اجرا می کنید
bash <(curl -Ls https://github.com/AC-Lover/backup/raw/main/backup.sh)
قدم دوم : تنظیم توکن
سپس از ما توکن ربات می خواهد، شما باید یک ربات از
https://t.me/BotFather
بسازید و توکن را بدهید.
قدم سوم : تنظیم چت آیدی
سپس از ما یک چت آیدی میخواهد و برای دریافت چت آیدی یا کانالی که برای پشتیبانگیری اختصاص دادهاید، باید یک پیام از خود یا کانال به این ربات
https://t.me/userinfobot
فوروارد کنید که این ربات چت آیدی را بهتون بده
قدم چهارم : تنظیم کپشن
در این مرحله از شما یک کپشن می خواهد که میتوانید خالی بزارید
قدم پنجم : تنظیم کرون جاب
مرحله بعد از شما کرون جاب میخواهد که برای تعیین وقت که ربات در چه زمانی بکاپ بگیرید و ارسال کند
که فرمتش اینجوریه :
0 1
مقدار اول که اینجا 0 هست دقیقه می باشد و مقدار دوم که اینجا 1 هست ساعت هست
حداقل عدد برای دقیقه 0 هست و حداکثر 60 است
حداقل عدد برای ساعت 0 هست و حداکثر 24 هست
برای تنظیم هر یک دقیقه یک بار بکاپ هر دو را 0 وارد کنید
در مثال بالا هر یک ساعت یک بار بکاپ می گرید
توجه داشته باشید که بین هر دو مقدار یک فاصله است
قدم ششم : انتخاب پنل
مرحله بعد از شما می پرسد که برای کدام پنل می خواهید بکاپ تهیه کنید
از بین marzbn و x-ui و hiddify باید یکی را انتخاب کنید
که مقدار m یعنی marzban و مقدار x یعنی x-ui و مقدار h یعنی hiddify
طبق نیاز خود بین x/m/h یک گزینه وارد کنید
قدم هفتم : حذف کرون جاب های قبلی
سپس از شما سوال میکنه که آیا می خواهید کرون جاب هایی که قبلا تعریف کرده اید پاک شود یا خیر؟
اگر می خواهید که پاک شود y را وارد کنید در غیر این صورت n را وارد کنیدساخت گواهی SSL
آموزش های پایین مربوط به دریافت گواهی SSL برای استفاده در مرزبان است.
توجه
فایل های گواهی باید در آدرس
/var/lib/marzban/certs
در دسترس باشند تا مرزبان بتواند به آنها دسترسی داشته باشد.
در تمام مثال های پایین، فایل ها در این آدرس نصب خواهند شد.
توجه
شما باید قبل از اقدام به دریافت گواهی SSL، رکورد های DNS دامنه را ثبت کرده باشید.
دریافت گواهی با acme.sh
با دستور زیر، acme.sh را نصب کنید.
YOUR_EMAIL
را به ایمیل خود تغییر دهید.
curl https://get.acme.sh | sh -s email=YOUR_EMAIL
نکته
در صورتی که acme.sh را قبلا نصب کردهاید، دیگر نیازی به انجام این مرحله نیست.
برای دریافت گواهی، دستورات زیر را به ترتیب اجرا کنید.
YOUR_DOMAIN
را به دامنه یا سابدامنهی مورد نظر خود تغییر دهید.
✅ export DOMAIN=YOUR_DOMAIN
✅ mkdir -p /var/lib/marzban/certs
✅ ~/.acme.sh/acme.sh \
--issue --force --standalone -d "$DOMAIN" \
--fullchain-file "/var/lib/marzban/certs/$DOMAIN.cer" \
--key-file "/var/lib/marzban/certs/$DOMAIN.cer.key"
فعالسازی SSL با Uvicorn
مرزبان به صورت پیشفرض به کمک Uvicorn اجرا میشود. همچنین Uvicorn به شما امکان تعریف فایل های گواهی SSL را میدهد.
بعد از ساخت فایل های گواهی SSL، متغیر های زیر را در فایل
.env
مقداردهی کنید.
UVICORN_SSL_CERTFILE = "/var/lib/marzban/certs/YOUR_DOMAIN.cer"
UVICORN_SSL_KEYFILE = "/var/lib/marzban/certs/YOUR_DOMAIN.cer.key"
XRAY_SUBSCRIPTION_URL_PREFIX = https://YOUR_DOMAIN
حالا داشبورد مرزبان در آدرس دامنه یا سابدامنهی شما از طریق https در دسترس خواهد بود.نصب سریع نسخه جدید مرزبان
sudo bash -c "$(curl -sL https://github.com/Gozargah/Marzban-scripts/raw/master/marzban.sh)" @ install
داده های مرزبان در مسیر
/var/lib/marzban
ذخیره خواهند شد.
فایل های اپلیکیشن مرزبان
(docker-compose.yml و .env)
در مسیر
/opt/marzban
ذخیره خواهند شد.
بعد از نصب
لاگ های مرزبان نمایش داده خواهد شد که با فشردن Ctrl+C میتوانید آن را متوقف کنید.
داشبورد به صورت پیشفرض روی پورت ۸۰۰۰ اجرا خواهد شد که میتوانید از طریق آدرس
http://YOUR_SERVER_IP:8000/dashboard/
وارد آن شوید.
برای تغییر تنظیمات پیشفرض، میتوانید با باز کردن فایل
/opt/marzban/.env
متغیر های مورد نظر خود را تغییر داده و مرزبان را با دستور زیر ریاستارت کنید.
marzban restart
ویرایش فایل با nano
سادهترین راه ویرایش فایل
.env
استفاده از ویرایشگر nano هست.
با دستور زیر فایل را باز کنید.
nano /opt/marzban/.env
تغییرات خود را اعمال کنید و با فشردن Ctrl+s فایل را ذخیره کنید. سپس با فشردن Ctrl+x از محیط ویرایشگر خارج شوید.برای آپدیت مراحل زیر رو انجام بدین:
۱. بک آپ دیتابیس
cp /var/lib/marzban/db.sqlite3 /var/lib/marzban/db.sqlite3.bak
۲. ایمیج جدید داکر رو دانلود کنید
docker pull gozargah/marzban:dev
۳. سرویستون رو ری استارت کنید
cd marzban
docker compose down
docker compose up -dبرای ادیت در فایل json و env اول باید وارد پوشه مرزبان بشید.
cd marzban
در آینده با این ۲ تا پوشه زیاد کار دارید😉
ادیت json
nano xray_config.json
ادیت env
nano env
بعد از ادیت
با دستور
Ctrl X
Y
ENTER
سیو کنید
و حتما در انتها دستور
docker compose down
docker compose up -d
بزنیدhttp://{YOUR_SERVER_IP}:8880/dashboard
یه نکته احتمالا پنلتون با پورت 8880 بالا نیاد
تو فایل env پورت رو تغییر بدیدبعد از هر تغییری تو فایل env و json
حتما دستور زیر رو بزنید
docker compose down
docker compose up -dواقعا هدف از زدن این کانال برای کمک به همه هست و مخصوصا نجات ای پی های بدبختی که دارن روز به روز با ساختن کانفیگ های اشتباه فیلتر میشن
دوستان توجه کنید
برای ریلیتی حتماااااا باید IP سرور سالم باشه
مثال: یه ای پی ممکنه روی همراه اول خوب باشه ولی روی ایرانسل خوب نباشه
درضمن تایم اوت نداشتن و به putty وصل شدن دلیل بر ای پی سالم نیست
ای پی باید آپلود درست داشته باشه
که باید تست کنید۲ تا اپلیکیشن خیلی کاربردی برای دوستانی که خیلی از کارهای سرورشون رو با گوشی انجام میدن
دوستانی که یکم اماتور هستن و تا حالا با پنل مرزبان کار نکردن
سعی میکنم تو این ۱-۲ روز اموزش هارو با عکس بزارم که بهتر متوجه بشید✌️
نسخه dev برای Reality
این دستور رو بزنید:
nano docker-compose.yml
این لاین رو
image: gozargah/marzban:latest
به این لاین تغییر بدید:
image: gozargah/marzban:dev
دستور Save کردن فایل
Ctrl X
Y
ENTER
برای کانفیگ ریلیتی(آیپی سرور باید تمیز باشه):
وارد پوشه مرزبان شید:
cd marzban
بعد با زدن این publicKey و privateKey خودتون رو بگیرید و ذخیره کنید:
docker compose exec marzban xray x25519
با زدن این دستور میتونید مقادیر رو ببینید:
cat keys
بعد وارد فایل xray_config.json بشید:
nano xray_config.json
ما اینجا یه کانفیگ روی پورت 2083 برای ایرانسل و یه کانفیگ روی پورت 2096 برای همراه اول مینویسیم(جلوتر یه کانفیگ هم میگم که چطور از یه پورت برای هر دوتا استفاده کنید) توی تگ اینباند ترجیحا بعد تموم شدن کانفیگ TROJAN FALLBACK این رو برای ایرانسل وارد کنید:
{
"tag": "VLESS_REALITY_Irancell",
"port": 2083,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"security": "reality",
"realitySettings": {
"show": false,
"dest": "www.google-analytics.com:443",
"xver": 0,
"serverNames": [
"www.google-analytics.com"
],
"publicKey": "Pub",
"privateKey": "Priv",
"shortIds": [
"a1"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
قسمت network میتونید از tcp,h2,grpc استفاده کنید
(از grpc استفاده نکنید چون روی h2 سواره و تفاوتی با عملکرد h2 نداره. بین tcp و h2 اگه پینگ پایینتر و عملکرد روون تر میخواید از h2 و اگه امنیت و سرعت بیشتری میخواید از tcp استفاده کنید)
قسمت pub و priv رو مقادیری که توی مرحله ۱ گرفتید رو وارد کنید.
برای همراه اول بعد از کانفیگ بالا این رو وارد کنید:
{
"tag": "VLESS_REALITY_Hamrah",
"port": 2096,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"security": "reality",
"realitySettings": {
"show": false,
"dest": "yahoo.com:443",
"xver": 0,
"serverNames": [
"yahoo.com"
],
"publicKey": "Pub",
"privateKey": "Priv",
"shortIds": [
"b1"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
چیز دیگه ای لازم نداره برای این هم مثل قبلی عمل کنید و بعد
با ctrl + x و y بعدش Enter سیو کنید و خارج شید.
3️⃣ بعد برای اعمال تغییرات باید docker رو ری استارت کنید.
docker compose down
docker compose up -d
4️⃣وارد پنل شید و روی سه خط بالا سمت راست بزنید برید به قسمت Host settings دو کانفیگ به اسم ریلیتی برامون اضافه شده از قسمت Advanced options میتونید fingerprint که میخواید بذارید و توی قسمت آدرس میتونید آیپی یا ساب دامنه سرورتون بذارید و تغییرات رو ذخیره کنید.
5️⃣ حالا میتونید create user کنید و از ریلیتی استفاده کنید (برای استفاده از tcp موقع ساخت کاربر flow رو حتما تغییر بدید)
6️⃣ اگه از ufw استفاده میکنید پورت های 2083 و 2096 رو باز کنید:
ufw allow 2083 && ufw allow 2096ssl
سرور Node
apt update
curl -fsSL https://get.docker.com | sh
git clone https://github.com/Gozargah/Marzban-node
cd Marzban-node
docker compose up -d
cat /var/lib/marzban-node/ssl_cert.pem