Krak Server
Krak Server это серверный агент Krak Multiplayer: небольшая программа для выделенного сервера или VPS, которая круглосуточно хостит серверы Minecraft на этой машине через Krak Multiplayer. Ты управляешь им из приложения на телефоне или ПК.
Настройка за 6 шагов
Нужна машина, на которой работает твой сервер Minecraft (VPS, выделенный сервер или домашний ПК), и Krak Multiplayer на телефоне или ПК. На машине ты вводишь одну команду, всё остальное делается в приложении.
- Запусти свой сервер Minecraft на этой машине, как обычно: Bedrock Dedicated Server, сервер Java или Java с Geyser.
- Открой на этой машине терминал от имени администратора. Windows: нажми правой кнопкой на «Пуск» и выбери «Терминал (администратор)» или «Windows PowerShell (администратор)». Linux: открой терминал или подключись по SSH.
- Скопируй ниже команду установки для своей системы (кнопка «Копировать»), вставь её в терминал и нажми Enter. На Linux введи свой пароль, если sudo его попросит.
- Подожди до минуты. Команда скачает Krak Server, проверит его, установит и покажет большой код подключения вроде 7Q4M-X2PA и ссылку. Больше ничего вводить там не нужно.
- На телефоне или ПК открой Krak Multiplayer, нажми кнопку +, потом «Хостить удалённый сервер», и введи код (или открой ссылку). Проверь название сервера и подтверди.
- Выбери, каким сервером Minecraft на машине делиться и каким миром, потом «Сохранить». Твой мир онлайн для друзей всякий раз, когда машина работает.
Установка на Linux
Вставь это в терминал и нажми Enter (sudo может попросить твой пароль):
curl -fsSL https://krak-mp.cc/download/server/install.sh | sudo sh
Скрипт выберет сборку для твоего процессора, проверит её SHA-256, установит Krak Server как системную службу krak-server, запустит её и покажет код подключения. Позже его снова покажет sudo krak-server status. Вручную: скачай архив для своего процессора со страницы загрузки, сверь его SHA-256, распакуй через tar xzf и выполни sudo ./krak-server install. Повторный запуск установщика обновляет Krak Server.
Установка на Windows
Открой PowerShell от имени администратора (правая кнопка на «Пуск», «Терминал (администратор)»), вставь это и нажми Enter:
irm https://krak-mp.cc/download/server/install.ps1 | iex
Это устанавливает службу Windows Krak Server, которая запускается вместе с Windows и перезапускается после сбоя, добавляет krak-server.exe в PATH и показывает код подключения. Позже его снова покажет krak-server.exe status в любом новом терминале администратора; программа лежит в C:\Program Files\Krak Server.
Чтобы сначала попробовать без установки: скачай zip, распакуй его и запусти krak-server.exe в консоли. Он подключается и хостит, пока ты его не закроешь.
Что он делает
Krak Server входит по коду подключения, никогда по твоему паролю. Он находит серверы Bedrock и Java на той же машине и делится теми, которые ты выберешь в приложении, как мирами Krak. Игроки присоединяются к ним из Krak Multiplayer, как к любому миру: сервер появляется в обычном списке LAN в Minecraft.
Игровой трафик идёт через ретранслятор Krak. Игроки никогда не видят IP-адрес сервера, а сервер не видит их адресов. Krak Server не открывает портов и не требует их проброса: он только сам подключается к krak-mp.cc.
Ты управляешь сервером в приложении: нажми +, потом «Хостить удалённый сервер», или открой «Мои миры», где есть твои серверы. Там ты выбираешь, что хостить, запускаешь и останавливаешь, видишь игроков, запросы на вход, кики и баны и его состояние. На этом экране написано «Удалённое управление», так что его не спутать с хостингом на своём устройстве.
Требования
- Linux на x86_64 или ARM64 (systemd для службы, работающей постоянно) или Windows 10, 11 либо Server 2019 и новее на x64.
- Bedrock Dedicated Server, сервер Java (Paper, Fabric и другие) или сервер Java с Geyser на той же машине.
- Аккаунт Krak Multiplayer с подтверждённой почтой или входом через Google и приложение 0.8.5 или новее, чтобы подключить сервер и управлять им (кнопка + с 0.8.6).
- Около 15 МБ на диске и 40 МБ памяти. Рядом с игровым сервером Krak Server почти не нагружает процессор.
Подключи его к аккаунту
- Команда установки показывает код подключения в конце. Позже или когда код устарел, выполни на машине sudo krak-server status (в Windows: krak-server.exe status в терминале администратора).
- В Krak Multiplayer нажми +, потом «Хостить удалённый сервер», и введи код, или открой ссылку на телефоне. В приложении 0.8.5: «Профиль», «Мои серверы», «Добавить сервер».
- Проверь название сервера, систему и сеть, потом подтверди. Код действует 10 минут, потом сервер покажет новый.
Подтверждай только код, который показал сервер под твоим контролем. Кто просит у тебя код, хочет хостить от твоего имени.
Выбери, что хостить
Открой сервер (в «Моих мирах» или + и «Хостить удалённый сервер») и нажми «Хостить на этом сервере». Выбери сервер, найденный на машине, потом один из своих локальных миров или новый. Название, описание, иконку, доступ и другие настройки мира ты меняешь в приложении, как обычно.
Аккаунт хостит один мир одновременно, с Krak Plus и без него: мир на телефоне или ПК, сервер, который хостится через приложение, или мир на Krak Server. Сервер для игры между платформами (Paper с Geyser) это один мир с обеими версиями. Подключить можно до 2 серверов, с Krak Plus до 7, и на каждом держать свой мир: включи хостинг того, который нужен сейчас. С Krak Plus твой внешний сервер может при этом оставаться в каталоге, если это не тот же сервер.
Подтверждение входа работает, но запросы исчезают через 2 минуты. Для сервера, который работает, пока ты спишь, выключи подтверждение и пользуйся настройками доступа мира и банами.
Настройки Bedrock Dedicated Server
Игроки Krak присоединяются через список LAN, поэтому сервер должен принимать игроков из LAN. В server.properties установи:
enable-lan-visibility=true
online-mode=false
allow-list=false
С online-mode=false сервер не проверяет вход в Xbox. Если собственный порт сервера ещё и открыт в интернет, игроки, подключающиеся к нему напрямую, могут войти под любым именем, в том числе оператора. Держи порт Bedrock закрытым от интернета или смирись с непроверенными игроками напрямую.
Только один сервер Bedrock на машине может быть виден в LAN: он занимает UDP-порт 7551. Minecraft 1.26.52 и новее пускают игроков Krak только так, поэтому вторым сервером Bedrock на той же машине поделиться не получится: Krak Server его не хостит, а приложение объясняет почему. Останови другой сервер или включи RakNet на втором. Перезапусти сервер после изменения этих настроек.
Серверы Java
Серверу Java ничего особенного не нужно: Krak Server подключается к порту сервера на той же машине. На сервере с online-mode игрокам, как обычно, нужна Minecraft: Java Edition.
Geyser: игроки Bedrock на сервере Java
С Geyser на Paper, Spigot или прокси игроки Bedrock заходят через порт Bedrock самого Geyser, и Krak Server делится этим портом, как сервером Bedrock. Geyser по умолчанию не пускает ни одного игрока Bedrock, который приходит через Krak: игрок видит «Please log into Xbox», потому что заходит как в игру по LAN, без проверки входа в Xbox, которой ждёт Geyser. Krak Server этого отказа не видит, поэтому приложение не может о нём сказать. Выставь в config.yml Geyser (plugins/Geyser-Spigot/config.yml на Paper и Spigot):
validate-bedrock-login: false
Потом перезапусти сервер. Geyser больше не проверяет вход игроков Bedrock в Xbox: держи его порт Bedrock (по умолчанию 19132) закрытым от интернета, иначе игроки, которые подключаются к нему напрямую, смогут войти под любым именем Bedrock. Krak не нужны открытые порты.
Игроков Java это не касается, и сервер Java может и дальше работать с online-mode=true. С Floodgate игроки Bedrock заходят без аккаунта Java; без Floodgate Geyser просит каждого игрока Bedrock войти в аккаунт Java.
Krak подключается к Geyser через RakNet. Ожидается, что Minecraft 26.60 прекратит входы через RakNet, поэтому игроки Bedrock на 26.60 могут не зайти через Krak, пока Geyser их не поддержит.
Docker
Запускай контейнер игрового сервера с сетью хоста (--network host), чтобы Krak Server, установленный на хосте, видел его обнаружение в LAN и его порты.
Настройки
Krak Server читает /etc/krak-server/config.json на Linux и %ProgramData%\Krak Server\config.json на Windows. Каждый ключ необязателен, неизвестные ключи отклоняются. Проверь файл командой krak-server config check и перезапусти службу после изменения.
Обновления
Krak Server проверяет подписанные обновления каждые 6 часов и устанавливает их сам: в окне обновления или как только никто не играет либо обновление обязательно. Хостящийся мир перезапускается, и игроки заходят снова из списка LAN. В приложении кнопка «Обновить сейчас» устанавливает обновление сразу.
В Linux служба устанавливает обновление при перезапуске, за несколько секунд. В Windows его в течение 15 минут устанавливает запланированное задание Krak Server\Apply update: оно работает от имени SYSTEM, останавливает службу, заменяет программу, снова запускает её и проверяет, что новая версия работает. Если новая версия не запускается, возвращается предыдущая. krak-server status показывает ожидающее обновление и когда задание запускалось в последний раз.
Чтобы установить обновление сразу в Linux:
sudo krak-server update
В Windows, в PowerShell от имени администратора (с полным путём это работает в любом окне):
& "C:\Program Files\Krak Server\krak-server.exe" update
Команда установки, выполненная ещё раз, тоже обновляет Krak Server. Она сохраняет подключение и настройки и заново создаёт задание обновления Windows, например после установки с --no-auto-update.
Состояние и журналы
krak-server status показывает, к чьему аккаунту подключён сервер, код подключения, пока он ждёт, соединение, каждый хостящийся мир и его игроков. Журналы на Linux в системном журнале:
sudo krak-server status
journalctl -u krak-server -f
В Windows они в %ProgramData%\Krak Server\logs. Журналы никогда не содержат токенов, ключей или адресов игроков.
Удалить сервер
В приложении: открой сервер («Мои миры»), его меню, «Убрать сервер». Сервер сразу перестаёт хостить и больше не может войти. Потом он сам показывает новый код подключения, для этого аккаунта или другого.
На машине: sudo krak-server unpair снимает подключение; sudo krak-server uninstall удаляет службу, а с --purge ещё и её настройки и данные.
Смена или сброс пароля, выход на всех устройствах и бан тоже отключают все серверы аккаунта.
Если что-то не работает
Код устарел
Код действует 10 минут. Сервер сам покажет новый: снова выполни krak-server status.
Неверное время (clock skew)
Krak Server входит со временем машины. Включи синхронизацию времени: timedatectl set-ntp true на Linux, службу времени Windows на Windows.
Игровой сервер не найден
Сначала запусти игровой сервер и проверь, что он отвечает на машине (для Bedrock: enable-lan-visibility=true). Потом нажми «Сканировать снова» в приложении.
Порт не разрешён
Игровой сервер работает на порту вне allow. Добавь порт в allow в файле настроек на машине и перезапусти Krak Server.
Игрокам отказывают
Проверь online-mode и allow-list в server.properties. Состояние сервера в приложении показывает отказы и их причину.
Игроки Bedrock видят «Please log into Xbox»
Это Geyser не пускает игроков, которые приходят через Krak. Выставь validate-bedrock-login: false в config.yml Geyser и перезапусти сервер (см. «Geyser» выше). Приложение не может показать этот отказ.
krak-server.exe не распознан
Krak Server добавляет свою папку в PATH при установке: открой новый терминал. Или запусти его с полным путём: "C:\Program Files\Krak Server\krak-server.exe" status (в PowerShell поставь & впереди). Устанавливал его до 0.8.6? Выполни команду установки ещё раз.
Никто не может зайти на второй сервер Bedrock
На одной машине работают два сервера Bedrock, и видимость в LAN (UDP-порт 7551) у другого. Начиная с Minecraft 1.26.52 сервер Bedrock пускает игроков Krak только через видимость в LAN, поэтому приложение показывает этот сервер остановленным. Делись одним сервером Bedrock на машину: останови другой и перезапусти этот или включи на этом RakNet.
Приложение пишет, что другой мир уже хостится
Аккаунт хостит один мир одновременно, с Krak Plus и без него. Пока мир работает на твоём телефоне, ПК или другом Krak Server, этот сервер ждёт и сам запускается через несколько секунд после того, как тот мир остановится. Чтобы переключиться, останови другой мир (приложение предлагает «Остановить его») или выключи в приложении хостинг мира этого сервера.
Установка пишет, что сервер уже подключён
Krak Server остаётся подключённым к аккаунту, который подтвердил его код, и тогда, когда команда установки запускается снова. Чтобы передать сервер другому аккаунту, его владелец убирает сервер в приложении («Мои миры» или удалённое управление, «Убрать сервер»): тогда сервер сам показывает новый код подключения, его видно в krak-server status. Или на машине: sudo krak-server unpair (в Windows: krak-server.exe unpair в терминале администратора).
Обновление загружено, но не установлено
В Windows обновления устанавливает запланированное задание, но Krak Server до 0.8.9.1 никогда его не просил, поэтому сервер на Windows оставался на версии, с которой его установили. Установи обновление один раз в PowerShell от имени администратора: & "C:\Program Files\Krak Server\krak-server.exe" update (или выполни команду установки ещё раз); дальше обновления будут устанавливаться сами. Если обновление ждёт больше 30 минут, krak-server status пишет почему и какая команда его установит. В Linux: sudo krak-server update.
Krak Server остановлен (NOT RUNNING)
Запусти его: в PowerShell от имени администратора sc.exe start KrakServer (просто sc в PowerShell означает другую команду), в Linux sudo systemctl start krak-server. Через минуту krak-server status должен показать online. Если он снова останавливается, причина видна в журнале: %ProgramData%\Krak Server\logs в Windows, journalctl -u krak-server в Linux. Начиная с 0.8.9.1, если новая версия после обновления не запускается, предыдущая возвращается сама.
Minecraft является товарным знаком Mojang Synergies AB. Krak Multiplayer не является официальным продуктом Minecraft, не одобрен и не связан с Mojang или Microsoft.