نحوه راهاندازی Shadowsocks در VPS برای دور زدن سانسور
راهنمای گام به گام نصب و پیکربندی Shadowsocks در VPS Hiddence برای دور زدن سانسور اینترنت امن و سریع.

Shadowsocks یکی از مؤثرترین ابزارها برای دور زدن سانسور اینترنت است، به ویژه در کشورهایی با محدودیتهای سخت محبوب است. برخلاف VPNهای سنتی، Shadowsocks از یک پروکسی SOCKS5 با رمزگذاری استفاده میکند و ترافیک آن را تقریباً غیرقابل تشخیص از HTTPS معمولی میکند. این راهنما به شما نشان میدهد که چگونه سرور Shadowsocks خود را در یک VPS Hiddence در 10 دقیقه مستقر کنید.
چرا Shadowsocks؟
- مخفی: ترافیک به عنوان اتصالات HTTPS معمولی پنهان میشود، تشخیص آن توسط سیستمهای DPI دشوار است
- سرعت: سربار کمتر در مقایسه با VPN، سرعت نزدیک به بومی
- انعطافپذیری: در سطح برنامه کار میکند، میتواند برای برنامههای خاص پیکربندی شود
- چند پلتفرمی: کلاینتها برای Windows، macOS، Linux، Android، iOS
- متنباز: شفافیت و امنیت کامل کد
الزامات
- VPS Hiddence (حداقل 1 گیگابایت RAM، هر سیستم عامل لینوکس)
- اوبونتو 22.04 یا 24.04 (توصیه میشود)
- دسترسی Root به سرور
- کلاینت SSH برای اتصال
- 5-10 دقیقه از وقت شما
نصب Shadowsocks-Rust (توصیه میشود)
ما از پیادهسازی shadowsocks-rust استفاده خواهیم کرد — سریعترین و مدرنترین نسخه، نوشته شده در Rust.
مرحله 1: آمادهسازی سیستم
# اتصال به سرور از طریق SSH
ssh root@your-server-ip
# بهروزرسانی سیستم
sudo apt update && sudo apt upgrade -y
# نصب بستههای لازم
sudo apt install curl wget -yمرحله 2: نصب Shadowsocks-Rust
# دانلود آخرین نسخه
wget $(curl -s https://api.github.com/repos/shadowsocks/shadowsocks-rust/releases/latest | grep 'browser_download_url.*x86_64-unknown-linux-gnu.tar.xz' | cut -d '"' -f 4)
# استخراج آرشیو
tar -xvf shadowsocks-*.tar.xz
# انتقال باینریها به دایرکتوری سیستم
sudo mv ssserver /usr/local/bin/
sudo mv sslocal /usr/local/bin/
sudo chmod +x /usr/local/bin/ss*
# تأیید نصب
ssserver --versionمرحله 3: پیکربندی
# ایجاد دایرکتوری برای پیکربندی
sudo mkdir -p /etc/shadowsocks
# ایجاد فایل پیکربندی
sudo nano /etc/shadowsocks/config.json
# پیکربندی زیر را وارد کنید:
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "YOUR_STRONG_PASSWORD_HERE",
"timeout": 300,
"method": "chacha20-ietf-poly1305",
"fast_open": true,
"mode": "tcp_and_udp",
"nameserver": "8.8.8.8"
}
# YOUR_STRONG_PASSWORD_HERE را با یک رمز عبور قوی جایگزین کنید
# میتوانید تولید کنید: openssl rand -base64 32
# روشهای رمزگذاری توصیه شده:
# chacha20-ietf-poly1305 (توصیه میشود) — تعادل سرعت و امنیت
# aes-256-gcm — استاندارد AES
# aes-128-gcm — سریعتر، برای موبایل
# 2022-blake3-aes-256-gcm — جدیدترین SS2022مرحله 4: شروع خودکار
بیایید یک سرویس systemd برای شروع خودکار Shadowsocks در بوت سیستم ایجاد کنیم.
# ایجاد فایل سرویس
sudo nano /etc/systemd/system/shadowsocks.service
# وارد کنید:
[Unit]
Description=Shadowsocks-Rust Server
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks/config.json
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
# ذخیره و فعال کردن سرویس
sudo systemctl daemon-reload
sudo systemctl enable shadowsocks
sudo systemctl start shadowsocks
# بررسی وضعیت
sudo systemctl status shadowsocksمرحله 5: فایروال
# اگر از UFW استفاده میکنید
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw reload
# اگر از firewalld استفاده میکنید
sudo firewall-cmd --permanent --add-port=8388/tcp
sudo firewall-cmd --permanent --add-port=8388/udp
sudo firewall-cmd --reloadمرحله 6: بهینهسازی
بیایید سیستم را برای حداکثر سرعت اتصال پیکربندی کنیم.
# بهینهسازی پشته شبکه
sudo nano /etc/sysctl.conf
# به انتهای فایل اضافه کنید:
# کنترل ازدحام BBR
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
# افزایش بافرها
net.core.rmem_max=134217728
net.core.wmem_max=134217728
net.ipv4.tcp_rmem=4096 87380 67108864
net.ipv4.tcp_wmem=4096 65536 67108864
net.ipv4.tcp_mtu_probing=1
# Fast Open
net.ipv4.tcp_fastopen=3
# اعمال تغییرات
sudo sysctl -pمرحله 7: کلاینتها
پس از راهاندازی سرور، باید دستگاههای کلاینت را متصل کنید. دستورالعملهای دقیق برای هر پلتفرم در زیر آمده است.
کلاینت ویندوز
1. دانلود و نصب
به صفحه GitHub shadowsocks/shadowsocks-windows بروید و آخرین نسخه را دانلود کنید (فایل Shadowsocks-x.x.x.zip). آرشیو را به هر پوشهای استخراج کنید و Shadowsocks.exe را اجرا کنید.
2. اضافه کردن سرور
روی آیکون Shadowsocks در system tray (نزدیک ساعت) راست کلیک کنید و Servers > Edit Servers را انتخاب کنید. جزئیات را پر کنید:
3. فعال کردن پروکسی
راست کلیک روی آیکون system tray > System Proxy > Global (برای پروکسی کردن تمام ترافیک) یا PAC (حالت خودکار برای سایتهای مسدود شده). 'Enable System Proxy' را فعال کنید. انجام شد! تمام ترافیک شما اکنون از طریق Shadowsocks میرود.
کلاینت اندروید
1. نصب برنامه
'Shadowsocks' توسط Max Lv را از Google Play Store نصب کنید یا APK را از GitHub دانلود کنید (shadowsocks/shadowsocks-android). پس از نصب برنامه را باز کنید.
2. اضافه کردن پروفایل
روی دکمه '+' (به علاوه) در گوشه پایین راست ضربه بزنید. 'Manual Settings' را انتخاب کنید. فیلدها را پر کنید:
3. اتصال
روی آیکون هواپیما در پایین صفحه ضربه بزنید تا متصل شوید. در اولین اتصال، اندروید اجازه ایجاد اتصال VPN را درخواست میکند — 'OK' را ضربه بزنید. پس از اتصال، یک آیکون کلید در نوار وضعیت ظاهر میشود.
کلاینت iOS
1. نصب برنامه
App Store را باز کنید و 'Shadowrocket' (پولی، حدود 3 دلار) یا 'Potatso Lite' (رایگان) را جستجو کنید. Shadowrocket عملکردیتر و پایدارتر است. برنامه را نصب کنید.
2. پیکربندی سرور
برای Shadowrocket: برنامه را باز کنید، '+' را در گوشه بالا راست ضربه بزنید. Type: Shadowsocks را انتخاب کنید. پر کنید:
3. فعال کردن اتصال
سوئیچ کنار نام سرور را به ON تغییر دهید. iOS اجازه اضافه کردن پیکربندی VPN را درخواست میکند — عمل را تأیید کنید (ممکن است نیاز به Face ID / Touch ID داشته باشد). وضعیت 'Connected' به معنای اتصال موفق است.
کلاینت macOS
1. نصب ShadowsocksX-NG
ShadowsocksX-NG را از GitHub دانلود کنید (shadowsocks/ShadowsocksX-NG/releases). فایل DMG را باز کنید و برنامه را به پوشه Applications بکشید. ShadowsocksX-NG را راهاندازی کنید.
2. اضافه کردن سرور
روی آیکون هواپیما در منوی نوار (بالا راست) کلیک کنید. Servers > Server Preferences را انتخاب کنید. '+' را کلیک کنید تا یک سرور جدید اضافه کنید:
3. فعال کردن پروکسی
روی آیکون منوی نوار کلیک کنید > Turn Shadowsocks On. حالت پروکسی را انتخاب کنید: 'Auto Proxy Mode' (توصیه میشود، از PAC برای مسیریابی هوشمند استفاده میکند) یا 'Global Mode' (تمام ترافیک از طریق پروکسی). انجام شد!
جایزه: راهاندازی چند کاربره
اگر میخواهید سرور را با دوستان یا خانواده به اشتراک بگذارید، از پیکربندی چند پورتی استفاده کنید.
# ویرایش پیکربندی
sudo nano /etc/shadowsocks/config.json
# از فرمت با پورتها برای کاربران مختلف استفاده کنید:
{
"servers": [
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "user1_password",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8389,
"password": "user2_password",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8390,
"password": "user3_password",
"method": "chacha20-ietf-poly1305"
}
],
"timeout": 300,
"mode": "tcp_and_udp"
}
# فراموش نکنید که پورتهای جدید را در فایروال باز کنید
sudo ufw allow 8389:8390/tcp
sudo ufw allow 8389:8390/udp
# راهاندازی مجدد سرویس
sudo systemctl restart shadowsocksپیشرفته: استفاده از پلاگینهای استتار
برای محافظت اضافی در برابر DPI، از پلاگینهایی که ترافیک Shadowsocks را پنهان میکنند استفاده کنید.
v2ray-plugin (توصیه میشود)
# نصب v2ray-plugin
wget https://github.com/shadowsocks/v2ray-plugin/releases/download/v1.3.2/v2ray-plugin-linux-amd64-v1.3.2.tar.gz
tar -xvf v2ray-plugin-*.tar.gz
sudo mv v2ray-plugin_linux_amd64 /usr/local/bin/v2ray-plugin
sudo chmod +x /usr/local/bin/v2ray-plugin
# بهروزرسانی پیکربندی Shadowsocks
{
"server": "0.0.0.0",
"server_port": 443,
"password": "your_password",
"method": "chacha20-ietf-poly1305",
"plugin": "/usr/local/bin/v2ray-plugin",
"plugin_opts": "server;tls;host=your-domain.com;cert=/path/to/cert.pem;key=/path/to/key.pem"
}
# در کلاینت اضافه کنید:
# Plugin: v2ray-plugin
# Plugin Options: tls;host=your-domain.comعیبیابی
مشکلات و راهحلهای رایج
- نمیتواند متصل شود: فایروال را بررسی کنید و اطمینان حاصل کنید که پورت باز است
- اتصال کند: روش رمزگذاری مختلف را امتحان کنید (aes-128-gcm سریعتر است)
- قطع شدن دورهای: TCP Fast Open و BBR را فعال کنید
- سرور مسدود میشود: از پلاگین استتار و پورت 443 استفاده کنید
- بررسی لاگها: sudo journalctl -u shadowsocks -f
نکات امنیتی
- از رمز عبور قوی استفاده کنید (حداقل 20 کاراکتر، تصادفی)
- به طور منظم Shadowsocks را به آخرین نسخه بهروزرسانی کنید
- جزئیات سرور را به صورت عمومی به اشتراک نگذارید — فقط با افراد مورد اعتماد
- پورت پیشفرض (8388) را به غیر استاندارد تغییر دهید
- از روشهای رمزگذاری مدرن استفاده کنید (chacha20-ietf-poly1305 یا جدیدتر)
- استفاده از پلاگین استتار را در مناطقی با سانسور فعال در نظر بگیرید
- استفاده از ترافیک را نظارت کنید: sudo apt install vnstat && vnstat -l
- بهروزرسانیهای خودکار سیستم را راهاندازی کنید