Создание сети серверов Minecraft с помощью BungeeCord в Debian 8, Debian 9 или CentOS 7

Что вам нужно

  • Vultr VPS с не менее 1 ГБ оперативной памяти.
  • Доступ по SSH (с root/ administrativeпривилегиями).

Шаг 1: Установка BungeeCord

Прежде всего, нам нужно установить Java, чтобы это работало. В зависимости от того, используете ли вы операционную систему на основе Debian или CentOS, команды будут немного отличаться для каждой операционной системы. Каждая команда будет отмечать операционную систему, которая должна ее использовать. Если все CentOS 7, Debian 8 и Debian 9 поддерживают его, никакой специальной маркировки отображаться не будет.

Операционная система: CentOS 7

yum install java-1.7.0-openjdk-devel screen -y

Операционная система: Debian 8 и Debian 9

apt-get update
apt-get install openjdk-7-jdk screen -y

Далее вам нужно создать отдельного пользователя для запуска сервера. Хотя это необязательно, настоятельно рекомендуется никогда не размещать общедоступные системы в качестве rootпользователя. Это открывает ваш VPS для эксплуатации, и это может привести к прекращению работы вашего сервера здесь, в Vultr, если он будет использован в незаконных целях, даже если он не вызван вами.

CURRENT_USER='bungeemc'
useradd $CURRENT_USER -m -d /home/bungee

Не стесняйтесь сменить имя пользователя bungeemc, хотя это будет пользователь, используемый на протяжении всей статьи.

Затем войдите в систему как пользователь.

su $CURRENT_USER

Теперь создайте папку для сервера BungeeCord.

mkdir ~/bungeeServer
cd ~/bungeeServer

Загрузите исполняемый файл сервера.

wget http://ci.md-5.net/job/BungeeCord/lastSuccessfulBuild/artifact/bootstrap/target/BungeeCord.jar

Давайте запустим это в первый раз.

java -Xms256M -Xmx512M -jar BungeeCord.jar

Как правило, для команды, показанной выше, вы должны оставить по крайней мере 128 МБ свободной памяти, чтобы система могла работать без сбоев. В противном случае вы можете столкнуться с проблемами позже, так как программа-убийца из-за недостатка памяти операционной системы убьет ваш сервер, когда памяти станет мало.

В этот момент вы должны нажать CTRL+Cдля выхода из командной строки сервера. Все необходимые файлы созданы, поэтому мы можем приступить к настройке.

Шаг 2: Настройка BungeeCord

В этой статье мы добавим только один сервер Minecraft для лобби за прокси-сервером BungeeCord. Далее в статье будет дана дополнительная информация о добавлении дополнительных серверов на дополнительных Vultr-серверах Vultr или в текущей системе.

Используя ваш любимый текстовый редактор, откройте файл с именем config.yml.

Внимание: синтаксис файла YAML очень важен. Ява очень требовательна к расстоянию .

Добавьте себя в качестве администратора. Измените md_5свое имя пользователя Minecraft. Для добавления дополнительных администраторов необходимо сначала поставить два пробела, написать имя пользователя, добавить двоеточие, перейти к следующей строке, добавить еще два пробела и - adminфлаг.

В конце все должно выглядеть так.

groups:
 myMCUsername:
 - admin
 extraAdmin:
 - admin

Затем измените ip_forward: falseна ip_forward: true. Это позволит любым целевым серверам просматривать IP-адрес клиента, что позволяет выдавать запреты на основе IP.

Перейти к строке с player_limit. Измените значение по умолчанию с 1количества слотов. Если это значение установлено -1, неограниченное количество игроков может присоединиться.

Вот как listenersдолжен выглядеть ваш раздел.

listeners:
- max_players: 1000
  priorities:
  - lobby
  proxy_protocol: false
  host: 0.0.0.0:25565
  tab_size: 60
  force_default_server: false
  bind_local_address: true
  ping_passthrough: false
  tab_list: GLOBAL_PING
  motd: '&lMy first BungeeCord server'
  query_enabled: false
  query_port: 25577

