برای راحتی کار و مدیریت کانفیگ های مختلف از پنل x-ui استفاده میکنیم. این پنل توسط افراد مختلفی توسعه داده شده که بهترین نسخه آن FranzKafkaYu هست. ما در این آموزش این نسخه از پنل را نصب میکنیم.
ابتدا با دستور زیر وارد پوشه پنل شوید
cd /opt/freedom/x-ui
با کمک این آموزش، شما میتوانید پنل های زیر را نصب کنید
- پنل MHSanaei
- پنل FranzKafkaYu
- پنل NidukaAkalanka
پنل پیشفرض آموزش، MHSanaei
میباشد. اگر میخواهید پنل دیگری را از لیست بالا نصب کنید، باید فایل docker-compose.yml
را ویرایش کرده و نسخه مورد نظر خود را وارد کنید. ایمیج های پشتیبانی شده را در اینجا (کلیک کنید) میتوانید مشاهده کنید.
ساختار ایمیج ها به شکل زیر است.
- ایمیج
rahgozar94725/x-ui
: ایمیج پیشفرض آموزش که آخرین نسخه پنلMHSanaei
را نصب میکند - ایمیج
rahgozar94725/x-ui:mhsanaei
: این ایمیج آخرین نسخه پنلMHSanaei
را نصب میکند - ایمیج
rahgozar94725/x-ui:mhsanaei-changeToYourVersion
: با تغییرchangeToYourVersion
به ورژن مورد نظر، میتوانید ورژن دلخواه خود را نصب کنید. در آموزش از ورژنv1.0.6
به بعد پشتیبانی میشود. - ایمیج
rahgozar94725/x-ui:franzkafkayu
: این ایمیج آخرین نسخه پنلFranzKafkaYu
را نصب میکند. - ایمیج
rahgozar94725/x-ui:franzkafkayu-changeToYourVersion
: با تغییرchangeToYourVersion
به ورژن مورد نظر، میتوانید ورژن دلخواه خود را نصب کنید. در آموزش از ورژن0.3.3.18-1207
به بعد پشتیبانی میشود. - ایمیج
rahgozar94725/x-ui:nidukaakalanka
: این ایمیج آخرین نسخه پنلNidukaAkalanka
را نصب میکند. - ایمیج
rahgozar94725/x-ui:nidukaakalanka-changeToYourVersion
: با تغییرchangeToYourVersion
به ورژن مورد نظر، میتوانید ورژن دلخواه خود را نصب کنید. در آموزش از ورژن0.2.1.2
به بعد پشتیبانی میشود.
در صورتی که میخواهید پنل دیگری نصب کنید، با دستور زیر فایل docker-compose.yml
را باز کرده و عبارت rahgozar94725/x-ui
را با ایمیج مورد نظر جایگزین کنید و سپس با فشردن کلید های ctrl + x
و y
و enter
اغییرات را ذخیره کنید.
nano docker-compose.yml
پورت پیشفرض پنل ها به شرح زیر است است.
- پنل
MHSanaei
پورت2053
- پنل
FranzKafkaYu
پورت54321
- پنل
NidukaAkalanka
پورت54321
با دستور زیر پورت را در فایروال باز کنید. اگر از پنل پیشفرض استفاده نمیکنید، 2053
را با پورت پنل مورد نظر جایگزین کنید.
ufw allow 2053
با دستور زیر پنل را راه اندازی میکنیم.
docker-compose up -d
آدرس زیر را در مرورگر خود باز کنید تا وارد پنل شوید. به جای 1.2.3.4
آیپی سرور خود را وارد کنید. اگر از پنل پیشفرض استفاده نمیکنید، 2053
را با پورت پنل مورد نظر عوض کنید.
http://1.2.3.4:2053
توجه توجه: تصاویر زیر مربوط به پنل FranzKafkaYu
میباشد. تمامی مراحل ساخت اینباند در پنل ها تقریبا مشابه با همین پنل هست. تنها تفاوت در این است که در پنل های دیگر با باز کردن بار اول صفحه settings
دیگر root path
به طور خودکار و تصادفی تغییر نمیکند و در صورت تمایل میتوانید برای افزایش امنیت پنل خودتان به صورت دستی یک مسیر تصادفی انتخاب کنید.
یوزرنیم و پسورد پیشفرض پنل admin
است بعد از وارد کردن بر روی login
کلیک کنید
وقتی صفحه اصلی پنل را برای اولین بار باز میکنید، در شماره 1 در تصویر به آدرس پنل دقت کنید. آدرس به صورت http://1.2.3.4:54321/xui/
دیده میشود. در مرحله بعد این آدرس تغییر خواهد کرد. بر روی settings
در شماره 2 کلیک کنید.
بعد از کلیک بر روی settings
پس از چند ثانیه دوباره به صفحه اصلی برمیگردید با این تفاوت که آدرس پنل تغییر کرده است. در شماره 1 به آدرس دقت کنید. http://1.2.3.4:54321/ay4l/xui/
همانطور که مشاهده میکنید بعد از پورت یک مسیر 4 حرفی اضافه شده است. این مسیر در اولین بار که وارد settings
میشوید به طور تصادفی ایجاد میشود. در مثال ما این مسیر ay4l
میباشد. علت این تغییر افزایش امنیت پنل هست. از آنجایی که پورت پیشفرض پنل 54321
هست، اگر کسی آیپی سرور شما را بداند میتواند وارد صفحه لاگین پنل شود و درصورتی که رمز پنل را تغییر نداده باشید میتواند وارد صفحه اصلی پنل نیز بشود. این آدرس را ذخیره کنید در غیر اینصورت در دفعات بعدی اگر تنها آیپی و پورت سرور را در مرورگر وارد کنید پنل باز نشده و ارور 404 دریافت میکنید. دوباره بر روی settings
کلیک کنید.
در صفحه باز شده تنظیمات مربوط به پنل را مشاهده میکنید.
- در شماره 1 میتوانید پورت پیشفرض را تغییر دهید. اگر پورت را تغییر دادید باید در ترمینال سرور پورت قبلی را بسته و پورت جدید را جایگزین کنید. (اگر پورت را تغییر ندادید نیازی به انجام دستورات زیر ندارید.) مثلا اگر پورت سرور را به
6587
تغییر دادید، باید دستورات زیر را در ترمینال اجرا کنید
ufw delete allow 54321
ufw allow 6587
- در شماره 2 و 3 در صورتی که میخواهید با دامنه خود و SSL وارد پنل شوید، باید گواهی SSL خود را وارد کنید.
- اگر طبق آموزش عمل کرده باشید، در شماره 2 مسیر
/opt/cert/fullchain.crt
را وارد کنید - اگر طبق آموزش عمل کرده باشید، در شماره 3 مسیر
/opt/cert/private.key
را وارد کنید - بعد از ذخیره تغییرات آدرس پنل به صورت
https://sub.test.com:54321/ay4l/xui/
خواهد شد.sub.test.com
را با دامنه خود جایگزین کنید. (در صورت عدم دسترسی به پنل با دامنه کافی هست با دستورdocker-compose down && docker-compose up -d
پنل رو ریستارت کنید.)
- اگر طبق آموزش عمل کرده باشید، در شماره 2 مسیر
- درشماره 4 مسیر تصادفی را که در مرحله قبل گفتیم میبینید. در صورتی تمایل میتوانید آن را تغییر دهید. دقت کنید در صورت تغییر بعد از ذخیره کردن تغییرات، پنل باز نخواهد شد و ارور 404 دریافت خواهید کرد. باید مسیر جدید را در آدرس قبلی
http://1.2.3.4:54321/ay4l/xui/
باay4l
جایگزین کرده و آدرس را ذخیره کنید. - در شماره 5، ابتدا بر روی
save
و سپس بر رویrestart
کلیک کنید - در نهایت در شماره 6 بر روی
User Setting
کلیک کنید.
در پنجره باز شده در شماره 1 یوزرنیم و پسورد فعلی خود را که هر دو admin
هست، وارد کنید. در شماره 2 یوزرنیم و پسورد جدید را وارد کنید. در شماره 3 روی Modify
کلیک کنید. در نهایت در شماره 4 ابتدا بر روی save
و سپس restart
کلیک کنید.
پنل شما آماده استفاده هست
تمامی این دستورات باید در پوشه x-ui
اجرا شوند.
با دستور زیر میتوانید مشخصات پنل را مشاهده کنید.
docker-compose exec xui x-ui setting -show
پس از اجرای دستور مانند قسمت زیر، مشخصات فعلی پنل را شامل ورژن، یوزرنیم، پسورد، پورت و مسیر روت مشاهده میکنید
当前面板信息[current panel info]:
面板版本[version]: 0.3.4.0:20230209
用户名[username]: admin
密码[userpasswd]: admin
监听端口[port]: 54321
根路径[rootPath]: /ay4l/
با دستور زیر میتوانید یوزرنیم پنل را تغییر دهید. newUserName
را با یوزرنیم دلخواه خود و newPassword
را با پسورد دلخواه خود جایگزین کنید.
docker-compose exec xui x-ui setting -username newUserName -password newPassword
با دستور زیر میتوانید پورت پنل را تغییر دهید. newPort
را با پورت دلخواه خود جایگزین کنید
docker-compose exec xui x-ui setting -port newPort
بعد از تغییر پورت با دستور زیر پورت قبلی را در فایروال ببندید. oldPort
را با پورت فعلی جایگزین کنید
ufw delete allow oldPort
با دستور زیر پورت جدید را در فایروال باز کنید. newPort
را با پورت جدید جایگزین کنید.
ufw allow newPort
در صفحه اصلی پنل در ستون کناری سمت چپ ابتدا روی inbounds
و در صفحه باز شده روی Add inbound
کلیک کنید. تنظیمات را مطابق عکس زیر وارد کنید.
- در شماره 1 یک اسم دلخواه بنویسید
- در شماره 2 از لیست بازشونده
trojan
را انتخاب کنید - در شماره 3 به صورت تصادفی پنل یک پورت انتخاب میکند این را تغییر ندهید
- در شماره 4 میتوانید محدودیت حجمی برای کاربر ایجاد کنید
- در شماره 5 میتوانید محدودیت زمانی ایجاد کنید
- در شماره 6 میتوانید محدودیت تعداد آیپی را مشخص کنید. در هیچکدام از پنل ها این مورد به درستی کار نمیکند!!!
- در شماره 7 با زدن
+
یک یوزر ایجاد کنید. امکان اضافه کردن چند یوزر وجود دارد اما ما برای هر یوزر یکinbound
اضافه میکنیم - در شماره 8 از لیست بازشونده
ws
را انتخاب کنید - در شماره 9 باید ترکیب کلمه
wss
و پورتی را که در شماره 3 انتخاب شده بنویسید.wss + port
که در این مثال میشود/wss57299
. - در شماره 10
tls
را خاموش کنید. سرورnginx
ارتباط tls را هندل خواهد کرد. - در شماره 11 با زدن بر روی
add
یوزر شما ایجاد خواهد شد. - باید در لینک یوزر تغییراتی را اعمال کنیم. پس ادامه مطالب را بخوانید
در عکس فوق ابتدا بر روی شماره 1 کلیک کنید و از لیست بازشونده QR
را انتخاب کنید. در شماره 2 اگر با کلیک بر روی copy
لینک را کپی کنید و در کلاینت خود وارد کنید. من از V2rayN
استفاده میکنم.
- در شماره 1 چند انتخاب دارید. توصیه میکنیم از تمام این گزینه ها استفاده کنید تا در اپراتورهای مختلف بتوانید با یکی از این موارد وصل شوید. در اینجا ما از دامنه هایی که در آموزش کلاودفلر گفتیم استفاده میکنیم.
- دامنه مستقیم
sub.test.com
- دامنه CDN کلاودفلر
subcdn.test.com
- کاستوم آیپی کلاودفلر برای هر اپراتور (به آموزش کلاودفلر مراجعه کنید)
- دامنه CDN آروان
subcdn.test1.com
در اینصورت شماره های 3 و 6 را بهsub.test1.com
تغییر دهید.
- دامنه مستقیم
- در شماره 2 اگر طبق آموزش پیش رفته باشید میتوانید
443
و یا2083
راوارد کنید. - در شماره 3 و 6 دامنه مستقیم خود را وارد کنید
sub.test.com
- در شماره 4 عبارت را تغییر ندهید اما میتوانید با اضافه کردن
?ed=2048
سرعت اتصال را بهبود ببخشید. درنهایت به این شکل خواهد بود/wss57299?ed=2048
- در شماره 5 از لیست باز شونده
tls
را انتخاب کنید - در شماره 7 با زدن بر روی
ok
تغییرات را ذخیره کنید.
لینک شما اماده است.
در صفحه اصلی پنل در ستون کناری سمت چپ ابتدا روی inbounds
و در صفحه باز شده روی Add inbound
کلیک کنید. تنظیمات را مطابق عکس زیر وارد کنید.
- در شماره 1 یک اسم دلخواه بنویسید
- در شماره 2 از لیست بازشونده
trojan
را انتخاب کنید - در شماره 3 به صورت تصادفی پنل یک پورت انتخاب میکند این را تغییر ندهید
- در شماره 4 میتوانید محدودیت حجمی برای کاربر ایجاد کنید
- در شماره 5 میتوانید محدودیت زمانی ایجاد کنید
- در شماره 6 میتوانید محدودیت تعداد آیپی را مشخص کنید. در هیچکدام از پنل ها این مورد به درستی کار نمیکند!!!
- در شماره 7 با زدن
+
یک یوزر ایجاد کنید. امکان اضافه کردن چند یوزر وجود دارد اما ما برای هر یوزر یکinbound
اضافه میکنیم - در شماره 8 از لیست بازشونده
grpc
را انتخاب کنید - در شماره 9 باید ترکیب کلمه
grpc
و پورتی را که در شماره 3 انتخاب شده بنویسید.grpc + port
که در این مثال میشودgrpc30521
. - در شماره 10
tls
را خاموش کنید. سرورnginx
ارتباط tls را هندل خواهد کرد. - در شماره 11 با زدن بر روی
add
یوزر شما ایجاد خواهد شد. - باید در لینک یوزر تغییراتی را اعمال کنیم. پس ادامه مطالب را بخوانید
در عکس فوق ابتدا بر روی شماره 1 کلیک کنید و از لیست بازشونده QR
را انتخاب کنید. در شماره 2 اگر با کلیک بر روی copy
لینک را کپی کنید و در کلاینت خود وارد کنید. من از V2rayN
استفاده میکنم.
- در شماره 1 چند انتخاب دارید. توصیه میکنیم از تمام این گزینه ها استفاده کنید تا در اپراتورهای مختلف بتوانید با یکی از این موارد وصل شوید. در اینجا ما از دامنه هایی که در آموزش کلاودفلر گفتیم استفاده میکنیم.
- دامنه مستقیم
sub.test.com
- دامنه CDN کلاودفلر
subcdn.test.com
- کاستوم آیپی کلاودفلر برای هر اپراتور (به آموزش کلاودفلر مراجعه کنید)
- دامنه CDN آروان
subcdn.test1.com
در اینصورت شماره 5 را بهsub.test1.com
تغییر دهید.
- دامنه مستقیم
- در شماره 2 اگر طبق آموزش پیش رفته باشید میتوانید
443
و یا2083
راوارد کنید. - در شماره 3 از لیست باز شونده
tls
را انتخاب کنید - در شماره 4 تیک گزینه
h2
را فعال کنید. - در شماره 5 دامنه مستقیم خود را وارد کنید
sub.test.com
- در شماره 6 با زدن بر روی
ok
تغییرات را ذخیره کنید.
لینک شما اماده است.
در صفحه اصلی پنل در ستون کناری سمت چپ ابتدا روی inbounds
و در صفحه باز شده روی Add inbound
کلیک کنید. تنظیمات را مطابق عکس زیر وارد کنید.
- در شماره 1 یک اسم دلخواه بنویسید
- در شماره 2 از لیست بازشونده
vmess
را انتخاب کنید - در شماره 3 به صورت تصادفی پنل یک پورت انتخاب میکند این را تغییر ندهید
- در شماره 4 میتوانید محدودیت حجمی برای کاربر ایجاد کنید
- در شماره 5 میتوانید محدودیت زمانی ایجاد کنید
- در شماره 6 میتوانید محدودیت تعداد آیپی را مشخص کنید. در هیچکدام از پنل ها این مورد به درستی کار نمیکند!!!
- در شماره 7 با زدن
+
یک یوزر ایجاد کنید. امکان اضافه کردن چند یوزر وجود دارد اما ما برای هر یوزر یکinbound
اضافه میکنیم - در شماره 8 از لیست بازشونده
ws
را انتخاب کنید - در شماره 9 باید ترکیب کلمه
wss
و پورتی را که در شماره 3 انتخاب شده بنویسید.wss + port
که در این مثال میشود/wss41139
. - در شماره 10
tls
را خاموش کنید. سرورnginx
ارتباط tls را هندل خواهد کرد. - در شماره 11 با زدن بر روی
add
یوزر شما ایجاد خواهد شد. - باید در لینک یوزر تغییراتی را اعمال کنیم. پس ادامه مطالب را بخوانید
در عکس فوق ابتدا بر روی شماره 1 کلیک کنید و از لیست بازشونده QR
را انتخاب کنید. در شماره 2 اگر با کلیک بر روی copy
لینک را کپی کنید و در کلاینت خود وارد کنید. من از V2rayN
استفاده میکنم.
- در شماره 1 چند انتخاب دارید. توصیه میکنیم از تمام این گزینه ها استفاده کنید تا در اپراتورهای مختلف بتوانید با یکی از این موارد وصل شوید. در اینجا ما از دامنه هایی که در آموزش کلاودفلر گفتیم استفاده میکنیم.
- دامنه مستقیم
sub.test.com
- دامنه CDN کلاودفلر
subcdn.test.com
- کاستوم آیپی کلاودفلر برای هر اپراتور (به آموزش کلاودفلر مراجعه کنید)
- دامنه CDN آروان
subcdn.test1.com
در اینصورت شماره های 3 و 6 را بهsub.test1.com
تغییر دهید.
- دامنه مستقیم
- در شماره 2 اگر طبق آموزش پیش رفته باشید میتوانید
443
و یا2083
راوارد کنید. - در شماره 3 و 6 دامنه مستقیم خود را وارد کنید
sub.test.com
- در شماره 4 عبارت را تغییر ندهید اما میتوانید با اضافه کردن
?ed=2048
سرعت اتصال را بهبود ببخشید. درنهایت به این شکل خواهد بود/wss41139?ed=2048
- در شماره 5 از لیست باز شونده
tls
را انتخاب کنید - در شماره 7 با زدن بر روی
ok
تغییرات را ذخیره کنید.
لینک شما اماده است.
همان لینک مرحله قبل را به صورت زیر ویرایش کنید.
- در شماره 1 چند انتخاب دارید. توصیه میکنیم از تمام این گزینه ها استفاده کنید تا در اپراتورهای مختلف بتوانید با یکی از این موارد وصل شوید. در اینجا ما از دامنه هایی که در آموزش کلاودفلر گفتیم استفاده میکنیم.
- دامنه مستقیم
sub.test.com
- دامنه CDN کلاودفلر
subcdn.test.com
- کاستوم آیپی کلاودفلر برای هر اپراتور (به آموزش کلاودفلر مراجعه کنید)
- دامنه CDN آروان
subcdn.test1.com
در اینصورت شماره های 3 و 6 را بهsub.test1.com
تغییر دهید.
- دامنه مستقیم
- در شماره 2
80
راوارد کنید. - در شماره 3 دامنه مستقیم خود را وارد کنید
sub.test.com
- در شماره 4 عبارت را تغییر ندهید اما میتوانید با اضافه کردن
?ed=2048
سرعت اتصال را بهبود ببخشید. درنهایت به این شکل خواهد بود/wss41139?ed=2048
- در شماره 5 از لیست باز شونده
tls
را انتخاب نکنید و آن را خالی بگذارید!!! - در شماره 6 با زدن بر روی
ok
تغییرات را ذخیره کنید.
لینک شما اماده است.
- میتوانید به جای
trojan
ازvless
نیز استفاده کنید. - ترکیبات فوق ترکیباتی هستند که در حال حاضر خوب جواب میدهند ترکیبات دیگر توصیه نمیشود هرچند میتوانید خودتان تست کنید.
- اگر از پورت های
80
و443
و2083
که بهnginx
اختصاص دادیم استفاده نکنید میتوانید از پورت های دیگر استفاده کنید. در اینصورت ترافیک ازnginx
عبور نمیکند و باید در هنگام ساختinbond
ها در قسمتtls
مسیر گواهی ها را وارد کنید و همچنین پورتی را که قصد استفاده دارید در فایروال باز کنید. - برای بهره مندی از TLS1.3 در تمامی حالاتی که TLS را فعال کرده اید، در کلاینت خود
uTLS
را رویchrome
قرار دهید.