设置 FiveM 服务器
设置 FiveM 服务器

搭建 FiveM 服务器/GTA V 游戏服务器

0 股票
0
0
0
0

目录

  1. 概述

  2. 硬件要求和提示

  3. 服务器准备(用户、更新、软件包)

  4. 下载最新版(推荐)FXServer(自动方法)

  5. 提取和文件夹结构

  6. 收到 许可证密钥 从 Keymaster 和配置 server.cfg

  7. 手动设置测试

  8. 用于自动化和管理的 Systemd 服务

  9. 防火墙和开放端口

  10. 回顾常见问题及解决方案

  11. 命令概要(方便快速复制/粘贴)

  12. 资料来源和参考文献


1. 总论

FiveM (FXServer) 是一个用于运行自定义 GTA V 服务器的平台。要运行服务器,您需要 FXServer 二进制文件、服务器数据(cfx-server-data)和一个 许可证密钥 您已拥有 Keymaster。以下说明基于官方文档和官方资料页面。. Cfx.re 文档+1


2. 硬件要求和提示

  • 推荐操作系统: Ubuntu 22.04 或者 20.04 (64 位).

  • 最低配置:2GB 内存,推荐配置:4GB 以上(适用于玩家较多的服务器)。.

  • 磁盘空间:至少需要 5-10GB 的可用空间(根据模组/资源的不同,可能需要更多)。.

  • 访问权限:具有访问权限的 SSH sudo 或者露丝。.
    (这些通常会在主机指南和文档中提到)。. EUGameHost+1


3. 准备服务器(创建用户和安装软件包)

首先,登录到服务器并创建一个专用的非root用户(例如, 五米):

sudo apt update && sudo apt upgrade -y

# کاربر جدید (اختیاری اما توصیه‌شده)
sudo adduser --disabled-password --gecos "" fivem
sudo usermod -aG sudo fivem
su - fivem

نصب بسته‌های موردنیاز پایه:

# روی Ubuntu 22.04/20.04
sudo apt install -y git wget xz-utils screen curl tar unzip build-essential
# بسته‌های کتابخانه‌ای 32/64 باینری‌ها (در صورت نیاز)
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 libc6-i386

نکته: نام بسته‌های lib32* ممکن است بسته به نسخهٔ اوبونتو تغییر کند (مثلاً lib32gcc1 در توزیع‌های جدید ممکن است موجود نباشد). در صورت بروز خطا، پیام خطا را بررسی کنید و بستهٔ معادل (lib32gcc-s1 و غیره) را نصب کنید. منابع و بحث‌های مربوط در انجمن‌ها موجود است. Stack Overflow+1


بهترین روش این است که از مخزن رسمی «artifacts» فایل‌های FXServer را بگیرید. برای دریافت آخرین Recommended build می‌توانید از اسکریپت زیر استفاده کنید (این اسکریپت شمارهٔ آخرین ساخت را از لیست دریافت و فایل fx.tar.xz را دانلود می‌کند):

# پوشه نصب پیشنهادی
mkdir -p ~/FXServer && cd ~/FXServer

# دریافت آخرین build number و دانلود fx.tar.xz
LATEST=$(curl -s https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/ | \
grep -oP 'href="\K[0-9]+(?=/")' | sort -rn | head -n1)
echo "latest build: $LATEST"

wget -O fx.tar.xz "https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/${LATEST}/fx.tar.xz"

توضیح: آدرس و روش دانلود از مخزن رسمی runtime.fivem.net گرفته شده است — همیشه مطمئن شوید که آخرین Recommended/Stable را دانلود می‌کنید. اگر مایلید دستی عمل کنید، به صفحهٔ artifacts مراجعه و لینک آخرین Recommended را کپی کنید.


5. استخراج و ساختار پوشه‌ها

پس از دانلود، فایل را استخراج کنید و پوشهٔ server-data (دادهٔ پایه) را از GitHub کلون کنید:

