آموزش راه اندازی سرور بازی آنلاین Team Fortress 2
یاد بگیرید چگونه یک سرور بازی آنلاین Team Fortress 2 را به طور حرفه‌ای و امن راه‌اندازی کنید.

آموزش راه اندازی سرور بازی آنلاین Team Fortress 2

در این مقاله به آموزش راه اندازی سرور بازی آنلاین Team Fortress 2 پرداخته‌ایم. از انتخاب سرور مناسب و سخت‌افزار گرفته تا تنظیمات امنیتی و بهینه‌سازی شبکه، تمامی مراحل به صورت قدم‌به‌قدم توضیح داده شده است. با ما همراه باشید تا سروری پایدار و کم‌تاخیر برای Game TF2 راه‌اندازی کنید.
0 اشتراک گذاری
0
0
0
0

 

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

در این راهنما قدم‌به‌قدم از انتخاب لوکیشن و سخت‌افزار تا نصب SteamCMD، پیکربندی SRCDS، بهینه‌سازی شبکه، امنیت و مانیتورینگ را پوشش می‌دهیم. این مقاله برای مدیران سرور، مدیران سایت، گیمرها و تیم‌های DevOps مناسب است که می‌خواهند یک سرور TF2 با پایداری و پاسخ‌دهی بالا راه‌اندازی کنند.

 

انتخاب سرور و لوکیشن برای TF2

برای داشتن ping پایین و تجربه بازی مناسب، لوکیشن دیتاسنتر باید نزدیک به بازیکنان هدف باشد. شرکت ما بیش از 85 لوکیشن جهانی ارائه می‌دهد که می‌توانید بر اساس جمعیت پلیرها انتخاب کنید (اروپا: آمستردام، فرانکفورت؛ آمریکا: نیویورک، لس‌آنجلس؛ آسیا: توکیو، سنگاپور؛ برزیل و …).

مشخصات سخت‌افزاری پیشنهادی

  • CPU: 4 هسته واقعی با فرکانس بالا (سرعت تک‌هسته‌ای مهم‌تر). Intel Xeon یا AMD EPYC با فرکانس بالا مناسب‌اند.
  • RAM: حداقل 4–8 گیگابایت برای سرور 24–32 نفره.
  • دیسک: NVMe برای کاهش زمان بارگذاری نقشه و Workshop.
  • شبکه: بسته به تعداد بازیکن و نقشه‌ها، 1 Gbps اختصاصی توصیه می‌شود. برای جمعیت بالا از 10 Gbps استفاده کنید.
  • ضد DDoS: پیشنهاد می‌شود سرور ضد DDoS یا سرویس محافظت داشته باشد تا حملات UDP را دفع کند.

انتخاب نوع سرویس

  • VPS مخصوص گیم: مناسب سرورهای کوچک/متوسط با هزینه کمتر و شبکه بهینه.
  • سرور اختصاصی: برای سرورهای با بازدید بالا و نیاز CPU قوی.
  • سرور ابری با عملکرد بالا: برای مقیاس‌پذیری و توزیع لوکیشن‌ها.
  • سرور ضد DDoS: اگر احتمال حملات برای سرورتان وجود دارد، این گزینه ضروری است.

 

پیش‌نیازها و نصب SteamCMD (گام اول)

برای دانلود و نگهداری فایل‌های SRCDS از SteamCMD استفاده می‌شود. مراحل زیر بر پایه توزیع‌های مبتنی بر Debian/Ubuntu است.

sudo apt update && sudo apt upgrade -y
sudo apt install -y lib32gcc-s1 ca-certificates tmux wget unzip

ساخت کاربر اختصاصی برای سرور TF2 و دانلود SteamCMD:

sudo useradd -m -s /bin/bash tf2
sudo su - tf2
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz

 

دانلود و نصب سرور TF2 با SteamCMD

مثال اسکریپت برای SteamCMD (save به update_tf2.txt):

login anonymous
force_install_dir /home/tf2/tf2_server
app_update 232250 validate
quit

اجرای آپدیت/نصب:

cd ~/steamcmd
./steamcmd.sh +runscript update_tf2.txt

بعد از اتمام، پوشه /home/tf2/tf2_server/ خواهد بود که فایل‌های SRCDS داخل آن قرار دارند.

 

پیکربندی SRCDS و server.cfg

پوشه cfg را باز کنید (/home/tf2/tf2_server/tf/cfg) و یک server.cfg بسازید یا ویرایش کنید. مثال تنظیمات پایه:

