Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе

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


После небольшого спора, выбор игры пал на Майнкрафт. Почему на него? Потому что "почему бы и не да?". Игруля простая, возможностей много, потянет даже подоконник... Но сидеть на серверах с лозунгом "Слышь, купи донат!" и не самыми дружелюбными игроками нам не особо хотелось, а потому было решено поднимать свой приватный сервачок для игры.


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


- Доступность 24/7 (за исключением аварийных ситуаций)

- Безопасность для игроков

- Возможность откатить миры

- Относительная дешевизна, в идеале - бесплатно

- Разнообразие и плюшки


Сказано - сделано. Я - админ, а потому ни одна электроника, даже старая или частично сломанная, у меня дома не выбрасывается, а лежит и дожидается своего часа. После копания в глубинах шкафа был найден ноутбук примерно 2017-2018 года на i3 восьмого поколения, планки памяти к нему, ссд и хард, а также проход в Нарнию, пачка сигарет, початая бухта витой пары и считавшийся утерянным магазин от страйкбольного привода. А вот дисплей от него не нашелся. Наверное, уехал в Нарнию...

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Собственно, вот такая вот штука стала нашим хостом, чтобы работать 24/7/365. i3-8130u, 32 гига оперативки, 120 ссд + терабайт хдд на салазках вместо дисковода. Роль бесперебойника играет батарея ноутбука, интернеты идут по кабелю 100 мбит/с от домашнего роутера, на который от провайдера приходит гигабит. В качестве операционки можно использовать винду или любой популярный дистрибутив линукса. Дабы долго не мучиться, вкатил на диск первую попавшуюся под руки систему - дебиан 10.


Впрочем, хост - это только полдела. Надо еще как-то выпустить его в интернеты. Для этого нужен как минимум белый адрес, а если хочется "как у крутых серверов" - еще и домен вдобавок.


Получить белый адрес можно у провайдера. Некоторые провайдеры дают один белый адрес бесплатно, некоторые требуют за это небольшую доплату порядка восьмидесяти рублей (тридцать гривен) в месяц. Мне повезло, мой провайдер дает один адрес бесплатно и без лишних вопросов. Звонок, заявка на белый адрес, через час перезапускаешь роутер - и он ловит настройку с белым адресом. Выход в интернеты готов.


Теперь нужно было открыть порты для доступа "из мира". Серверу был выдан статичный адрес внутри локальной сети роутера (192.168.х.х), оставалось научить роутер понимать, что запросы майнкрафта приходят не куда-то, а на этот адрес. На почти любом роутере есть такая штука, как порт-форвардинг. Называться эта вкладка может "переадресация", "виртуальные серверы", "виртуальные сервисы" и все такое. Добавляем порты, необходимые для игры. В нашем случае, поскольку играть мы собирались в майнкрафт, нужно было открыть миру порт 25565, поскольку именно на него приходят запросы от игроков

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Кроме того, дабы не заморачиваться с проблемой связи, я открыл порт 24454, который был нам нужен для работы мода на голосовой чат.


Дальше, дабы не запоминать много цифр, да и просто из соображений удобства и безопасности, было решено прикрутить домен. Регистрировать домен в дорогой зоне типа .сом или .org было бы расточительством, так что нам на помощь пришла бесплатная доменная зона pp.ua. Домен эти ребята дают бесплатно, максимум, за что придется заплатить - за аренду DNS-сервера у регистратора. Меня устроил регистратор NIC.UA, поскольку эти ребята давали DNS-сервер для зоны pp.ua бесплатно и имели автоматическое продление регистрации каждый год.


Регистрируемся у них (эл.почта и пароль), делаем заказ на домен и dns-server. В кабинете, в разделе "Серверы имен" привязываем домен к белому адресу, который мы получили у провайдера.

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

В общем и целом, все. По желанию, можно еще ко всему этому делу прикрутить SSL-сертификаты для пущей безопасности, что мы позже и сделали, бесплатно заказав их на Let'sEncrypt.


