Ubuntu 24.04にShadowsocks-libevプロキシサーバーをインストールして設定する
این مقاله به شما آموزش می‌دهد چگونه Shadowsocks-libev را در اوبونتو 24.04 نصب و پیکربندی کنید و نکات امنیتی و بهینه‌سازی مورد نیاز را بررسی کنید.

Ubuntu 24.04にShadowsocks-libevプロキシサーバーをインストールして設定する

この記事では、Ubuntu 24.04にShadowsocks-libevをインストールして設定する方法を説明します。このガイドには、安全で効率的なプロキシを設定するためのセキュリティと最適化のヒントも含まれています。.
0 株式
0
0
0
0

چطور می‌توان یک پراکسی کم‌تاخیر، امن و سبک روی Ubuntu 24.04 راه‌اندازی کرد؟

این راهنما گام‌به‌گام برای مدیران سرور، توسعه‌دهندگان، مدیران شبکه و کاربرانی نوشته شده که به یک پراکسی سبک، کم‌تاخیر و امن نیاز دارند. Shadowsocks-libev یک پیاده‌سازی سبک و سریع از پروتکل Shadowsocks است که برای عبور از فیلترینگ و ایجاد یک تونل پراکسی امن طراحی شده است.

در ادامه نصب روی Ubuntu 24.04، کانفیگ مناسب (شامل AEAD)، تنظیم فایروال، بهینه‌سازی شبکه (BBR، TCP Fast Open) و نکات امنیتی و عملی برای استفاده در ترید، گیم و سرویس‌های وب توضیح داده شده است. همچنین اشاره‌ای به خدمات شامل 85+ لوکیشن جهانی، VPS مخصوص ترید و سرورهای ضد-DDoS شده تا انتخاب لوکیشن و پلن راحت‌تر باشد.

前提条件と場所の選択

پیش‌نیازها:

  • یک سرور اوبونتو 24.04 با دسترسی یا یک کاربر با 須藤.
  • پورت باز (مثلاً 8388) و دسترسی به فایروال.
  • انتخاب لوکیشن مناسب: برای کمترین پینگ در گیم یا ترید لوکیشن نزدیک به سرور مقصد (مثلاً فرانکفورت، لندن، سنگاپور، توکیو، نیویورک).
  • اگر نگران حملات DDoS هستید، از سرورهای ضد-DDoS یا CDN/خدمات BGP استفاده کنید.

نصب Shadowsocks-libev در Ubuntu 24.04

روش سریع و پایدار با استفاده از بسته رسمی apt مناسب اکثریت کاربران است. اگر نیاز به آخرین ویژگی‌ها یا pluginهای جدید دارید می‌توانید از بسته‌های GitHub یا PPA استفاده کنید، اما برای اکثر موارد apt کافی خواهد بود.

روش سریع (از بسته رسمی apt)

sudo apt update && sudo apt install -y shadowsocks-libev

برای تأیید نصب:

ss-server --version

ایجاد فایل کانفیگ پایه

فایل کانفیگ پیش‌فرض: /etc/shadowsocks-libev/config.json

{
  "server":"0.0.0.0",
  "server_port":8388,
  "password":"VeryStrongPasswordHere!",
  "method":"chacha20-ietf-poly1305",
  "mode":"tcp_and_udp",
  "timeout":300,
  "fast_open":true
}

要点:

  • method: از متدهای AEAD مانند chacha20-ietf-poly1305 または aes-256-gcm استفاده کنید؛ این متدها امن‌تر و کارآمدتر هستند.
  • mode:“tcp_and_udp” را اگر نیاز به فوروارد UDP (برای گیم یا VoIP) دارید فعال کنید.
  • fast_open: تنها در صورت پشتیبانی کرنل و تنظیم مناسب sysctl فعال کنید.
sudo chown root:root /etc/shadowsocks-libev/config.json
sudo chmod 600 /etc/shadowsocks-libev/config.json

راه‌اندازی سرویس و مدیریت systemd

می‌توانید سرویس را به صورت پیش‌فرض یا با نام instance اجرا کنید تا چند کانفیگ/پورت داشته باشید.

الف) استفاده از فایل پیش‌فرض

sudo systemctl enable --now shadowsocks-libev
sudo systemctl status shadowsocks-libev

ب) استفاده از instance (برای چند کانفیگ/پورت)

اگر فایل را به عنوان /etc/shadowsocks-libev/config-server1.json ذخیره کنید:

sudo systemctl enable --now shadowsocks-libev@config-server1
sudo systemctl status shadowsocks-libev@config-server1

ログを表示:

sudo journalctl -u shadowsocks-libev -f
sudo journalctl -u shadowsocks-libev@config-server1 -f

پیکربندی فایروال و قواعد شبکه

UFW (ساده)

sudo ufw allow 22/tcp                # SSH
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw enable
sudo ufw status

iptables (مثال محدودسازی اتصال برای امنیت)

sudo iptables -I INPUT -p tcp --dport 8388 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -I INPUT -p udp --dport 8388 -j ACCEPT

# rate limiting to mitigate brute-force
sudo iptables -A INPUT -p tcp --dport 8388 -m recent --name ss --set
sudo iptables -A INPUT -p tcp --dport 8388 -m recent --name ss --update --seconds 10 --hitcount 20 -j DROP