hostname "TF2 | Example Server"
rcon_password "StrongRconPasswordHere"
sv_password ""                // اگر می‌خواهید سرور خصوصی باشد، رمز بگذارید
sv_lan 0
sv_region 0                   // 0 = Automatic
sv_maxrate 200000
sv_minrate 80000
sv_maxupdaterate 66
sv_minupdaterate 10
sv_voiceenable 1
mp_timelimit 30
mp_maxrounds 0
tf_bot_quota 0
sv_logfile 1
sv_logbans 1
sv_logecho 1

Map rotation و custom cfg

برای چرخش مپ‌ها، فایل mapcycle.txt یا پلاگین‌هایی برای Sourcemod استفاده کنید. برای exec فایل‌های دیگر مثل autoexec.cfg از server.cfg استفاده کنید:

  • exec banned_user.cfg
  • exec mapcycle.txt

 

اجرای سرور (پارامترها و systemd)

نمونه فرمان شروع SRCDS:

cd /home/tf2/tf2_server
./srcds_run -game tf -console -autoupdate -steam_dir /home/tf2/steamcmd -steamcmd_script /home/tf2/steamcmd/update_tf2.txt -port 27015 +map ctf_2fort +maxplayers 24 -tickrate 66

ساخت unit systemd برای مدیریت سرویس (به‌عنوان root):

/etc/systemd/system/tf2.service
[Unit]
Description=Team Fortress 2 Server
After=network.target

[Service]
Type=simple
User=tf2
WorkingDirectory=/home/tf2/tf2_server
ExecStart=/home/tf2/tf2_server/srcds_run -game tf -console -autoupdate -steam_dir /home/tf2/steamcmd -steamcmd_script /home/tf2/steamcmd/update_tf2.txt -port 27015 +map ctf_2fort +maxplayers 24 -tickrate 66
Restart=on-failure
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now tf2.service
sudo journalctl -u tf2 -f

 

پورت‌ها و فایروال

پورت‌های معمول TF2:

  • UDP 27015 (بازی)
  • TCP/UDP 27015 (Steam query/workshop)
  • UDP 27005 (Steam client traffic)
  • SourceTV: UDP 27020 (اگر فعال باشد)

نمونه قوانین ufw:

sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27005/udp
sudo ufw allow 27020/udp
sudo ufw enable

برای nftables یا iptables، معادل آن‌ها را باز کنید. اگر سرور پشت NAT است، پورت‌ها را در روتر/فایروال سخت‌افزاری نیز فوروارد کنید.

 

بهینه‌سازی سیستم و شبکه برای پینگ پایین

چند تنظیم سیستمی که معمولاً برای سرورهای بازی مفید است:

تنظیمات sysctl پیشنهادی (برای UDP و بار شبکه سنگین)

sudo tee /etc/sysctl.d/99-tf2.conf <<EOF
net.core.rmem_max=26214400
net.core.wmem_max=26214400
net.core.netdev_max_backlog=5000
net.ipv4.udp_mem=65536 131072 262144
net.ipv4.udp_rmem_min=16384
net.ipv4.udp_wmem_min=16384
net.ipv4.tcp_mtu_probing=1
net.ipv4.tcp_fin_timeout=15
net.ipv4.tcp_tw_reuse=1
EOF
sudo sysctl --system

غیرفعال کردن GSO/GRO/TSO در کارت شبکه

غیرفعال کردن این ویژگی‌ها می‌تواند تاخیر را کاهش دهد اما بار CPU را افزایش می‌دهد:

sudo apt install ethtool -y
sudo ethtool -K eth0 gro off gso off tso off

توجه: این تنظیمات بار CPU را افزایش می‌دهند؛ روی سرور اختصاصی با CPU قوی تست کنید.

CPU governor و IRQ affinity

برای جلوگیری از نوسان فرکانس:

for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do echo performance | sudo tee $i; done

اگر کارت شبکه چند صف دارد، می‌توانید affinity وقایع IRQ را به هسته‌های اختصاصی تخصیص دهید تا تأخیر کاهش یابد (نیاز به دانش شبکه و بررسی /proc/interrupts دارد).

 

پلاگین‌ها، Sourcemod و Metamod

برای امکانات مدیریتی و ضدچیت:

  • نصب Metamod: دانلود آخرین نسخه و استخراج در /home/tf2/tf2_server/tf.
  • نصب Sourcemod: دانلود و انتقال فایل‌های addons و cfg به پوشه tf.

