Создание сети серверов 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 .



Leave a Comment

Как установить Anchor CMS на CentOS 7 LAMP VPS

Как установить Anchor CMS на CentOS 7 LAMP VPS

Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.

Как обновить CentOS 7, Ubuntu 16.04 и Debian 8

Как обновить CentOS 7, Ubuntu 16.04 и Debian 8

При настройке нового сервера Linux рекомендуется обновить ядро ​​системы и другие пакеты до последней стабильной версии. В этой статье

Как установить Backdrop CMS 1.8.0 на CentOS 7 LAMP VPS

Как установить Backdrop CMS 1.8.0 на CentOS 7 LAMP VPS

Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам

Настройте Magento на CentOS 6

Настройте Magento на CentOS 6

Если вы хотите разместить свой инвентарь в Интернете или просто магазин технических аксессуаров, Magento - отличное решение для электронной коммерции в Интернете. Это статья

Как установить AirSonic на CentOS 7

Как установить AirSonic на CentOS 7

Используете другую систему? AirSonic - это бесплатный и потоковый сервер с открытым исходным кодом. В этом уроке я проведу вас через процесс развертывания

Как установить OrangeScrum на CentOS 7

Как установить OrangeScrum на CentOS 7

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

Как установить и настроить OrientDB Community Edition для CentOS 7

Как установить и настроить OrientDB Community Edition для CentOS 7

OrientDB - это мультимодельная СУБД NoSQL с открытым исходным кодом нового поколения. Благодаря поддержке нескольких моделей данных OrientDB может обеспечить большую функциональность и гибкость в

Как установить Vtiger CRM с открытым исходным кодом на CentOS 7

Как установить Vtiger CRM с открытым исходным кодом на CentOS 7

Vtiger CRM - это популярное приложение для управления взаимоотношениями с клиентами, которое может помочь предприятиям увеличить продажи, обеспечить обслуживание клиентов и увеличить прибыль. я

Как установить MaraDNS на CentOS 6

Как установить MaraDNS на CentOS 6

MaraDNS - это легкая, но надежная программа с открытым исходным кодом для DNS-сервера. По сравнению с другими приложениями того же типа, такими как ISC BIND, PowerDNS и djbdns

Установка Netdata в CentOS 7

Установка Netdata в CentOS 7

Используете другую систему? Netdata - восходящая звезда в области мониторинга показателей системы в режиме реального времени. По сравнению с другими инструментами того же рода, Netdata:

Как установить Starbound Server в CentOS 7

Как установить Starbound Server в CentOS 7

Используете другую систему? В этом уроке я расскажу, как настроить сервер Starbound в CentOS 7. Предварительные условия Вы должны иметь эту игру на себе

Кластеризация RabbitMQ на CentOS 7

Кластеризация RabbitMQ на CentOS 7

RabbitMQ - это брокер сообщений с открытым исходным кодом, который поддерживает AMQP, STOMP и другие коммуникационные технологии. Широко используется в корпоративных приложениях

Настройка многопользовательского сервера SA-MP San Andreas на CentOS 6

Настройка многопользовательского сервера SA-MP San Andreas на CentOS 6

Добро пожаловать в другой учебник Vultr. Здесь вы узнаете, как установить и запустить сервер SAMP. Это руководство было написано для CentOS 6. Предварительные условия

Установите Elgg на CentOS 7

Установите Elgg на CentOS 7

Используете другую систему? Elgg - это движок социальных сетей с открытым исходным кодом, который позволяет создавать социальные среды, такие как социальные сети кампуса и

Установка Bolt CMS на CentOS 7

Установка Bolt CMS на CentOS 7

Bolt - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Bolts размещен на GitHub. Это руководство покажет вам, как установить Bolt CMS на новую CentOS 7 Vult.

Как установить и использовать Apache PredictionIO для машинного обучения в CentOS 7

Как установить и использовать Apache PredictionIO для машинного обучения в CentOS 7

Традиционные подходы к анализу данных невозможно использовать, когда наборы данных достигают определенного размера. Современная альтернатива анализу огромных массивов данных, которые я

Как установить Elasticsearch на экземпляре Vultr CentOS 7 Server

Как установить Elasticsearch на экземпляре Vultr CentOS 7 Server

Elasticsearch - популярный движок полнотекстового поиска и аналитики с открытым исходным кодом. Благодаря своей универсальности, масштабируемости и простоте использования, Elasticsearch широко используется

Развертывание Kubernetes с помощью Kubeadm на CentOS 7

Развертывание Kubernetes с помощью Kubeadm на CentOS 7

Обзор Эта статья призвана помочь вам в кратчайшие сроки запустить и запустить кластер Kubernetes с помощью kubeadm. Это руководство будет развертывать два сервера, на

Настройте Sails.js для разработки на CentOS 7

Настройте Sails.js для разработки на CentOS 7

Используете другую систему? Введение Sails.js - это инфраструктура MVC для Node.js, аналогичная Ruby on Rails. Это делает для разработки современных приложений вер

Как установить PufferPanel (бесплатная панель управления Minecraft) на CentOS 7

Как установить PufferPanel (бесплатная панель управления Minecraft) на CentOS 7

Введение В этом руководстве мы будем устанавливать PufferPanel на нашем Vultr VPS. PufferPanel - это бесплатная панель управления с открытым исходным кодом для управления вами.

Изучение 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. Прочтите эту статью, чтобы узнать больше