# استخراج
tar -xJf fx.tar.xz

# کلون دیتای پایه (مثال: cfx-server-data)
git clone https://github.com/citizenfx/cfx-server-data.git server-data
# یا اگر نسخهٔ دیگری دارید آن را در server-data بریزید

# به سرور داده بروید
cd server-data

ساختار پیشنهادی:

~/FXServer/
├─ fx.tar.xz
├─ run.sh (یا باینری‌ها بعد از استخراج)
└─ server-data/
└─ server.cfg
└─ resources/
...

6. دریافت License Key و پیکربندی server.cfg

برای اجرای سرور نیاز به License Key دارید. آن را از Keymaster تهیه کنید:

  1. وارد https://keymaster.fivem.net شوید (ورود با اکانت Cfx.re / FiveM).

  2. در بخش Servers، یک کلید جدید (Register / New) بسازید و IP/اطلاعات خواسته‌شده را وارد کنید.

  3. کلید تولید شده را دریافت و در server.cfg قرار دهید.

مثال server.cfg (حداقل مورد نیاز):

# server.cfg مثال
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_hostname "My FiveM Server"
sv_maxclients 32

# مسیر resources معمولاً به صورت زیر است:
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure fivem
ensure hardcap

# License key (کلید خود را جایگزین کنید)
sv_licenseKey "YOUR_LICENSE_KEY_HERE"

# RCON (اختیاری)
#rcon_password your_rcon_password

# اضافه کنید هر تنظیم دلخواه و resources

حتماً sv_licenseKey را در server.cfg قرار دهید؛ در غیر این صورت سرور بالا نخواهد آمد و خطای مربوط به نداشتن license نمایش داده می‌شود.


7. راه‌اندازی دستی (برای تست)

برای تست سریع، در پوشهٔ FXServer (یا جایی که run.sh قرار دارد) این دستور را اجرا کنید:

cd ~/FXServer/server-data
bash ../run.sh +exec server.cfg

اگر همه چیز درست باشد، در کنسول خروجی لاگ سرور نمایش داده می‌شود و سرور شروع به شنیدن روی پورت 30120 می‌کند. مستندات رسمی همین روش را برای اجرای دستی توصیه می‌کنند.


8. ساخت سرویس systemd (اجرا، راه‌اندازی خودکار و مانیتورینگ)

برای اینکه سرور به‌صورت خودکار با بالا آمدن سیستم اجرا شود و قابل مدیریت با systemctl باشد، یک واحد systemd بسازید:

ایجاد فایل سرویس (به عنوان روت):

sudo tee /etc/systemd/system/fivem.service > /dev/null <<'UNIT'
[Unit]
Description=FiveM Server
After=network.target

[Service]
Type=simple
User=fivem
WorkingDirectory=/home/fivem/FXServer/server-data
# اگر run.sh در مسیر متفاوت است آن را تنظیم کنید
ExecStart=/bin/bash /home/fivem/FXServer/run.sh +exec server.cfg
Restart=on-failure
RestartSec=10
KillMode=process
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
UNIT

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

sudo systemctl daemon-reload
sudo systemctl enable fivem.service
sudo systemctl start fivem.service
sudo journalctl -u fivem.service -f

نکته: مسیرها و کاربر (User=fivem) را بر اساس تنظیمات واقعی خود تغییر دهید. نکات بیشتر و مثال‌ها در انجمن رسمی وجود دارد.


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

پورت پیش‌فرض FiveM: 30120 TCP/UDP. اگر از UFW استفاده می‌کنید:

sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw reload

در صورتی که VPS یا پنل میزبانی دارید، از باز بودن پورت 30120 TCP/UDP در کنترل‌پنل هاست (و همچنین NAT/پورت‌فورواردینگ روی شبکه) مطمئن شوید. همچنین اگر Plan/DDoS protection provider دارید، ممکن است تنظیمات اضافی نیاز باشد.