Измените содержимое одинарных кавычек после, motd:чтобы задать описание вашего сервера (то, что игрок увидит при первом взгляде на сервер в клиенте.) Убедитесь, что строка в listenersблоке, который начинается с, host: 0.0.0.0содержит порт 25565, чтобы позволить пользователям подключаться без указав порт.

Последнее, что нам нужно сделать для BungeeCord, - это ввести запись для нашего лобби (игроки сервера по умолчанию присоединяются.) Сейчас мы будем использовать запись по умолчанию, поскольку она соответствует нашим потребностям. Измените motd на желаемое описание сервера, и в конце оно должно выглядеть следующим образом.

servers:
  lobby:
    address: localhost:25567
    restricted: false
    motd: 'My lobby server'

Сохраните и закройте файл.

Теперь давайте создадим лобби-сервер. На Vultr есть много статей о серверах Minecraft, но рекомендуется выбрать ту, которая включает в себя либо Spigot, либо CraftBukkit. Следуйте части «Загрузите и используйте BuiltTools» в статье « Настройка Spigot в Ubuntu ». Остановитесь, когда дойдете до раздела «Необязательно: Запустите в фоне» Не забудьте правильно установить пределы памяти для сервера SpigotMC и принять лицензионное соглашение.

Необходимо внести одно изменение: включить автономный режим для целевого сервера. Это делается открытием server.propertiesи изменением online-mode=trueна false. Мы обсудим это в разделе « Меры безопасности ».

На этом этапе у вас должен быть jarfile SpigotMC.

Шаг 3. Запустите сервер и сделайте его постоянным

Первое, что мы сделаем, это создадим скрипт, который запустит оба сервера.

Скопируйте сценарий, созданный в статье «Настройка Spigot», в новый файл.

cp ~/server/start.sh ~/bungeeServer/start.sh

Изменить ~/bungeeServer/start.shи изменить spigot.jarна BungeeCord.jar. После изменения значений памяти на нужный набор сохраните и выйдите.

Обязательно разрешите выполнение сценария.

chmod +x ~/bungeeServer/start.sh

Есть еще два сценария для создания, и следующий будет в ~/startAll.sh. Это позволит нам запустить каждый сервер и запустить его в фоновом режиме.

Содержание ~/startAll.sh.

#!/bin/bash
for line in $(find ~ -name "start*"); do
        echo "Starting $line..."
        serverID=$(($serverID + 1))
        screen -dmS "server-$serverID" bash $line
done

Это автоматически выполнит стартовые скрипты в каталоге /home/bungeeServer/.

Последний сценарий для создания будет в ~/stopAll.sh, и содержание должно быть этим.

#!/bin/bash
cd /var/run/screen/S-$USER/
for f in *; do
    screen -S $f -X kill
done

Имейте в виду, что это не спасет миры на вашем сервере, пожалуйста, сделайте это заранее.

Добавление дополнительного сервера

Каждый раз, когда вы хотите добавить новый сервер в конфигурацию Bungee, вам нужно будет открыть config.ymlи добавить следующую запись.

  serverName:
    address: address.of.minecraft.server:portNumber
    restricted: false
    motd: 'New server description'

Изменение ограничено, trueесли вы хотите ограничить сервер администратором. По завершении сохраните и перезапустите сервер BungeeCord.

Меры безопасности

В текущей конфигурации автономный режим (также известный как взломанные пользователи) может напрямую подключаться к целевым серверам. Существует множество плагинов, которые блокируют всех игроков, которые не присоединяются к прокси, одним из которых является OnlyProxyJoin .

В связи с тем, как это настроено, мы можем просто открыть сервер лобби server.propertiesи изменить прослушиваемый IP-адрес на 127.0.0.1. Это предотвратит прямое подключение всех пользователей, что приведет к проверке прокси всех пользователей.

Вывод

В этой статье мы настроим небольшую сеть Bungee. Он расширяется и позволяет владельцам серверов создавать множество взаимосвязанных серверов и игровых режимов.

Дополнительная информация доступна в документации BungeeCord .

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше