آموزش ساخت کانکشن vless + tls + ech با دامنه
جایگزینی برای Reality و Fragment@theTCS_
خوب مثه اینکه ایرانسل داره یکم اذیت میکنه کانکشنایی که fragment دارند رو.اشکالی نداره به تعداد آدمای روی زمین راه داریم واسه دور زدن اینا.یکی از این راه ها رو امروز آموزش میدم بهتون.
ببینیم ECH اصن چیه…
ایی سی اچ یا Encrypted Client Hello کارش اینه که SNI رو رمزنگاری میکنه تا توسط هیچکی به جز کلاینت و سروری که کلید ها رو دارند قابل شناسایی نباشند در نتیجه ما میتونیم وایتلیست SNI رو خیلی راحت دور بزنیم و به جای SNI اصلی که دامنهی متصل به سرور خودمونه یه دامنهی فیک که از نظر فیلترچی وایتلیست شدس نشون بدیم.
برای این کار ما نیاز به یه سرور و یه دامنه داریم.
خوب بریم سراغ آموزش
سرور
1.ساخت سابدامین و لینک کردنش به آیپی سرور :
وارد کلاودفلر میشیم یه سابدامین میسازیم و به آیپی سرورمون وصلش میکنیم…دقت کنید که تیک پروکسی حتما خاموش باشه…
2.گرفتن سرتیفیکیت برای دامنه :
به سرورمون ssh میزنیم و دستورهای زیر رو میزنیم :
sudo apt update
sudo apt install certbot wget curl
mkdir singbox-ech
certbot certonly --standalone --agree-tos --register-unsafely-without-email -d "DOMAIN"
cp /etc/letsencrypt/live/DOMAIN/fullchain.pem /root/singbox-ech/server.crt
cp /etc/letsencrypt/live/DOMAIN/privkey.pem /root/singbox-ech/server.key
دقت کنید داخل دستورهای بالا به جای DOMAIN آدرس سابدامین خودتونو بذارید.
3.دانلود هستهی سینگ باکس :
دستورهای زیر رو داخل سرورمون میزنیم :
mkdir /root/singboxx
cd /root/singboxx
wget https://github.com/SagerNet/sing-box/releases/download/v1.8.10/sing-box-1.8.10-linux-amd64.tar.gz
tar -xf sing-box-1.8.10-linux-amd64.tar.gz
cp sing-box-1.8.10-linux-amd64/sing-box /usr/bin/
cd
rm -rf singboxx
curl -Lo /etc/systemd/system/ECH.service https://raw.githubusercontent.com/TheyCallMeSecond/config-examples/main/Sing-Box/ECH.service
systemctl daemon-reload
4.کانفیگ سرور :
دستورهای زیر رو داخل سرورمون میزنیم :
cd singbox-ech
sing-box generate ech-keypair google.com --pq-signature-schemes-enabled > ech.txt
sed -n '/BEGIN ECH CONFIGS/,/END ECH CONFIGS/p' ech.txt > ech.config
sed -n '/BEGIN ECH KEYS/,/END ECH KEYS/p' ech.txt > ech.key
awk 'NF {printf "%s\\n",$0}' ech.config > config.txt
curl -Lo /root/singbox-ech/config.json https://raw.githubusercontent.com/TheyCallMeSecond/config-examples/main/Sing-Box/Server/vless-tls-ech.json
sed -i "s/UUID/$(cat /proc/sys/kernel/random/uuid)/" /root/singbox-ech/config.json
nano config.json
به جای 443 میتونین هر پورت دلخواهی رو بذارین ولی پیشنهاد میکنم بذارین همون 443 باشه
(قسمت uuid رو کپی کنید.واسه کلاینت بهش نیاز داریم)
به جای DOMAIN هم آدرس سابدامین خودتون رو بذارین و بعدش ctrl + x و y و enter رو بزنین.
فایل config.txt رو با دستور زیر باز کنید و محتویاتش رو کامل کپی و جایی ذخیره کنید.واسه کلاینت بهش نیاز داریم :
cat config.txt
خوب کارمون با سرور تموم شد حالا میتونیم با دستور زیر سینگ باکس رو اجرا کنیم :
systemctl enable –now ECH
و با دستور زیر چک کنیم که سرویس بدون مشکل در حال اجرا شدنه :
systemctl status ECH
کلاینت
واسه کلاینت هم میتونیم از هیدیفای استفاده کنیم هم اپ خود سینگ باکس
هیدیفای :
فایل زیر رو بگیرید
با مشخصات سرور خودتون و چیزایی که تو قسمتهای قبل کپی کردیم پر کنید
حالا همشو کپی کنید وارد اپ هیدیفای بشید دکمه + رو بزنید و add from clipboard
اپ سینگباکس :
فایل زیر رو بگیرید
https://raw.githubusercontent.com/TheyCallMeSecond/config-examples/main/Sing-Box/Client/vless-tls-ech.json
با مشخصات سرور خودتون و چیزایی که تو قسمتهای قبل کپی کردیم پر کنید
داخل اپ سینگباکس new profile بسازید. بعد بزنید روی پروفایل جدیدی که ساختید edit content رو بزنید هرچی داخلش هست رو پاک کنید و این کانفیگی که ادیت کردید رو داخلش paste کنید.
تمام