برای ذخیره قواعد:

sudo apt install -y iptables-persistent
sudo netfilter-persistent save

بهینه‌سازی شبکه و عملکرد (BBR, TCP Fast Open, sysctl)

برای کاهش تاخیر و افزایش throughput توصیه می‌شود BBR و برخی تنظیمات sysctl را فعال کنید.

فعال کردن BBR و تنظیمات توصیه‌شده

sudo tee /etc/sysctl.d/99-sysctl.conf <<EOF
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_syncookies = 1
net.core.somaxconn = 4096
net.core.netdev_max_backlog = 5000
net.ipv4.ip_forward = 1
EOF
sudo sysctl --system

برای تأیید:

sysctl net.ipv4.tcp_congestion_control
ss -tuna | grep bbr

کلاینت‌ها و تست اتصال

تست ساده با curl (پس از اجرای ss-local روی پورت 1080)

در سمت کلاینت:

ss-local -s SERVER_IP -p 8388 -l 1080 -k "VeryStrongPasswordHere!" -m chacha20-ietf-poly1305 &
curl --socks5-hostname 127.0.0.1:1080 https://api.ipify.org

اگر IP برگشتی IP سرور بود، کانکشن موفق است.

کلاینت‌های متداول

  • ویندوز: Shadowsocks-Windows または V2RayN
  • macOS: ShadowsocksX-NG
  • اندروید: Shadowsocks (F-Droid یا PlayStore)
  • لینوکس: ss-local/ss-redir از بسته shadowsocks-libev یا GUIها مثل Outline

UDP forwarding (برای گیم یا VoIP) نیازمند پشتیبانی UDP در هر دو طرف و تنظیم “mode”:”tcp_and_udp” そうです。.

امنیت عملی و مدیریت کاربران

  • رمز عبور قوی: از رمزهای منحصربه‌فرد و قوی استفاده کنید و متدهای AEAD را انتخاب کنید.
  • نظارت لاگ‌ها: から ジャーナルctl یا ابزارهای مانیتورینگ استفاده کنید.
  • محدودسازی دسترسی IP: در فایروال اجازه فقط به IPهای مشخص بدهید (مثلاً IP کارگزاری برای VPS ترید).

استفاده از fail2ban

cat > /etc/fail2ban/jail.d/shadowsocks.conf <<EOF
[shadowsocks]
enabled = true
filter = shadowsocks
port = 8388
logpath = /var/log/syslog
maxretry = 5
bantime = 3600
EOF

سناریوهای پیشرفته: چند پورت، transparent proxy و pluginها

چند سرویس و پورت

برای ارائه چند حساب/پورت از چند فایل کانفیگ و instanceهای systemd استفاده کنید:

/etc/shadowsocks-libev/config-user1.json
/etc/shadowsocks-libev/config-user2.json

sudo systemctl enable --now shadowsocks-libev@config-user1
sudo systemctl enable --now shadowsocks-libev@config-user2

transparent proxy با ss-redir

مثال برای redirect ترافیک سرورهای داخلی:

ss-redir -c /etc/shadowsocks-libev/redir-config.json &

sudo iptables -t nat -N SHADOWSOCKS
sudo iptables -t nat -A PREROUTING -p tcp -j SHADOWSOCKS
sudo iptables -t nat -A SHADOWSOCKS -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 12345

(پورت 12345 پورت ss-redir است)

استفاده از pluginها (v2ray-plugin یا obfs)

برای دور زدن DPI و تشخیص بسته‌ها از pluginهایی مانند v2ray-plugin استفاده کنید. نمونه گزینه‌ها در کانفیگ:

{
  "plugin":"v2ray-plugin",
  "plugin_opts":"server;tls;host=example.com;path=/ws"
}

نگهداری، مانیتورینگ و مقیاس‌پذیری

از ابزارهای مانیتورینگ مثل Prometheus + Grafana یا ساده‌تر netdata برای نظارت استفاده کنید.

برای بررسی مصرف: トップ, hトップ, イフトップ, ロード.

در صورت افزایش بار، از سرور ابری با autoscaling یا Load Balancer استفاده کنید یا سرورهایی با پکت فورواردینگ قوی و پلن‌های شبکه BGP انتخاب نمایید.

نکات نهایی مرتبط با خدمات و انتخاب لوکیشن

داشتن 85+ لوکیشن جهانی امکان قرار دادن سرور در نزدیک‌ترین نقطه به مقصد ترید، سرور بازی یا کاربران نهایی را فراهم می‌کند تا کمترین پینگ و ناپایداری حاصل شود.

برای ترید با نیاز به پینگ پایین، لوکیشن‌هایی مانند فرانکفورت، لندن، نیویورک و سنگاپور مناسب‌اند. خدمات شامل VPS مخصوص ترید با پینگ بهینه و سرورهای Anti-DDoS نیز در دسترس هستند.

برای انتقال داده‌های حجیم (مثلاً در پردازش‌های AI یا رندرینگ) به پهنای باند بالا نیاز خواهید داشت؛ سرویس‌های GPU قابل ترکیب با راهکار پراکسی هستند اما پهنای باند را در نظر بگیرید.

よくある質問

あなたも気に入るかもしれない