بلاگ/راه‌اندازی سرور ماینکرفت روی سرور مجازی ساعتی: مناسب لن‌پارتی و ایونت‌های موقت
به‌روز شده

راه‌اندازی سرور ماینکرفت روی سرور مجازی ساعتی: مناسب لن‌پارتی و ایونت‌های موقت

1405/06/290 بازدید
راه‌اندازی سرور ماینکرفت روی سرور مجازی ساعتی: مناسب لن‌پارتی و ایونت‌های موقت

راه‌اندازی سرور ماینکرفت روی سرور مجازی ساعتی: مناسب لن‌پارتی و ایونت‌های موقت

اگر قرار است یک شب یا یک آخر هفته با چند دوست ماینکرفت بازی کنید، نیازی به خرید یک سرور ماینکرفت با اشتراک ماهانه نیست. برای همین کارهای موقت — لن‌پارتی، ایونت یک‌باره، یا تست یک مود جدید قبل از راه‌اندازی دائمی — ساخت سرور ماینکرفت روی VPS ساعتی گزینه‌ی منطقی‌تری است: سرور را وقتی لازم دارید بالا می‌آورید، هزینه‌ی همان چند ساعت را پرداخت می‌کنید و بعد از تمام شدن بازی، سرور را حذف می‌کنید.

این راهنما مراحل کامل راه‌اندازی را روی یک سرور مجازی لینوکسی (اوبونتو) توضیح می‌دهد: از انتخاب منابع مناسب تا نصب جاوا، اجرای سرور، باز کردن پورت و در نهایت جمع‌کردن تمیز سرور بعد از پایان ایونت.

چرا سرور مجازی ساعتی برای ماینکرفت انتخاب خوبی است؟

سرورهای ماینکرفت اختصاصی که هاست‌های گیمینگ می‌فروشند معمولاً اشتراک ماهانه دارند، حتی اگر فقط یک شب از آن‌ها استفاده کنید. در مقابل، یک سرور مجازی ساعتی چند مزیت مشخص دارد:

  • فقط برای ساعت‌هایی که سرور روشن است پرداخت می‌کنید، نه یک ماه کامل.
  • دسترسی root کامل دارید؛ می‌توانید هر نسخه از ماینکرفت (Vanilla، Paper، Forge) را با هر مود دلخواه نصب کنید.
  • منابع (رم، CPU) را خودتان بر اساس تعداد بازیکن انتخاب می‌کنید، نه یک پلن از پیش‌تعیین‌شده.
  • بعد از پایان ایونت سرور را حذف می‌کنید و هزینه‌ای برای زمان بلااستفاده نمی‌پردازید.

این مدل به‌خصوص برای لن‌پارتی‌های دوره‌ای یا ایونت‌های تک‌باره (مثلاً یک مسابقه‌ی داخلی بین دوستان) مناسب است.

چقدر رم و پردازنده لازم دارید؟

نیاز منابع سرور ماینکرفت مستقیم به تعداد بازیکن هم‌زمان و نوع دنیا (وانیلا یا با مود) بستگی دارد. جدول زیر یک تخمین عملی برای شروع است:

تعداد بازیکن هم‌زمانرم پیشنهادیتعداد هسته CPUمناسب برای
۲ تا ۴ نفر۲ گیگابایت۱ هستهلن‌پارتی کوچک، دنیای وانیلا
۵ تا ۱۰ نفر۴ گیگابایت۲ هستهایونت دوستانه، چند مود سبک
۱۰ تا ۲۰ نفر۶ تا ۸ گیگابایت۴ هستهسرور عمومی کوچک، مودپک‌های سنگین‌تر

نکته‌ی مهم: کل رم سرور را به جاوا اختصاص ندهید. حداقل ۱ گیگابایت را برای سیستم‌عامل و پردازش‌های پس‌زمینه کنار بگذارید؛ یعنی روی یک سرور ۴ گیگابایتی، به جاوا حدود ۳ گیگابایت بدهید.

مراحل راه‌اندازی سرور ماینکرفت روی VPS

۱. ساخت سرور و اتصال با SSH

بعد از ساخت سرور مجازی (اوبونتو ۲۲.۰۴ گزینه‌ی خوبی است)، با SSH به آن وصل شوید و پکیج‌ها را به‌روزرسانی کنید:

ssh root@server-ip
apt update && apt upgrade -y

سرور فقط برای چند ساعت هم که فعال باشد، بهتر است دسترسی SSH را از همان اول امن کنید؛ این راهنما نحوه‌ی غیرفعال کردن ورود با رمز عبور و استفاده از کلید SSH را توضیح می‌دهد.

۲. نصب جاوا

ماینکرفت روی جاوا اجرا می‌شود. نسخه‌ی مورد نیاز به نسخه‌ی بازی بستگی دارد؛ برای نسخه‌های جدید (۱.۲۰ به بعد)، جاوا ۱۷ یا ۲۱ کافی است (روش نصب برای نسخه‌های قدیمی‌تر جاوا هم در این آموزش آمده):

apt install openjdk-21-jre-headless -y
java -version

۳. دانلود و پیکربندی سرور ماینکرفت

یک پوشه‌ی مجزا برای سرور بسازید و فایل jar را داخل آن قرار دهید (فایل رسمی از سایت Minecraft یا نسخه‌ی Paper برای عملکرد بهتر):

