- Предварительные условия и выбор сервера
- Создайте выделенную структуру пользователей и каталогов.
- Скачайте и установите выделенный сервер с помощью SteamCMD.
- Создание и редактирование файла конфигурации сервера.
- Открытие портов и настройка брандмауэра (UFW и iptables)
- Установка модов (Steam Workshop)
- Запуск сервера (screen/systemd)
- Оптимизация Java и выделение памяти
- Резервные копии
- Безопасность и защита от DDoS-атак
- Мониторинг и ведение журналов
- Проверка подключения и устранение распространенных проблем.
- Выбор местоположения и практические рекомендации
- Дополнительные советы и оптимальные настройки
- Часто задаваемые вопросы
Предварительные условия и выбор сервера
В этом разделе приведены основные требования и рекомендации по аппаратному обеспечению для настройки сервера. Проект Зомбоид Мы рассматриваем предложенные распределения. Ubuntu 20.04/22.04 Или Debian 11/12 Они известны своими проверенными и стабильными игровыми серверами.
Рекомендуемые аппаратные ресурсы:
- До 10 игроков: 2-4 виртуальных ЦП, 4-8 ГБ ОЗУSSD-диск
- 10-50 игроков или несколько режимов: 4+ виртуальных ЦП, 8+ ГБ ОЗУ
- Примечание: Модификации и серверный рендеринг требуют больше памяти и ресурсов процессора; для ресурсоемких приложений используйте вычислительные серверы или графические серверы.
Для доступа к игре необходимы актуальная операционная система, права root или sudo, а также открытые порты.
Пример установки базовых пакетов (Ubuntu/Debian)
sudo apt update && sudo apt install -y openjdk-11-jre-headless steamcmd screen unzip htop fail2ban rsyncОбъяснение: Выберите версию Java в зависимости от версии игры (обычно совместима OpenJDK 11). При необходимости используйте OpenJDK 17.
Создайте выделенную структуру пользователей и каталогов.
Рекомендуется запускать игровой сервер от имени пользователя без прав root. Изоляция безопасности И упростить управление правами доступа.
sudo useradd -m -s /bin/bash pzserver
sudo passwd pzserver
sudo mkdir -p /home/pzserver
sudo chown -R pzserver:pzserver /home/pzserverСкачайте и установите выделенный сервер с помощью SteamCMD.
Чтобы загрузить файлы сервера из SteamCMD Project Zomboid поддерживает Steam Workshop для установки модов.
sudo -u pzserver steamcmd +login anonymous +force_install_dir /home/pzserver +app_update 380870 validate +quitОбъяснение: Если вы обнаружите другой appid, проверьте журнал SteamCMD или официальную документацию игры.
Создание и редактирование файла конфигурации сервера.
Основные конфигурационные файлы обычно находятся в папке установки. Названия файлов могут включать servertest.ini, server.ini или serverconfig.lua.
Пример основных настроек в файле servertest.ini
# servertest.ini (sample)
Public=true
ServerName=MyPZServer
ServerPort=16261
MaxPlayers=32
Password=MySecretPass
RCONPort=16262Выберите необходимые вам порты и откройте их в брандмауэре. Проверьте изменения и перезапустите службу.
Открытие портов и настройка брандмауэра (UFW и iptables)
Перед началом работы откройте порты, указанные в конфигурационном файле брандмауэра. Пример с UFW:
sudo ufw allow OpenSSH
sudo ufw allow 16261/udp
sudo ufw allow 16262/udp
sudo ufw enable
sudo ufw statusДля некоторых установок могут потребоваться TCP-порты; проверьте журналы сервера. Если сервер находится за NAT, настройте переадресацию портов на маршрутизаторе.
Установка модов (Steam Workshop)
Существует два распространенных способа установки модов: загрузка напрямую через SteamCMD или подписка на Workshop через клиент и копирование папки с модом на сервер.
Способ 1: Загрузка модов с помощью SteamCMD
sudo -u pzserver steamcmd +login anonymous +workshop_download_item 108600 <ITEMID> +quitПосле установки модов заполните файлы server/mods или server/WorkshopItems.txt в соответствии с документацией к модам и перезапустите сервер.
Запуск сервера (screen/systemd)
Для быстрого выполнения можно использовать экран Используйте или создайте службу systemd для автоматического запуска сервера.
Пример с экраном
sudo -u pzserver screen -S pzserver
cd /home/pzserver
./start-server.shЧтобы выйти из экрана: Ctrl+A, затем D. Вернуться: sudo -u pzserver screen -r pzserver.
Пример службы systemd
sudo tee /etc/systemd/system/pzserver.service > /dev/null <<'EOF'
[Unit]
Description=Project Zomboid Server
After=network.target
[Service]
Type=simple
User=pzserver
WorkingDirectory=/home/pzserver
ExecStart=/bin/bash -lc './start-server.sh'
Restart=on-failure
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now pzserver.service
sudo systemctl status pzserver.serviceОптимизация Java и выделение памяти
Для повышения производительности запускайте JVM с соответствующими параметрами. Пример общих настроек, которые следует учитывать при тестировании оперативной памяти и производительности:
java -Xms4G -Xmx6G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication -jar ProjectZomboidServer.jarПримечание: Установите значение Xmx в зависимости от объема оперативной памяти сервера и количества игроков. Обычно это делается для каждого игрока. 150-400 МБ Учтите: модификации увеличивают потребление.
Резервные копии
Регулярно создавайте резервные копии сохранений игрока и мира и отправляйте их в удаленное хранилище (удаленное резервное копирование или облачное хранилище).
Пример cron для ежедневного резервного копирования
sudo crontab -u pzserver -e
# Example using rsync
0 3 * * * /usr/bin/rsync -a --delete /home/pzserver/Saves /backups/pzserver/$(date +\%F)/
# Or using tar
0 2 * * * /bin/tar -czf /backups/pzserver/saves_$(date +\%F).tar.gz -C /home/pzserver SavesБезопасность и защита от DDoS-атак
Рекомендации по безопасности включают установку пароля сервера, использование фейл2бан Это необходимо для защиты по SSH и регулярных обновлений системы.
- Для защиты от DDoS-атак используйте анти-DDoS-сервисы или многоуровневые межсетевые экраны.
- Ограничьте доступ к RCON или инструментам управления для определенных IP-адресов.
Компании, которые Более 85 филиалов А предоставляемая ими инфраструктура BGP/анти-DDoS может обеспечить значительную защиту.
Мониторинг и ведение журналов
Журналы обычно находятся в папке /home/pzserver/logs или аналогичной; для просмотра их в режиме реального времени используйте команду tail -f:
tail -f /home/pzserver/console.txtДля проверки источников используйте такие инструменты, как... htop, iotop и netstat. В профессиональных средах используйте Prometheus + Grafana или облачные сервисы мониторинга.
Проверка подключения и устранение распространенных проблем.
Игроки обычно проходят через IP:Порт Или же подключится список серверов Steam. Если подключение не удастся:
- Проверьте порты (например,
статус UFWИлиsudo ss -ulnp | grep 16261). - Проверьте NAT и переадресацию.
- Проверьте журналы сервера на наличие ошибок, связанных с режимом Java или версией.
- Версии модов на сервере и клиенте должны совпадать.
Выбор местоположения и практические рекомендации
Для минимального пинга выберите сервер, расположенный близко к большинству игроков:
- Центральная Европа для европейских игроков
- Восточная или Западная Америка для американских игроков
- Азия (Сингапур/Япония) для азиатских игроков
Услуги, предоставляемые с Более 85 представительств по всему мируИгровые VPS-серверы и серверы с защитой от DDoS-атак позволяют размещать сервер ближе к игрокам, чтобы уменьшить пинг и задержки.
Дополнительные советы и оптимальные настройки
- Автоматические обновления: Напишите скрипты, которые будут создавать резервные копии перед обновлениями.
- Используйте снимки состояния для быстрого отката на облачном сервере.
- Проверьте поведение сервера с помощью нагрузочного тестирования (тестирование пользователями или ботами).
- Ведите документацию об изменениях режима и конфигурации.
Заключение: Следуя описанным выше шагам, вы сможете настроить стабильный, безопасный и масштабируемый сервер для Project Zomboid. Мы рассмотрели все аспекты, от установки SteamCMD и настройки файлов до управления модами и создания резервных копий.