پس از نصب، می‌توانید افزونه‌هایی برای مسدودسازی چیت، مدیریت پلیرها، نمایش استات‌ها و خودکارسازی قوانین نصب کنید.

 

امنیت، RCON و ضد DDoS

نکات امنیتی مهم:

  • RCON: rcon_password قوی انتخاب کنید و دسترسی RCON را فقط از آدرس‌های مشخص شود. مثال با iptables را ببینید.
  • استفاده از سرویس ضد DDoS: برای دفع UDP flood و amplification از سرویس ضد DDoS شبکه‌ای استفاده کنید.
  • لاگ و نگهداری: لاگ‌ها را به‌صورت منظم بررسی کنید و فایل‌های لاگ را رول کنید (logrotate).
  • بروزرسانی منظم: SRCDS و سیستم‌عامل را با اسکریپت‌های خودکار آپدیت کنید.
sudo iptables -A INPUT -p tcp --dport 27015 -s 1.2.3.4 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 27015 -j DROP

 

آپدیت خودکار و بکاپ

نمونه اسکریپت ساده آپدیت:

#!/bin/bash
/home/tf2/steamcmd/steamcmd.sh +runscript /home/tf2/steamcmd/update_tf2.txt
systemctl restart tf2

بکاپ پوشه cfg و map و workshop:

tar -czf /backups/tf2_cfg_$(date +%F).tar.gz /home/tf2/tf2_server/tf/cfg /home/tf2/tf2_server/tf/maps

استفاده از ذخیره‌سازی ابری برای نگهداری بکاپ و نسخه‌برداری از دیتای مهم توصیه می‌شود.

 

مانیتورینگ و عیب‌یابی

ابزارهای پایه برای پایش و عیب‌یابی:

  • top/htop برای مانیتور CPU و RAM
  • ss -u -a | grep 27015 برای بررسی سوکت‌های UDP باز
  • tail -f tf/logs/* برای بررسی خطاها
  • mcrcon یا ابزار RCON برای ارسال دستورات از راه دور

نکات عیب‌یابی: افت فریم یا لگ معمولاً به CPU یا شبکه مربوط است؛ اگر packet loss مشاهده شد از ابزارهایی مثل mtr برای بررسی مسیر استفاده کنید.

 

نکات تکمیلی و بهترین تنظیمات برای کاربردهای خاص

  • برای سرورهای گیمینگ کوچک (تا 24 نفر): VPS با 4 هسته، 8GB RAM، NVMe کافی است.
  • برای رقابت‌ها و سرورهای با بازدید بالا: سرور اختصاصی با فرکانس بالا، 10Gbps uplink و ضد DDoS.
  • TF2 به GPU سرور نیاز ندارد اما برای استریمرها یا ابزارهای جانبی که GPU نیاز دارند، می‌توانید از سرور گرافیکی استفاده کنید.
  • لوکیشن: حتماً نزدیک‌ترین دیتاسنتر به بازیکنان انتخاب شود؛ برای مخاطب چندمنطقه‌ای از چندین لوکیشن و DNS هوشمند/Anycast استفاده کنید.

توصیه مهم: قبل از اعمال تغییرات سیستمی در تولید، ابتدا در محیط آزمایشی تست کنید و پس از اعمال، پایش مستمر اجرا کنید.

 

جمع‌بندی و گزینه‌های سرویس

در این مقاله مراحل راه‌اندازی سرور Team Fortress 2 از نصب SteamCMD تا بهینه‌سازی شبکه و امنیت را پوشش دادیم. برای سروری با پینگ پایین و پایداری بالا می‌توانید از VPS مخصوص گیم یا سرور اختصاصی استفاده کنید؛ شرکت ما بیش از 85 لوکیشن جهانی، سرور ضد DDoS، پلن‌های VPS مخصوص گیم و سرور ابری با عملکرد بالا ارائه می‌دهد.

 

سؤالات متداول

شاید دوست داشته باشید

داستان بازی God Of War: Ragnarok

مقدمه این بر کریتوس، خدای جنگ، و پسر نوجوانش، آترئوس متمرکز است، که با درگیری راگناروک آینده روبرو…

داستان بازی God Of War 2

مقدمه با شکست دادن آرس، کریتوس، جنگجوی زمانی فانی، به خدای جدید جنگ تبدیل شد. با این حال،…

داستان God Of War 3

مقدمه قبل از عصر گرگ و میش بر خدایان، افسانه ای برخاست تا جای او را در میان…