mkdir /opt/mc-server && cd /opt/mc-server
wget <لینک نسخه‌ی مورد نظر server.jar>
java -Xmx3G -Xms1G -jar server.jar nogui

اجرای اول با خطا متوقف می‌شود و فایل eula.txt ساخته می‌شود؛ داخل آن مقدار eula=false را به eula=true تغییر دهید تا سرور اجرا شود. تنظیمات بازی مثل حالت (survival/creative)، سختی، و whitelist در فایل server.properties قابل تغییر است.

اگر ایونت خصوصی است، حتماً whitelist را فعال کنید تا فقط بازیکن‌های دعوت‌شده بتوانند وصل شوند:

whitelist=true

و بعد از اولین اجرا، نام بازیکن‌ها را با دستور زیر داخل کنسول سرور اضافه کنید:

whitelist add <username>

۴. باز کردن پورت در فایروال

ماینکرفت به‌صورت پیش‌فرض روی پورت ۲۵۵۶۵ (TCP) کار می‌کند. اگر از ufw استفاده می‌کنید (راهنمای کامل تنظیم ufw در صورت نیاز به توضیح بیشتر):

ufw allow 25565/tcp
ufw reload

اگر سرور شما پنل امنیتی جداگانه یا فایروال شبکه‌ای هم دارد، همین پورت را از آن سمت هم باز کنید، وگرنه بازیکن‌ها با خطای timeout مواجه می‌شوند.

۵. اجرای پایدار با systemd

اجرای سرور مستقیم در ترمینال یعنی با قطع اتصال SSH، سرور هم متوقف می‌شود. برای اجرای پایدار، یک سرویس systemd بسازید:

nano /etc/systemd/system/minecraft.service
[Unit]
Description=Minecraft Server
After=network.target

[Service]
WorkingDirectory=/opt/mc-server
ExecStart=/usr/bin/java -Xmx3G -Xms1G -jar server.jar nogui
Restart=on-failure
User=root

[Install]
WantedBy=multi-user.target

سپس سرویس را فعال و اجرا کنید:

systemctl daemon-reload
systemctl enable --now minecraft
systemctl status minecraft

از این پس سرور حتی بعد از قطع SSH یا ری‌استارت شدن VPS به‌صورت خودکار بالا می‌آید. برای دیدن لاگ زنده:

journalctl -u minecraft -f

اگر روی همین VPS سرویس دیگری هم اجرا می‌کنید و می‌خواهید مطمئن شوید ماینکرفت تمام رم و CPU را مصرف نکند، محدود کردن مصرف منابع با systemd و cgroups راه ساده‌ای برای این کار است.

سرور ماینکرفت در حال اجرا با systemd روی سرور مجازی، آماده برای اتصال بازیکنان

تنظیمات مهم برای لن‌پارتی و ایونت موقت

چون این سرور موقتی است و معمولاً برای یک گروه مشخص از آدم‌ها راه‌اندازی می‌شود، چند تنظیم کمک می‌کند تجربه‌ی بازی روان‌تر باشد:

  • view-distance را روی سرورهای کم‌رم پایین‌تر بگذارید (مثلاً ۸ به‌جای ۱۰ پیش‌فرض) تا فشار کمتری روی CPU بیاید.
  • قبل از شروع ایونت، یک بار با یک نفر تست اتصال بگیرید تا مطمئن شوید پورت و IP درست کار می‌کند.
  • اگر بازیکن‌ها روی نسخه‌های مختلف ماینکرفت هستند، server.properties را طوری تنظیم کنید که نسخه با کلاینت‌ها هم‌خوان باشد؛ ناهماهنگی نسخه رایج‌ترین دلیل وصل نشدن بازیکنان است.
  • یک بکاپ سریع از پوشه‌ی world قبل از شروع بازی بگیرید، به‌خصوص اگر قرار است پلاگین یا مود نصب کنید.

پایان ایونت: چطور سرور را درست جمع کنیم؟

نکته‌ای که در سرور ساعتی اهمیت دارد این است که هزینه فقط تا وقتی سرور فعال است حساب می‌شود. بعد از پایان لن‌پارتی:

  1. اگر دنیای بازی برایتان ارزش دارد، پوشه‌ی world را با scp یا از طریق پنل دانلود کنید.
  2. سرویس ماینکرفت را متوقف کنید: systemctl stop minecraft.
  3. سرور مجازی را از پنل حذف کنید تا از آن لحظه دیگر هزینه‌ای محاسبه نشود.

اگر قرار است همین ایونت را چند هفته‌ی دیگر دوباره تکرار کنید، به‌جای حذف کامل، می‌توانید فایل world را نگه دارید و دفعه‌ی بعد روی یک سرور جدید همان دنیا را بالا بیاورید — باز هم فقط برای ساعت‌های واقعی استفاده هزینه می‌دهید.

جمع‌بندی

برای بازی‌های موقت مثل لن‌پارتی یا یک ایونت یک‌باره، ساخت سرور ماینکرفت روی VPS ساعتی هم از نظر هزینه و هم از نظر کنترل کامل روی تنظیمات، منطقی‌تر از یک هاست ماهانه‌ی گیمینگ است. کل فرآیند — از ساخت سرور تا آماده شدن برای اتصال بازیکن‌ها — کمتر از نیم ساعت طول می‌کشد.

اگر می‌خواهید یک VPS با پرداخت ساعتی برای همین کار بسازید، سرور مجازی آریانت را ببینید:

ساخت سرور مجازی ساعتی آریانت