-
-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Common questions and problems
قصد داریم به مسائل رایجی که ممکن است در ران کردن پنل و استفاده از xray، با آنها مواجه شوید، پرداخته و راهحلهای کوتاه و مختصری ارائه دهیم.
معمولا اولین اقدام در سرور لینوکس آپدیت و آپگرید سرور است.
آپدیت سرور با دستور یک خطی:
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
حل خطاهای آپدیت سرور:
گاهی با تغییر لینکهای sources میتوانید مشکلات آپدیت را حل کنید.
nano /etc/apt/sources.list
مخزن مناسب را از لینکهای زیر دریافت کنید.
اگر در هنگام آپدیت دسترسی شما قطع شد، و هنگام آپدیت مجدد ارور دریافت کردید؛ دستورات زیر مشکل را حل میکند.
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock*
dpkg --configure -a
sudo dpkg --configure -a
بعد از اجرای دستورات مجدد آپدیت و آپگرید را انجام دهید.
پورت پیش فرض SSH 22 است. تغییر آن میتواند در امنیت سرور موثر باشد.
برای برخی سرور ها لاگین با یوزر غیر روت انجام میشود.
که با دستور sudo -i
یا sudo su
یوزر را به روت تغییر میکند.
همچنین میتوانید اجازه لاگین یوزر root را با دستور زیر بدهید و مستقیم با روت وارد سرور شوید.
sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && sudo systemctl restart ssh && sudo passwd
عوض کردن DNS سرور میتواند باعث بهبود عملکرد سرور و گذر از برخی محدودها باشد. آموزش تغییر DNS سرور
الف) DNS های پیشنهادی
nameserver 8.8.8.8
nameserver 8.8.4.4
در سرور ایران برای نصب ابزارهای تحریم شده نیاز به تغییر DNS به شکن دارید.
nameserver 178.22.122.100
nameserver 185.51.200.2
فعال کردن فایروال برای امنیت سرور و مسدود نشدن آن مفید و موثر است. همچنین در برخی سرور ها فایروال بطور پیشفرض باز است و شما باید پورتهای مورد نیاز خود را فعال کنید.
ابتدا پورت هایی که نیاز دارید را در فایروال با دستور زیر فعال کنید، این پورت ها می تواند شامل پورت SSH، پورت پنل، پورت کانفیگ ها و ... باشد.
sudo ufw allow <port>/tcp
سپس با دستور زیر فایروال را روشن کنید.
sudo ufw enable
با دستور sudo ufw status
وضعیت فایروال خود را ببینید.
همچنین به کمک Firewall Management در منوی x-ui میتوانید، فایروال سرور را به راحتی فعال کنید.
با توجه به پیشنهادات سازنده xray و صاحب نظران ترکیب TCP REALITY VISION بهترین انتخاب است. البته میتوان از GRPC و H2 نیز که پینگ پایین تری دارند استفاده کرد، اما معمولا TCP در تست های سرعت موفق تر بوده است. بعلاوه در این آموزش ترکیب REALITY و HTTP Camouflage و تعدادی SNI معرفی شده است. پیشنهاد میشود با استفاده از ابزار SNI RealiTLScanner با مشخصه TLS 1.3 H2 پیدا کرده و از آن استفاده کنید.
قویاً توصیه میشود تمامی کانفیگ ها را روی یک اینباند یا پورت بزنید.
اگر شما از طریق ربات یا لاگهای سرور متوجه شدید که پنلتون بروت فورس میشود چند راهکار دارید.
1- تغییر port و path پنل.
2- بلاک کردن آیپی اتکر. اگر فقط یک آیپی سعی دارد به پنل شما ورود کند در صورت فعال بودن فایروال با دستور زیر میتوانید آیپی او را مسدود کنید.
sudo ufw deny from <ip-address> to any
3- محدود کردن ورود به پنل با آیپی خودتان. با باز نگذاشتن پورت پنل در فایروال میتوانید تنها با کانفیگ و آیپی همان سرور لاگین کنید. یا اگر آیپی دیگری دارید در صورت فعال بودن فایروال با دستور زیر میتوانید آن را مجاز کنید.
sudo ufw allow from <ip-address> to any port <panel-port> proto tcp
فعال کردن https برای پنل نیز از نکات امنیتی مهم است.
sysctl net.ipv4.ip_forward=0
ابتدا دستور بالا را اجرا کنید و سپس تمام دستوراتی که برای فعال کردن تانل آیپی تیبل استفاده کردید بجای فلگ A- از D- استفاده کنید و دستور ها را اجرا کنید.
اینجا توضیح داده شده و برای مشخص کردن بطور دقیق میتوانید از این سایت استفاده کنید.
بله؛ از ورژن 1.7.0+ با نصب کردن fail2ban در منوی x-ui و مشخص کردن لیمیت برای هر کلاینت میتوان از آن استفاده کرد. در صورت وصل شدن تعداد غیرمجاز کاربر آیپی به مدت زمانی که خودتان مشخص کردید مسدود میشود. از ورژن 1.7.9+ باید اکسس لاگ را در تنظیمات xray به شکل زیر فعال کنید.
"log": {
"access": "./access.log",
"dnsLog": false,
"error": "./error.log",
"loglevel": "warning"
},
یا در نسخه 2.1.3+ گزینه Xray Configs -> Basics -> General -> Access Log را روی access.log/. قرار دهید.
برای تانل مستقیم نمیتوانید از آیپی لیمیت استفاده کنید، زیرا فقط آیپی سرور ایران شما به سرور خارج میرسد. راهکار ساده آن تانل پنل به پنل outbound و استفاده از آیپی لیمیت در سرور ایران است.
آیپی لیمیت بصورت پیشفرض برای کانفیگهای CDN کار نمیکند، زیرا آیپی سرورهای لبه CDN به سرور ما میرسد. برای ارسال آیپی کاربر به xray میتوانید به کمک nginx با تنظیم هدر X-Forwarded-For برای WS و X-Real-IP برای GRPC ریورس پروکسی ایجاد کنید و در تنظیمات inbound خود acceptProxyProtocol را فعال کنید.
وارپ ترافیک سرور شما را با استفاده از وایرگارد از شبکه کلودفلر رد میکند، از این طریق آیپی سرور شما به آیپی کلودفلر تغییر میکند. به دلیل اینکه آیپی های وارپ در بیشتر سرویسها وایت لیست هستند، میتوانید به سایتهایی که ارور forbidden یا 403 میدهند دسترسی داشته باشید. البته آیپی سرور شما ممکن است ثابت نباشد.
به این ترتیب میتوانید وارپ را فعال کنید: Xray Configs -> Outbounds -> Create -> Add Outbound
در ستون Basics تیک پلتفورم هایی مثل گوگل و اسپاتیفای را بزنید
و یا سایت دلخواه خود را به این ترتیب اضافه کنید: Xray Configs -> Routing Rules -> Add Rule
Outbound Tag را warp انتخاب کرده و دامنه های خود را به شکل زیر Domain اضافه کنید:
bing.com,yahoo.com,geosite:instagram,geosite:meta
geosite های موجود را میتوانید از این لینک مشاهده کنید.
برای رد کردن کل ترافیک از وارپ میتوانید کد route وارپ را در ستون Advanced به شکل زیر تغییر دهید.
{
"type": "field",
"outboundTag": "warp",
"network": "tcp,udp"
},
بعلاوه درصورتی که با ارور 403 در گوگل مواجه شدید، اجباری به نصب وارپ نیست و میتوانید با فعال کردن تیک Use IPv4 for Google در تنظیمات xray پنل مشکل راه حل کنید.
برای اسپاتیفای گاهی به غیر از وارپ نیاز به فعال کردن Fake Dns در سمت کلاینت نیز هست.
دریافت abuse از سمت دیتاسنتر ها مربوط به پنل نمیباشد.
رد کردن کل ترافیک از وارپ میتواند از برخی ابیوزها جلوگیری کند. اجرا و نصب نکردن اسکریپتهای ناشناس هم از نکات امنیتی موثر است. همچنین از مسدود بودن BitTorrent و Private IPs در تنظیمات Xray مطمئن شوید.
برخی اخطارها باعث مسدود شدن حساب کاربری شما نمیشود و فقط از سمت BSI برای شما هشدار و توصیه امنیتی ارسال میشود. برای جلوگیری از این اخطارها تیک Security Shield را در تنظیمات Xray فعال کنید. این تنظیم از دسترسی کاربران به لینکهای بدافزار جلوگیری میکند.
در نهایت اگر این مشکل تکرار شد کاربران خود را مانیتور کنید.
مزیت لینک سابسکریپشن این است که در صورت تغییر در تنظیمات اینباند نیازی به ارسال لینک جدید به کاربر ندارید و کاربر با update از سمت کلاینت کانفیگ جدید را دریافت میکند.
برای استفاده از این بخش ابتدا باید تیک Enable Subscription Service را در تنظیمات Subscription فعال کنید. سپس میتوانید برای هر client لینک مشخص کنید. این امکان وجود دارید که برای چند کلاینت یک لینک انتخاب کنید.
در نسخه 1.7.1+ میزان ترافیک و زمان باقی مانده به اسم کانفیگ اضافه میشود.
همچنین پیشنهاد میشود با انتخاب فایلهای سرتیفیکت دامین خودتان https را فعال کنید.
در صورتی که از IPlimit استفاده نمیکنید، با تغییر بخش log در قسمت Advanced کانفیگ Xray میتوانید به شکل زیر اکسس لاگ را غیر فعال کنید.
"log": {
"error": "./error.log",
"loglevel": "warning"
},
یا در نسخه 2.1.3+ گزینه Xray Configs -> Basics -> General -> Access Log را روی none قرار دهید.
برای خالی کردن فایل این لاگ هم از دستور زیر استفاده کنید.
echo "" > /usr/local/x-ui/access.log
ابتدا با دستورات top
و htop
بررسی کنید که افزایش cpu مربوط به کدام پروسس است.
در صورتی که این مشکل از پنل یا xray بود، چند اقدام را انجام دهید.
1 - آپدیت کردن پنل.
2 - نصب fail2ban از منوی x-ui.
3 - منابع سرور را متناسب با پهنای باند مصرفی تهیه کنید.
معمولا این مشکل سه دلیل اصلی دارد.
1 - اشکال در کانفیگ xray که شما میبایست یک بار دکمه Reset to Default Configuration را در پنل بزنید و save کنید.
2 - ممکن است شما یا رباتی که از استفاده میکنید، اطلاعات یوزر مانند ایمیل را کامل وارد نکرده باشد.
3 - اگر دیتابیس را جابهجا کرده اید و این مشکل را دارید، یک بار پنل را آپدیت کنید.
4 - در بخش Routing Rules قانون api باید اولین rule باشد.
عموما این خطا از ضعیف بودن هارد سرور شماست. برای حل آن لاگ اکسس را غیر فعال کنید.
این تنظیم صرفا مناسب تانل پنل به پنل outbound میباشد و شما با فعال کردن آن در سرور ایران میتوانید سایت های داخلی را با آیپی سرور ایران خود باز کنید.
اگر در هنگام دانلود از گیت هاب در Resolving raw.githubusercontent.com
متوقف می شود یا ارور Connection timed out
را دریافت کردید و این مشکل فقط برای سایت گیت هاب وجود داشت، با دو روش قابل حل است.
روش اول: با آیپی 4 سرور اسکریپت را دانلود کنید.
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh --ipv4)
روش دوم: توانید آیپی دامنه گیت هاب را به روش زیر تغییر دهید.
sudo nano /etc/hosts
این خط را به آخر فایل اضافه و ذخیره کنید.
185.199.110.133 raw.githubusercontent.com
سرچ در آپدیت های آخر مشکلی ندارد اما توجه داشته باشید، در ایمیلِ هیچ کلاینتی نباید از space یا فاصله استفاده شود.
در صورتی که با خطای Error: Request failed with status code 400
مواجه میشوید، ssl را برای پنل خود فعال کنید.
در صورت فعال بودن ssl اقدامات این لینک را انجام دهید.
در این پنل هر 10 ثانیه ترافیک چک میشود و در صورتی که حجم تمام شده باشد، به xray دستور قطع شدن میدهد. اگر کاربر همچنان آنلاین نمایش داده شود ممکن است، مشکل از هارد سرور و ذخیره نشدن یا دیر ذخیره شدن تغییرات باشد. نکته مهم تر این است اگر xray کاربر را قطع نکند، باگ پنل x-ui نیست زیرا طبق ارزیابی های ما، وقتی کاربر در حال دانلود با پهنای باند بالا باشد، نزدیک به دو دقیقه (این زمان قطعی نیست) طول میکشد که همه session های کاربر در xray به اتمام برسد. در این مدت، مصرف کاربر در پنل ثبت میشود.
این مشکل ممکن است از اروری در xray یا ایراد ssl پنل باشد.
که معمولا با Reset Settings در منوی x-ui حل میشود.
فرگمنت برای تانل پنل به پنل در بخش Freedom ستون Outbounds به راحتی قابل تنظیم است.
اما برای کانفیگ مستقیم فرگمنت را نمیتوان بصورت لینک دریافت کرد؛ و میبایست بصورت json استفاده کرد.
برای ساخت راحتتر json فرگمنت میتوانید از این ابزار استفاده کنید.