Създаване на мрежа от сървъри на Minecraft с BungeeCord на Debian 8, Debian 9 или CentOS 7

Това, което ще ви трябва

  • Vultr VPS с поне 1 GB RAM.
  • 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 MB свободна RAM, за да позволите на системата да работи гладко. В противен случай може да срещнете проблеми по-късно, тъй като убиецът на приложения за ниска памет на операционната система ще убие вашия сървър, когато паметта свърши.

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

Стъпка 2: Конфигуриране на BungeeCord

За тази статия ще добавим само един Minecraft сървър за лобито зад проксито на BungeeCord. По-нататък в статията ще бъде дадена допълнителна информация за добавяне на допълнителни сървъри на допълнителни Vultr VPS сървъри или на текущата система.

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

Внимание: Синтаксисът на YAML файл е много важен. Java е много придирчив по отношение на разстоянието .

Добавете себе си като администратор. Променете 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'

Запазете и затворете файла.

Сега нека създадем лоби сървъра. Има много статии за сървъри на Minecraft на Vultr, но се препоръчва да изберете такава, която включва Spigot или CraftBukkit. Следвайте частта "Изтегляне и използване на BuiltTools" в статията " Настройка на Spigot в Ubuntu ". Спрете, когато стигнете до секцията „По избор: Изпълнявайте във фонов режим“. Не забравяйте да зададете правилно ограниченията на паметта за сървъра SpigotMC и да приемете EULA.

Има една промяна, която трябва да направите: активиране на офлайн режим за целевия сървър. Това става чрез отваряне server.propertiesи промяна online-mode=trueна false. Ще обсъдим това в раздела Мерки за сигурност .

В този момент трябва да имате SpigotMC jarfile.

Стъпка 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 .

Оставете коментар

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

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

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

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

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

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

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече