آموزش راه اندازی سرور بازی آنلاین 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 مخصوص گیم و سرور ابری با عملکرد بالا ارائه می‌دهد.

 

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

شاید دوست داشته باشید
how-to-reduce-gaming-ping-using-a-vpn

چگونه پینگ بازی‌ها را با استفاده از VPN کاهش دهیم؟

راهنمای تخصصی کاهش Lag، Packet Loss و Latency برای گیمرها پینگ بالا یکی از دردسرهای اصلی گیمرها در ایران و بسیاری از کشورهای دیگر است. مشکلی که باعث Lag، فریز شدن بازی، کاهش سرعت واکنش‌ها و حتی شکست در مسابقات آنلاین می‌شود. بسیاری از کاربران تصور می‌کنند VPN همیشه پینگ را افزایش می‌دهد، اما واقعیت این است که یک VPN حرفه‌ای و مناسب گیم می‌تواند پینگ را کاهش دهد و تجربه بازی را بهبود دهد. در این مقاله به صورت تخصصی توضیح می‌دهیم که چگونه VPN باعث کاهش پینگ می‌شود، چه تنظیماتی باید انجام دهید و چه خطراتی باید در نظر بگیرید.
how-to-use-steam-cmd-Recovered

آموزش کامل نصب و استفاده از SteamCMD برای راه اندازی سرور بازی

SteamCMD ابزار رسمی شرکت Valve برای دانلود، نصب و به‌روزرسانی نسخه‌های Dedicated Server بازی‌هاست. این ابزار به مدیران سرورهای بازی اجازه می‌دهد بدون نیاز به کلاینت کامل استیم، سرور اختصاصی بسازند، آن را مدیریت کنند و به‌صورت خودکار آپدیت دریافت کنند. در این راهنما، نحوه نصب و راه‌اندازی SteamCMD و سپس نصب سرور اختصاصی یک بازی را مرحله‌به‌مرحله بررسی می‌کنیم
آموزش راه اندازی سرور بازی آنلاین Rust

آموزش راه اندازی سرور بازی آنلاین Rust

این مقاله راهنمایی کامل برای راه‌اندازی سرور بازی آنلاین Rust ارائه می‌دهد. شامل نصب، پیکربندی، امنیت و بهینه‌سازی سرور است. با اتخاذ بهترین رویه‌ها، یک سرور پایدار و با پینگ پایین برای بازیکنان خود ایجاد کنید.
معرفی کامل روش‌های راه‌اندازی سرور بازی آنلاین Palworld

معرفی کامل روش‌های راه‌اندازی سرور بازی آنلاین Palworld

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