server.properties: полный справочник всех опций (Minecraft 2026)
Файл server.properties лежит в корне сервера и читается ровно один раз: при запуске. Поменял строку на горячую, не перезапустил сервер, удивился, что ничего не изменилось. С версии 1.20.5 файл прирос новыми ключами, в 1.21 добавились transfer packet и пара security-флагов. В одном справочнике разберём каждую строку: что делает, какое значение по умолчанию даёт vanilla, и какие значения реально ставят на SMP, минигеймы, хардкор и крупные паблик-проекты.
Где лежит файл и как он устроен
Файл создаётся при первом запуске сервера в той же папке, где лежит paper.jar или server.jar. Формат тривиальный: key=value, по одной паре на строку, комментарии начинаются с #. Все ключи в нижнем регистре через дефис, никаких пробелов вокруг =. Кодировка UTF-8 без BOM, переводы строк LF (если редактируете на Windows и потом видите кракозябры в motd - проблема в кодировке).
Сервер читает файл один раз при старте. Любое изменение требует перезапуска или, на Paper, команды /minecraft:reload для подмножества опций (большинство всё равно требует рестарта). После запуска неизвестные ключи игнорируются, отсутствующие дописываются со значениями по умолчанию. Если файл удалить - vanilla сгенерирует новый, со свежим level-seed= пустым и предложением принять EULA в eula.txt.
Комментарии и порядок строк сервер не сохраняет: после первого запуска файл пересохраняется в каноническом виде (на ванилле - алфавитный порядок). Если нужны комментарии - держите их в отдельной заметке, в самом файле они умрут.
Network: сеть, порты, MTU и анти-прокси
Сетевой блок отвечает за то, как сервер слушает входящие соединения и как обрабатывает пакеты.
server-port- TCP-порт, по умолчанию25565. Можно ставить любой свободный, но если поменяли - клиенты должны указывать его явно (mc.example.com:25577) или использовать SRV-запись DNS. Для скрытия от Shodan-сканов смена порта почти не помогает: атакующие сканируют диапазоны.server-ip- на каком интерфейсе слушать. Пусто по умолчанию, что значит «все интерфейсы». Если на дедике несколько IP и нужно прибиндить сервер к одному - пишите IP сюда. На VPS с одним IP оставляйте пустым.network-compression-threshold- размер пакета в байтах, после которого включается zlib-сжатие. По умолчанию256. Ставьте512если у вас сильный CPU и слабый канал,-1(отключить компрессию) если играете в локалке или у вас 10G аплинк и хочется сэкономить такты.prevent-proxy-connections- приtrueсервер пытается распознать VPN/прокси через Mojang-API. Звучит хорошо, по факту лагает (synchronous-блокирующий запрос на каждом коннекте) и не ловит современные residential-прокси. Оставляйтеfalse, фильтрацию делайте на уровне DDoS-защиты или плагина.rate-limit- максимум пакетов в секунду от одного клиента. По умолчанию0(без лимита). Поставьте300на паблике, чтобы ботнеты не валили коннекшен флудом изнутри сессии.enable-status- отвечать ли на ping-запросы (Server List Ping). По умолчаниюtrue. Если хочется скрыть сервер от публичных трекеров -false, но плеер-список тоже исчезнет.hide-online-players- добавлен в 1.18. Приtrueв Server List Ping отдаётся только число игроков, без ников. Полезно против ботов, скрейпящих ники для целевого spam/харасса.
World: мир, генерация, формат регионов
level-name- папка, в которой лежит мир. По умолчаниюworld. Меняйте чтобы переключаться между мирами без удаления старого: оставилиworld_old, поставилиlevel-name=world_new- на старте сгенерится новый.level-seed- сид для генерации мира. Пусто = случайный. Сюда же можно положить как число, так и строку (строка хешируется в long).level-type- тип генератора. С 1.19 формат сменился на namespaced ID:minecraft:normal,minecraft:flat,minecraft:large_biomes,minecraft:amplified,minecraft:single_biome_surface. Старые ключиDEFAULT/FLAT/LARGEBIOMES/AMPLIFIEDещё работают через legacy-маппер, но Mojang просит использовать новый формат.generator-settings- JSON-настройки кастомной генерации (для flat-мира список слоёв, для single_biome - биом). Большинство владельцев SMP оставляет пустым.generate-structures- генерировать ли деревни, крепости, трейл-руины. По умолчаниюtrue. Ставьтеfalseесли хотите голый мир для сурвайвл-шоу или тестов.world-creation-seed- добавлен для нового generator-pipeline в 1.20+, дублируетlevel-seedдля совместимости с datapacks, которые читают именно этот ключ.region-file-compression- алгоритм сжатия region-файлов. С 1.20.5 поддерживаетсяdeflate(по умолчанию),lz4иnone. На крупных мирах LZ4 даёт +20-30% к скорости загрузки чанков ценой +5-10% к размеру на диске. Если диск не NVMe и I/O слабое - переключайте наlz4.max-world-size- радиус мира в блоках от спавна. По умолчанию29999984(vanilla cap). Снижайте до 5000-10000 для миниgame-арен, чтобы игроки не уходили далеко.allow-nether- генерация и доступ в нижний мир. По умолчаниюtrue. На skyblock/bedwars обычноfalse.spawn-monsters- спавн враждебных мобов. По умолчаниюtrue. Ставьтеfalseна креативе или на хабе.spawn-animals- пассивные мобы.spawn-npcs- деревенские жители.
Gameplay: режим, сложность, респаун
gamemode- стартовый режим:survival(0),creative(1),adventure(2),spectator(3). Можно писать как слово, так и число.force-gamemode- приtrueкаждый игрок при коннекте сбрасывается вgamemodeиз конфига. Полезно на сурвайвл-серверах, где админ временно ставил себеcreativeи не хочет, чтобы оно сохранилось.difficulty-peaceful,easy,normal,hard. Хардкор-режим выставляется отдельным флагом.hardcore- приtrueсмерть в сурвайвле = бан или принудительный спектатор-режим (зависит от настроек), хелс не реген, сложность зафиксирована на hard. Ставится один раз - обратно безболезненно не вернёшь, мир уже в hardcore-флаге.pvp- приfalseигроки не могут наносить урон друг другу прямой атакой. Косвенно (TNT, fall damage от пуш-блоков) урон проходит, такие сценарии закрывают плагинами.allow-flight- разрешить плагину или предмету (Elytra, креатив) включать полёт без анти-чит-кика. По умолчаниюfalse. Если у вас плагины с jetpack/grappling, ставьтеtrue.spawn-protection- радиус в блоках вокруг точки спавна, где не-операторы не могут ломать или ставить блоки. По умолчанию16. Для SMP без спавна-крепости ставьте0, для паблик-хабов -64-128.op-permission-level- стартовый уровень привилегий новых ОП-ов. От 1 до 4. По умолчанию4(полный доступ). На больших проектах ставьте2и выдавайте4руками только владельцу: уровень 4 даёт/op,/deop,/stopи доступ к командному блоку.function-permission-level- уровень доступа для команд внутри функций (mcfunction). По умолчанию2.default-resource-pack- URL ресурс-пака, который сервер предложит клиенту скачать (с 1.20.3 поддерживается несколько паков, но черезserver-resource-pack-promptи серию полей).require-resource-pack- приtrueклиент кикается, если отказался скачать пак.resource-pack-sha1- SHA-1 архива пака для проверки целостности. Обязательное поле если хочется чтобы клиенты не получили MITM-подделку.
Performance: view-distance, simulation-distance, тики
Здесь живут самые горячие настройки. Ошибочный view-distance=32 положит сервер на 30+ игроках, правильный - даёт буст в TPS на ровном месте.
view-distance- радиус в чанках, который сервер отправляет клиенту. По умолчанию10. На SMP до 50 игроков ставьте8-10, на 100+ -6-8, на минигейме-арене -4-5(всё равно карта маленькая).simulation-distance- радиус в чанках, в котором тикаются мобы, фермы, рост растений и редстоун. Введён в 1.18 как отдельная от view метрика. По умолчанию10. Ставьте6-8: дальше игрок всё равно не взаимодействует с фермами, а CPU экономится драматически.entity-broadcast-range-percentage- процент от view-distance, на котором клиент видит сущности (мобы, item-frames). По умолчанию100. Снижайте до50-70на сервере с лагающими сущностями: визуально игрок их меньше видит, нагрузка на сеть и клиента падает.max-tick-time- миллисекунды, в течение которых тик может выполняться, прежде чем watchdog убьёт сервер. По умолчанию60000(60 секунд) на ванилле,-1на Paper (отключено). Если вы не на ванилле и watchdog убивает сервер посреди ночи - переключите на-1и разбирайтесь с лагом через/spark.max-chained-neighbor-updates- лимит на каскад редстоун-обновлений за один тик. По умолчанию1000000в 1.21. На SMP, где игроки строят гигантские TNT-дюпы и редстоун-конвееры, снижайте до100000-300000: длинные цепочки физики обрываются, лаг-машины не работают, обычные фермы - работают.entity-broadcast-range-percentageповторно: про сущности писали выше.sync-chunk-writes- записывать чанки синхронно (true, по умолчанию) или async (false). На SSD оставляйтеtrue- async ломает сохранность мира при крэше. На HDD под высокой нагрузкойfalseснижает спайки, но риск повреждения чанка реален.entity-tracking-range- на ванилле зашит, на Paper в paper-world.yml. Вserver.propertiesего нет, не пишите туда.
Security: online-mode, secure-profile, whitelist, log-ips, accept-transfers
online-mode- самая важная строка во всём файле. Приtrueсервер сверяет UUID и сессию с Mojang/Microsoft API. Приfalseлюбой клиент может зайти под любым ником. По умолчаниюtrue. СтавьтеfalseТОЛЬКО если перед сервером стоит прокси (Velocity/BungeeCord) иonline-mode=trueстоит на прокси.enforce-secure-profile- добавлен в 1.19, релевантен в 1.21. Приtrueклиент должен иметь подписанный Mojang ключ для сообщений в чате. Под BedRock-клиентами через Geyser выключайте (false), иначе биджевые игроки не зайдут.prevent-proxy-connectionsуже описан в network.white-list- приtrueпускает только ники изwhitelist.json. По умолчаниюfalse. Для приватных SMP - must-have.enforce-whitelist- приtrueадмин, добавивший игрока в вайт-лист, не может потом отозвать его, пока он онлайн (игрок останется в игре до выхода). Приtrueигроки, удалённые из вайт-листа, кикаются мгновенно. Звучит контринтуитивно, но именно так: vanilla-логика.log-ips- добавлен в 1.20.2. Приtrue(по умолчанию) IP игрока пишется вlatest.logпри каждом коннекте. Для GDPR-совместимости и снижения утечек - ставьтеfalse. Логи всё равно нужны для модерации, но IP туда не попадёт.accept-transfers- добавлен в 1.20.5. Разрешает приём transfer-packet от другого сервера: игрок, на исходном сервере выполнивший/transfer, попадает к вам без диалога коннекта. Огромный security-риск, если вы не контролируете сеть исходных серверов: оставляйтеfalseна одиночном сервере, ставьтеtrueтолько в проксированной сети, где transfer - фича лобби.op-permission-levelуже разобрали в gameplay.text-filtering-config- путь к JSON-конфигу для cloud text filter (Microsoft). По умолчанию пусто, не нужно.
Query, RCON и админские интерфейсы
enable-query- UDP-протокол GameSpy-стиля для отдачи статистики (TPS, плееры, версия) на сторонние трекеры. По умолчаниюfalse. Включайте только если вам реально нужно отдавать статистику в monitor-сервис: лишний открытый UDP - лишняя поверхность атаки.query.port- порт UDP query, по умолчанию25565(тот же что server-port). Меняйте на отдельный, если включили.enable-rcon- TCP-протокол удалённого администрирования. По умолчаниюfalse. Если включаете - ставьте сильный пароль (rcon.password) и блокируйте порт фаерволом, открывая только с админ-IP. RCON ходит без TLS: на публичной сети - туннелируйте через SSH или Wireguard.rcon.port- порт RCON, по умолчанию25575.rcon.password- пустой по умолчанию, пустой пароль = RCON отключён даже приenable-rcon=true. Ставьте 24+ символов случайных, не используйте пароль от хостинга.broadcast-rcon-to-ops- приtrueкоманды, выполненные через RCON, дублируются в чат всем ОП-ам онлайн. Полезно для аудита (видно, что команда пришла извне).broadcast-console-to-ops- то же для команд из консоли.enable-jmx-monitoring- JVM-метрики через JMX. Полезно для Prometheus с jmx-exporter. По умолчаниюfalse.
MOTD и брендинг
motd- строка под названием сервера в списке. До 59 символов на строку, две строки разделяются\n. Цвета через\u00A7плюс код (например\u00A7eдля жёлтого) или legacy&если у вас Paper с включённым decoder. JSON-формат с 1.16+ поддерживается через unicode-эскейп, но проще писать через плагин (animated-motd).server-icon- на самом деле это не строка вserver.properties, а файлserver-icon.png64×64 в корне сервера. Раз пять в году кто-то открывает.properties, ищетiconи не находит.pause-when-empty-seconds- добавлен в 1.21.2. После скольких секунд без игроков сервер «паузит» тик-цикл (мобы не двигаются, время не идёт, IO почти ноль). По умолчанию60. На SMP с автофермами ставьте0(не паузить - иначе фермы не работают пока вы оффлайн), на публичном хабе -60-300.player-idle-timeout- минут без активности, после которых игрок кикается. По умолчанию0(не кикать). На паблике с ограничением слотов -15-30.
Reference table
| Опция | Default | SMP (50 ppl) | Minigame (200 ppl) | Hardcore | Public hub |
|---|---|---|---|---|---|
online-mode | true | true | true | true | true (false если за proxy) |
enforce-secure-profile | true | true | true | true | false (если Geyser) |
view-distance | 10 | 8 | 5 | 10 | 6 |
simulation-distance | 10 | 7 | 4 | 8 | 5 |
entity-broadcast-range-percentage | 100 | 80 | 60 | 100 | 70 |
max-players | 20 | 50 | 200 | 10 | 500 |
spawn-protection | 16 | 0 | 0 | 0 | 64 |
pvp | true | true | true | true | false |
difficulty | easy | hard | normal | hard | easy |
hardcore | false | false | false | true | false |
allow-nether | true | true | false | true | false |
spawn-monsters | true | true | false | true | false |
white-list | false | true | false | true | false |
enforce-whitelist | false | true | false | true | false |
log-ips | true | false | false | false | false |
accept-transfers | false | false | true (на лобби) | false | true |
enable-rcon | false | true | true | false | true |
network-compression-threshold | 256 | 256 | 512 | 256 | 256 |
rate-limit | 0 | 0 | 300 | 0 | 500 |
region-file-compression | deflate | deflate | lz4 | deflate | lz4 |
max-chained-neighbor-updates | 1000000 | 300000 | 1000000 | 1000000 | 200000 |
pause-when-empty-seconds | 60 | 0 | 60 | 0 | 60 |
op-permission-level | 4 | 2 | 2 | 4 | 2 |
FAQ
Безопасно ли ставить online-mode=false?
Одиночный сервер с online-mode=false доступен любому школьнику, который введёт ник Notch: войти, заломать спавн, выйти. Безопасный сценарий ровно один: за вашим сервером стоит Velocity/BungeeCord прокси с online-mode=true, а на бэкенд-серверах false плюс firewall, который пускает только IP прокси. Любая другая конфигурация - открытая дверь.
view-distance или simulation-distance важнее для TPS?
Для TPS - simulation-distance. Тики мобов, рост посевов, редстоун завязаны именно на него. view-distance грузит сеть и память (количество отправленных клиенту чанков), но не тик. Снижайте simulation-distance агрессивно (до 4-6), view-distance оставляйте близко к стандарту.
Что делать с accept-transfers?
Если у вас одиночный сервер без прокси - оставляйте false. Включение значит, что любой сторонний сервер с командой /transfer может перебросить к вам игрока, у которого ещё не сброшена сессия. На прокси-сетях с собственным контролем входов - включайте только на лобби-сервере.
enforce-secure-profile=true ломает Geyser/Bedrock?
Да. Геo-игроки не имеют Mojang-подписанного ключа, поэтому при true сервер их кикает с Multiplayer Disabled. На чисто Java-сервере оставляйте true (защита от подделки сообщений в чате), на гибридном Geyser-сервере - false.
Можно ли менять server.properties без перезапуска?
На ванилле - нет, файл читается только при старте. На Paper команда /minecraft:reload перечитывает datapacks и часть config-полей (whitelist, ops). Большинство ключей (view-distance, simulation-distance, online-mode, gamemode по умолчанию) требуют полный рестарт. План любых изменений - в окне минимума онлайна.
Где живут паркур- и хабовые опции вроде entity-tracking-range?
Не в server.properties. На Paper они в paper-world.yml и paper-global.yml, на Spigot в spigot.yml, на ванилле их нет вовсе. server.properties - это базовый ванильный конфиг, всё что специфично для Paper/Spigot/Purpur лежит в их собственных файлах.
Хорошо настроенный server.properties экономит часы дебага и десятки тикетов от игроков. Один проход по этому списку перед запуском сервера в паблик закрывает половину типовых проблем: лаги, недопонимание с ботами, утечки IP, дыры в авторизации. Возвращайтесь к файлу после каждого major-апдейта Minecraft: с 1.20.5 за каждый релиз приезжает по две-три новые строки, и значения по умолчанию у новых опций не всегда те, которые нужны вашему серверу.
Protege tu servidor contra ataques DDoS
Protección gratuita con configuración en 5 minutos. 1 TB de tráfico incluido.
Probar gratisArtículos relacionados
Как монетизировать Minecraft сервер: донат, ранги, магазин и EULA
Полное руководство по заработку на Minecraft сервере без нарушения EULA Mojang. Разбираем модели монетизации, плагины для доната, ценовые стратегии и реальные цифры дохода.
Как установить плагины на Minecraft сервер: полный гайд
Пошаговая инструкция по установке плагинов на Minecraft сервер: откуда скачивать, как ставить, как решать ошибки. Bukkit, Spigot, Paper - разбираем всё на практике.
MiniMessage: современное форматирование текста на Minecraft серверах
MiniMessage - формат текста от Adventure API, который заменяет устаревшие §-коды. Hex-цвета, градиенты, кликабельные ссылки и hover-подсказки.