Теперь, когда все было готово, можно было заниматься софтом для самого сервера. Стандартный сервер, который можно скачать бесплатно с сайта mojang, не устраивал - слишком мало возможностей для модификации, оптимизация оставляет желать лучшего, кушает уж больно много ресурсов. Поэтому начали выбирать кастомное ядро для сервера. Остановились, по итогу, на Paper. Качается с сайта papermc.io


Почему выбрали его?


- быстро

- удобно

- много-много плагинов

- нормальная документация

- поддержка новых версий

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Качаем пакет, читаем инструкцию, материмся, повторяем все по пунктам. Устанавливаем Java 20, устанавливаем сам Paper. Полчаса работы - и серверный софт настроен. В принципе, уже на этом этапе можно было спокойно играть, но шило в одном месте потребовало сделать все не "на отъебись", а нормально. Я начал работу над проектом в 7 вечера. Пока договорился с провайдером, пока сделал все настройки по железу и привязал адрес к домену, время было уже 2 часа ночи. Спать было бессмысленно, впереди были выходные, так что я решил приговорить вторую чашку кофе и продолжить работу.


Какие плагины были нам нужны?


1. Плагин регистрации и входа.

Эта фича нужна была для отсеивания потенциальных ботоводов и любителей зайти на другой аккаунт, сменив имя в лаунчере. Идеальный вариант - OpenLogin, работает "из коробки". Поставил - и пользуйся. Максимум что - настрой время, отведенное на логин, по умолчанию стоит 30 секунд, что маловато.


2. Плагин античит.

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


3. Плагины миров и режимов.

Конечно, выживание - это интересный режим, но он очень быстро надоедает, так что, дабы устроить разнообразие, мы вкатили плагин BentoBox с расширениями Skyblock и OneBlock. Просто во имя разнообразия.


Чтобы эта свистопляска работала, мы вкатили плагины Multiverse-core и Multiverse-portals. В дальнейшем пригодились и для других моментов типа создания тестового мира. Чтобы не было мучительно больно  в случае ошибок - прикрутили к серверу еще и плагин бэкапов ServerBackup


4. Плагины правки, команд и защиты мира.

Удобство постройки, разметки, очистки местности, удобство в работе с сервером, поддержка телепортов, поддержка удобных команд и защита от потенциальных неадекватов с помощью регионов. Связка WorldEdit + WorldGuard + EssentialsX


5. Мелкие удобства.

Для разнообразия и удобства, были наскоро прикручены и другие плагины: сидение на ступеньках и поверхностях, лежка, добыча спавнеров, кастомные зачарования, голограммы, невидимые рамки, декоративные головы... Суммарно примерно десяток плагинов, часть из которых еще только ждет своего применения в будущих обновах сервера


Поскольку делал я это все для друзей и подписчиков из телеграма, было решено не заморачиваться и назвать сервер по имени группы - "Сервер Творческого Цеха Малкорана". Ну, или просто Сервер "Кафетерий". Логотип мне помогла нарисовать моя знакомая, набросав его в фотошопе буквально за 10 минут.

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Дальше пришлось трудиться совместными усилиями друзей и подписчиков, организовывая карту сервера. Результаты наших скромных трудов на скринах ниже:


Точка спавна:

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Фермы:

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Храм (да, у нас в группе есть что-то типа религии, вера в Вульпес, древнейшую лису)

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост
Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

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

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

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

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Мир Края тоже не остался без внимания. Правда, выдерживая традицию, мы прикрутили в качестве спавна в Краю космическую станцию.

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Ну, и несколько общих видов для масштаба:


Зона мастерских (еще на этапе строительства)

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост
Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Зона порта и порталов

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

Отдельное поселение для жителей

Как мы поднимали игровой сервер на старом ноутбуке с бюджетом в две чашки кофе Сервер, Minecraft, Онлайн-игры, Компьютерные игры, Игры, Системное администрирование, Настройка, Ноутбук, Дешево, Своими руками, Мат, Длиннопост

На все - про все у нас ушло:


- 1 старый ноут

- 120 рублей (50 гривен) на две чашки не самого лучшего кофе

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


Оценить эту красоту можно по адресу

ficmalkoran.pp.ua:25565

Поддерживается и пиратка, и лицензия. Версия - 1.19.2. но ограниченно поддерживаются и более ранние версии.