راهاندازی سرور اختصاصی Counter-Strike 2 روی VPS ایران؛ از نصب تا رفع خطاهای رایج
اگر یک VPS ایران دارید و میخواهید سرور اختصاصی Counter-Strike 2 خودتان را راه بیندازید، این مقاله برای شماست. برخلاف تصور رایج، نصب CS2 Dedicated Server فقط چند دستور ساده نیست؛ چالش اصلی بعد از نصب شروع میشود، جایی که بازیکنان نمیتوانند وصل شوند، سرور در لیست Community دیده نمیشود، یا پس از هر آپدیت Valve همه چیز از هم میپاشد.
این راهنما را طوری نوشتهام که از صفر شروع کنی و تا رفع مشکلاتی که واقعاً در عمل پیش میآید جلو بروی. تمرکز اصلی روی محیط Linux و VPS ایران است، چون همین بستر بیشترین استفاده را برای گیمسرورهای داخلی دارد.
سرور CS2 دقیقاً چطور کار میکند؟
یک نکته بنیادی را باید روشن کنم: شما نسخه معمولی بازی را روی VPS اجرا نمیکنید. ساختار درست این است که VPS شما فقط Dedicated Server را اجرا میکند و بازیکنان از طریق Steam و کلاینت CS2 به آن وصل میشوند.
🔹 بازیکن: Steam + Counter-Strike 2 → Console → connect IP:PORT
Counter-Strike 2 روی موتور Source 2 اجرا میشود و Valve مستندات رسمی برای Community Dedicated Server منتشر کرده است. در نسخههای جدید، فایل اجرایی سرور در مسیر game/bin/linuxsteamrt64/cs2 قرار میگیرد، اما اجرای مستقیم آن توصیه نمیشود؛ بهتر است از اسکریپت cs2.sh استفاده کنید که کارهای اولیه را خودش انجام میدهد.
چه مشخصاتی برای VPS لازم است؟
مقدار منابع دقیق به تعداد بازیکن، Tickrate و نقشهها بستگی دارد، اما جدول زیر نقطه شروع خوبی است. توجه کنید که CS2 بیشتر از اینکه به تعداد هسته حساس باشد، به سرعت تکهسته وابسته است.
| نوع سرور | تعداد بازیکن | CPU | RAM | دیسک |
|---|---|---|---|---|
| Wingman / تست | ۲ تا ۱۰ | ۲ هسته | ۴GB | ۴۰GB SSD |
| مسابقاتی ۵v۵ | ۱۰ تا ۲۴ | ۴ هسته | ۶ تا ۸GB | ۵۰GB NVMe |
| Community / چند Instance | ۲۴ تا ۶۴ | ۶ تا ۸ هسته | ۱۶GB | ۸۰GB NVMe |
الزامات رسمی Valve شامل حداقل ۲GB RAM و ۶۵GB فضای ذخیرهسازی است، اما این عدد برای اجرای واقعی و پایدار کافی نیست. سیستمعامل پیشنهادی Ubuntu 22.04 یا 24.04 است. توجه کنید که CS2 به Glibc 2.31 یا بالاتر نیاز دارد.
نصب گامبهگام CS2 Dedicated Server
آمادهسازی اولیه
بعد از اتصال به VPS با PuTTY یا هر کلاینت SSH دیگری، ابتدا سیستم را آپدیت کنید و ابزارهای لازم را نصب کنید:
apt install wget curl tar unzip tmux lib32gcc-s1 -y
ساخت کاربر اختصاصی
اجرای سرور بازی با Root ایده خوبی نیست. یک کاربر جداگانه بسازید:
su – cs2
نصب SteamCMD و دریافت فایلهای سرور
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh
داخل محیط SteamCMD دستورات زیر را وارد کنید:
force_install_dir /home/cs2/cs2
app_update 730 validate
quit
اجرای سرور با tmux
اگر سرور را مستقیم اجرا کنید و از SSH خارج شوید، Process متوقف میشود. راهحل استاندارد استفاده از tmux است:
cd ~/cs2
./cs2.sh -dedicated +map de_dust2
برای جدا شدن از tmux بدون بستن سرور: CTRL+B و سپس D. برای برگشتن: tmux attach -t cs2.
توجه کنید که Valve توصیه میکند به جای اجرای مستقیم فایل game/bin/linuxsteamrt64/cs2 از اسکریپت cs2.sh استفاده کنید، چون این اسکریپت کارهای اولیه لازم را انجام میدهد.
🎮 سرور گیم ایرانیکاسرور؛ آماده برای CS2، ماینکرفت و هر بازی دیگری
اگر نمیخواهید درگیر نصب دستی SteamCMD، تنظیمات Firewall و آپدیتهای مداوم شوید، سرور گیم ایرانیکاسرور گزینهای است که همین امروز میتوانید سفارش دهید. منابع اختصاصی CPU و RAM، دیسک NVMe پرسرعت، پهنای باند مناسب برای گیمسرور و پشتیبانی فنی که میداند با CS2 چطور رفتار کند.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
مشکلات رایج و راهحلهای عملی
مشکل ۱: بازیکنان نمیتوانند وصل شوند
اولین کاری که باید بکنید بررسی Process و پورت است:
ss -lunp | grep 27015
اگر پورت Listen نیست، مشکل از اجرای سرور است. اگر Listen است اما بازیکن وصل نمیشود، Firewall را بررسی کنید. نکتهای که خیلیها از آن غافل میشوند: باز کردن UFW کافی نیست؛ اگر VPS شما در پنل دیتاسنتر Firewall یا Security Group جداگانه دارد، باید همانجا هم پورت را باز کنید.
مشکل ۲: خطای “Your client is out of date”
این خطا بعد از هر آپدیت Valve شایع میشود. علت ساده است: Steam کلاینت بازیکنان را در چند دقیقه آپدیت میکند، اما سرور شما تا وقتی ریاستارت نشود روی Build قدیمی میماند.
راهحل: سرور را متوقف کنید، فایلها را با SteamCMD آپدیت کنید و دوباره اجرا کنید:
login anonymous
force_install_dir /home/cs2/cs2
app_update 730 validate
quit
یک اشتباه رایج دیگر: بعضی مدیران سرور force_install_dir را فراموش میکنند و SteamCMD فایلها را در مسیر پیشفرض (steamapps/common) دانلود میکند، در حالی که سرور از مسیر قبلی اجرا میشود. همیشه قبل از اجرای سرور، مسیر نصب را چک کنید.
مشکل ۳: خطای Steamworks SDK
اگر در لاگ سرور خطای Failed to initialize Steamworks SDK دیدید، احتمالاً فایل steamclient.so قدیمی است. Valve گاهی نسخهای از CS2 را کامپایل میکند که به steamclient.so جدیدتر نیاز دارد.
راهحل موقت: فایل بهروز را از مسیر SteamCMD کپی کنید:
راهحل پایدارتر: اسکریپت اجرای سرور را طوری تنظیم کنید که هر بار قبل از اجرا این فایل را کپی کند.
مشکل ۴: سرور در Community Browser دیده نمیشود
اگر اتصال مستقیم با connect IP:PORT کار میکند اما سرور در لیست عمومی نیست، احتمالاً Game Server Login Token (GSLT) ندارید. برای اینکه سرور در Browser نمایش داده شود، باید یک توکن از صفحه رسمی Valve بسازید و در دستور اجرا قرار دهید:
بازیکنان میتوانند بدون توکن هم با IP مستقیم وصل شوند، اما سرور در لیست عمومی دیده نمیشود.
مشکل ۵: تنظیمات server.cfg اعمال نمیشود
یک اشتباه رایج: فایل کانفیگ را در مسیر اشتباه قرار میدهید. مسیر درست برای CS2 روی Linux این است:
نکته مهمتر: ترتیب بارگذاری فایلها را در نظر بگیرید. اگر تنظیمات Game Mode بعد از server.cfg لود شود، ممکن است مقادیر شما را بازنویسی کند. برای اطمینان، از دستور exec server.cfg در انتهای فایلهای Game Mode استفاده کنید یا تنظیمات حیاتی را در فایل اصلی Game Mode قرار دهید.
مشکل ۶: نقشه اجرا نمیشود
اگر +map de_dust2 اجرا نمیشود، اول با ls game/csgo/maps/ بررسی کنید فایل de_dust2.bsp وجود دارد و حجمش صفر نیست. اگر فایل نقشه استاندارد هست اما باز هم اجرا نمیشود، احتمالاً مشکل از عدم تطابق نام یا پارامتر اضافی در خط اجراست. برای تست، یک خط دستور حداقلی استفاده کنید:
🛠 سرور مجازی ایران ایرانیکاسرور؛ بستری پایدار برای گیمسرورهای حرفهای
اگر بعد از خواندن این مقاله به این نتیجه رسیدید که یک VPS ایران با منابع اختصاصی میخواهید که هم برای CS2 کافی باشد و هم بتوانید سرویسهای جانبی مثل وبپنل یا بات دیسکورد را روی آن اجرا کنید، سرورهای ایرانیکاسرور با دیسک NVMe، پهنای باند مناسب و پشتیبانی فنی ۲۴ ساعته انتخاب مطمئنی است.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
مدیریت سرور پس از راهاندازی
استفاده از systemd برای اجرای خودکار پس از Reboot
tmux برای مدیریت دستی خوب است، اما اگر VPS ریاستارت شود، سرور شما هم از دست میرود. برای سرور دائمی، یک سرویس systemd بسازید:
محتوای فایل (مسیرها را مطابق نصب خودتان تنظیم کنید):
Description=CS2 Dedicated Server
After=network.target[Service]
Type=simple
User=cs2
WorkingDirectory=/home/cs2/cs2
ExecStart=/home/cs2/cs2/cs2.sh -dedicated +map de_dust2
Restart=on-failure
RestartSec=10[Install]
WantedBy=multi-user.target
systemctl enable cs2
systemctl start cs2
systemctl status cs2
آپدیت خودکار سرور با cron
برای اینکه بعد از هر آپدیت Valve سرور شما عقب نماند، یک اسکریپت آپدیت بسازید و در cron قرار دهید. الگوی پیشنهادی: هر روز در ساعتی که سرور خالی است، سرور متوقف شود، SteamCMD آپدیت کند و دوباره اجرا شود.
چند Instance روی یک VPS
اگر قصد دارید چند سرور CS2 اجرا کنید، هر Instance باید پورت مجزا داشته باشد:
🔹 سرور دوم → پورت ۲۷۰۱۶
🔹 سرور سوم → پورت ۲۷۰۱۷
هر Instance باید مسیر نصب و فایل کانفیگ مستقل داشته باشد. مصرف CPU و RAM همه سرورها را در مجموع در نظر بگیرید؛ اگر VPS شما ۴ هسته دارد، اجرای سه سرور سنگین روی آن منطقی نیست.
چکلیست عیبیابی سریع
اگر سرور کار نمیکند، این ترتیب را دنبال کنید. در بیشتر موارد، مشکل در همین چند قدم اول مشخص میشود:
🔹 پورت Listen است؟ ss -lunp
🔹 Firewall سیستم اجازه میدهد؟ ufw status
🔹 Firewall دیتاسنتر اجازه میدهد؟ در پنل VPS بررسی کنید
🔹 IP درست است؟ curl -4 ifconfig.me
🔹 فایلهای سرور سالم هستند؟ app_update 730 validate
🔹 نسخه سرور با کلاینت یکی است؟ هر دو را آپدیت کنید
🔹 منابع کافی است؟ htop
🔹 شبکه Packet Loss دارد؟ ping 1.1.1.1
📌 مشکل خاصی دارید؟ بگذارید با هم حلش کنیم
اگر در راهاندازی CS2 Dedicated Server به مشکل خوردید یا مطمئن نیستید چه منابعی برای تعداد بازیکنان و نوع سرور شما کافی است، تیم فنی ایرانیکاسرور آماده کمک است. مشکل خود را ارسال کنید تا راهنمایی اختصاصی بگیرید.
📞 تماس با پشتیبانی: 021-91302460 | ایرانیکاسرور
سخن آخر
راهاندازی CS2 Dedicated Server روی VPS ایران کار سختی نیست، اما نیاز به صبر و دقت دارد. سه اصل را همیشه به یاد داشته باشید:
🔹 بعد از هر آپدیت Valve سرور را ریاستارت و آپدیت کنید، وگرنه بازیکنان قطع میشوند.
🔹 Firewall را در همه لایهها (سیستم و پنل دیتاسنتر) بررسی کنید، نه فقط یکی.
🔹 برای سرور دائمی از systemd استفاده کنید، نه tmux. این کار ریاستارت خودکار و بازیابی پس از کرش را ممکن میکند.
اگر به دنبال سرور مجازی ایران با منابع پایدار برای گیمسرور هستید، صفحه محصولات ایرانیکاسرور را ببینید. برای مشاوره خرید هم میتوانید با شماره 021-91302460 تماس بگیرید.
دیدگاهها
0 دیدگاه برای این مطلب ثبت شده است.