10. بررسی مشکلات رایج و راه‌حل‌ها

  • خطای license key: مطمئن شوید sv_licenseKey مقداردهی شده و سرور از server.cfg اجرا می‌شود. (اجرای از دایرکتوری اشتباه باعث این خطا می‌شود).
  • کتابخانهٔ گمشده / error about lib: بسته‌های 32 بیتی/وابستگی‌ها را نصب کنید و با ldd ./fxserver در دایرکتوری باینری‌ها چک کنید. اگر با نسخهٔ اوبونتو تداخل باشد، بستهٔ معادل را نصب کنید.
  • فایروال یا پورت بسته: بررسی کنید پورت 30120 باز باشد.
  • اجازهٔ اجرا (Permission denied): chmod +x run.sh و مطمئن شوید مالک فایل‌ها کاربر مناسب است.
  • سرویس systemd بالا نمی‌آید: sudo journalctl -u fivem.service -b را بررسی کنید تا خطاها را ببینید.

11. خلاصهٔ دستورات (کپی/پیست سریع)

این بلوک برای کاربرانی است که می‌خواهند سریع همهٔ مراحل را اجرا کنند — قبل از اجرا مسیرها (مثلاً /home/fivem) و نام کاربر/کلید لایسنس را مطابق سیستم خود عوض کنید.

# update & create user
sudo apt update && sudo apt upgrade -y
sudo adduser --disabled-password --gecos "" fivem
sudo usermod -aG sudo fivem
su - fivem

# install deps
sudo apt install -y git wget xz-utils screen curl tar unzip build-essential
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 libc6-i386

# download latest fx
mkdir -p ~/FXServer && cd ~/FXServer
LATEST=$(curl -s https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/ | \
grep -oP 'href="\K[0-9]+(?=/")' | sort -rn | head -n1)
wget -O fx.tar.xz "https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/${LATEST}/fx.tar.xz"
tar -xJf fx.tar.xz

# clone server-data
git clone https://github.com/citizenfx/cfx-server-data.git server-data
cd server-data

# place your server.cfg (edit with sv_licenseKey)
# test run
bash ../run.sh +exec server.cfg

# create systemd service (run as sudo from your main user)
sudo tee /etc/systemd/system/fivem.service > /dev/null <<'UNIT'
[Unit]
Description=FiveM Server
After=network.target

[Service]
Type=simple
User=fivem
WorkingDirectory=/home/fivem/FXServer/server-data
ExecStart=/bin/bash /home/fivem/FXServer/run.sh +exec server.cfg
Restart=on-failure
RestartSec=10
KillMode=process
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
UNIT

sudo systemctl daemon-reload
sudo systemctl enable fivem.service
sudo systemctl start fivem.service

# firewall
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp

12. منابع و ارجاعات (برای مطالعهٔ بیشتر)

  • مستندات رسمی — Setting up a Vanilla FXServer (Cfx.re / FiveM).
  • صفحهٔ artifacts رسمی (Runtime) برای دانلود باینری‌ها.
  • Keymaster برای تولید لایسنس: https://keymaster.fivem.net.
  • مثال‌ها و بحث‌های انجمنی دربارهٔ systemd و خطاهای رایج.

پایان — نکتهٔ اخلاقی / امنیتی

  • کلید لایسنس را هرگز در مکالمات عمومی منتشر نکنید.

  • برای سرورهای عمومی حتماً از ابزارهای محافظت در برابر DDoS/فایروال‌های سخت‌افزاری استفاده کنید.

  • اگر می‌خواهید من برایتان یک server.cfg نمونهٔ کامل‌تر (شامل resources پیشنهادی، کانفیگ‌های امنیتی و کدهای مفید) بنویسم، همین الآن یک پیام بفرستید و من آن فایل را آماده و داخل همین پاسخ می‌گذارم.


 

 

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

您可能也喜欢