Защита сервера BungeeCord от внешнего подключения (IPtables)
- Опубликовано 26-05-2021, 13:36 Категория Туториалы / Гайды Просмотров 4 325
Описание:
Всем привет! Сразу предупрежу, в этой статье много букв, но оно того стоит, поверьте. А именно как на дедике юзать брандмауэр, ибо при установке BungeeCord’a на выделенный сервер — встаёт вопрос, как защитить серв от несанкционированного доступа на сервер. То есть нужно работать в первую очередь с портами, и закрывать к неиспользуемым портам доступ из вне.
Если вы используете ОС Linux для своего сервера (что всегда рекомендуется да и вообще принято в серверной среде), то уже пол дела можно сказать сделано. Нужно использовать в этом случае iptables.
Iptables — это небольшая системная утилита командной строки для ОС Linux позволяющая управлять фаерволом. В принципе настроить защиту межсетевого экрана очень легко, и Вы должны просто следовать инструкции ниже.
ВАЖНО: У Iptables есть одна особенность, для использования утилиты Iptables требуются привилегии суперпользователя. То есть у Вас должен быть root права на сервере.
Начнём с самых азов. Подключаетесь к Вашему выделенному серверу любым доступным Вам способом.
Установка iptables:
Установить Iptables на сервер очень просто. Я добавляю вам несколько команд, выбирайте для себя команду, которая подходит к вашему дистрибутиву Linux.
Дистрибутив Debian и Ubuntu:
sudo apt-get install iptables
Дистрибутив RedHat/CentOS:
sudo yum install iptables
Брандмауэр с iptables:
Вот здесь уже следите внимательно за командами, здесь нужно менять IP адрес и порт
Сохранение правил iptables:
Теперь необходимо сделать так, чтобы все правила для портов и IP адресов сохранились, и вступали всегда при перезагрузке сервера, то есть нужно всё сохранить. Для этого используем команды:
Для дистрибутива Debian и Ubuntu:
apt-get install iptables-persistent
Для дистрибутива CentOS 7 и RHEL:
Для дистрибутива RedHat и CentOS:
Как сбросить настройки утилиты iptables?
Если вы накосячили или что то пошло не так, вы запутались или просто захотели подключиться к серверу, то можете в любой момент сбросить все настройки iptables. Для этого вводим команду:
Если у вас вообще ничего не получается. То просто установите плагины для этих портов. Но спешу Вас предупредить — плагины никогда не будут лучше системного брандмауэра или даже наоборот.
Список плагинов, которые можно использовать в замен стандартного брандмауэра:
Но ещё раз говорю — эти плагины легко обойти.
Как и зачем закрывать порты на серверах с BungeeCord: правильная защита от взломов
Зачем закрывать порты
При использовании BungeeCord-сборок на вашем сервере запущено несколько игровых серверов: сам BungeeCord и серверы Spigot (обычно это Выживание, Мини-игры и так далее). Сама система работает так — игрок заходит на BungeeCord и его перекидывает на нужный сервер Spigot, в зависимости от настроек. И перед тем, как попасть на основной сервер, игрок проходит авторизацию (плагин для BungeeCord или плагин на отдельном Spigot сервере для авторизации).
Если все серверы Spigot доступны для подключения любому человеку извне, а не только локально через BungeeCord, то злоумышленник может зайти напрямую на сервер выживания или мини-игры, минуя BungeeCord и авторизацию. Вот почему важно закрыть порты Spigot серверов от внешнего доступа, чтобы попасть на них можно было только «сквозь» прокси-сервер BungeeCord
Как закрыть порты
Эта инструкция написана для операционных систем Debian и Ubuntu. На других операционных системах семейства Linux могут быть незначительные отличия.
Важно! Эта инструкция требует наличия SSH root доступа. Если у Вас есть только панель управления майнкрафт серверами, обратитесь в поддержку для закрытия портов.
Для закрытия портов будем использовать системную утилиту iptables.
Правила iptables считываются последовательно сверху вниз, поэтому
1. Разрешаем доступ для локальных подключений к любому порту.
Это важно, потому что BungeeCord должен иметь возможность подключаться к серверам Spigot.
. ВМЕСТО 0.0.0.0 ПОДСТАВЬТЕ IP ВАШЕГО СЕРВЕРА (без порта). НАПРИМЕР: 216.58.215.46
ПРИМЕЧАНИЕ:
Если Вы используете несколько VDS или выделенных серверов для своего проекта, разрешите доступ для каждого сервера.
Например:
2. Закрываем доступ к портам из всех мест, кроме разрешенных
и так далее…
ПРИМЕЧАНИЕ:
Если Вы хотите закрыть сразу диапазон портов, вы можете указать его в виде 25566:25590
Например:
ПРИМЕЧАНИЕ:
Закрывать порты самого BungeeCord не нужно, он должен быть доступен из любого места (а не только из разрешенных), чтобы игроки могли подключиться
3. Сохраняем правила
Это очень важный пункт. Если не сохранить правила, они сбросятся при перезапуске VDS или выделенного сервера.
Если Вы закрываете порты впервые и еще не пользовались утилитой iptables-persistent, ее нужно установить:
При установке Вас спросят, сохранить-ли правила iptables. Оба раза отвечайте Yes.
Если утилита iptables-persistent уже установлена, то для сохранения правил воспользуйтесь командой:
И опять-таки оба раза отвечайте Yes.
Дополнительная информация
Удаление ненужных правил
Для начала необходимо получить список правил с номерами, для этого воспользуйтесь командой
Для удаления правила воспользуйтесь командой
вместо N подставьте номер нужного правила.
Например:
Защита сервера BungeeCord от внешнего подключения (IPtables)
Всем привет! Сразу предупрежу, в этой статье много букв, но оно того стоит, поверьте. А именно как на дедике юзать брандмауэр, ибо при установке BungeeCord’a на выделенный сервер — встаёт вопрос, как защитить серв от несанкционированного доступа на сервер. То есть нужно работать в первую очередь с портами, и закрывать к неиспользуемым портам доступ из вне.
Если вы используете ОС Linux для своего сервера (что всегда рекомендуется да и вообще принято в серверной среде), то уже пол дела можно сказать сделано. Нужно использовать в этом случае iptables.
Iptables — это небольшая системная утилита командной строки для ОС Linux позволяющая управлять фаерволом. В принципе настроить защиту межсетевого экрана очень легко, и Вы должны просто следовать инструкции ниже.
Вы просто заменяете значения $BUNGEE_IP на IP и переменную $SERVER_PORT на порт вашего сервера. Если Ваш Майнкрафт сервер находится на одной машине (сервере) вместе с BungeeCord то IP адрес сервера можете писать 127.0.0.1
ВАЖНО: У Iptables есть одна особенность, для использования утилиты Iptables требуются привилегии суперпользователя. То есть у Вас должен быть root права на сервере.
Начнём с самых азов. Подключаетесь к Вашему выделенному серверу любым доступным Вам способом.
1. Установка iptables
Установить Iptables на сервер очень просто. Я добавляю вам несколько команд, выбирайте для себя команду, которая подходит к вашему дистрибутиву Linux.
Дистрибутив Debian и Ubuntu:
Дистрибутив RedHat/CentOS
2. Брандмауэр с iptables
Вот здесь уже следите внимательно за командами, здесь нужно менять IP адрес и порт
В качестве альтернативы, если у вас запущено несколько серверов Minecraft вместо написания правила для каждого сервера и его порта, вы можете использовать следующую команду, чтобы добавить диапазон портов, который будет заблокирован брандмауэром. Замените $START_PORT и $END_PORT на желаемый диапазон портов, не забывайте двоеточие между ними.
3. Сохранение правил iptables
Для дистрибутива Debian и Ubuntu
Для дистрибутива CentOS 7 и RHEL
Для дистрибутива RedHat и CentOS
Как сбросить настройки утилиты iptables?
Если у вас вообще ничего не получается. То просто установите плагины для этих портов. Но спешу Вас предупредить — плагины никогда не будут лучше системного брандмауэра или даже наоборот.
Вот список плагинов, которые можно юзать в замен стандартного брандмауэра:
IPWhitelist
OnlyProxyJoin
Но ещё раз говорю — эти плагины легко обойти
9 087 
В этой статье я постараюсь рассказать, как создать буквенный IP сервера Майнкрафт. Это туториал создан для начинающих
Это небольшой туториал про первоначальную установку прокси ядра BungeeCord. В этой статье описаны самые минимальные
И всем привет! Сегодня я решил написать туториал как запустить сервер майнкрафт на VDS.
Как же уже достали супер пользователи сайта, которые пишут в комментариях как узнать IP сервера майнкрафт которые они
Статья для тех, кому надоели сухие гайды в стиле «введи эти команды по очереди и нажми enter». Давайте
Привет. Я создаю небольшие инструкции по серверу. В этом гайде я расскажу, как убрать надоедливые голограммы, которые
Основные команды для сервера Minecraft
Незаменимое средство для администрирования сервера Minecraft – это команды, благодаря которым мы можем конфигурировать игровой процесс, блокировать нарушителей и вносить различные корректировки. Под команды выделено отдельное консольное окно.
Консоль запускается с помощью кнопки «T» или символа «/» — он открывает окно ввода с указанным символом. Это позволяет сразу указать терминалу, что вводится не простой текст, а команда. Если исполняемая команда запускается через сервер, то в таком случае символ использовать не нужно. Также мы можем создать командный блок и вписать в него нужную функцию, а затем подключить к этому сигнал красного камня.
В сегодняшней статье мы рассмотрим набор команд, которые могут пригодиться каждому администратору и игроку Майнкрафт. Использовать их можно будет как в сетевой игре, так и в локальной сети, где подключена опция «Использование читов».
Команды для администратора сервера Майнкрафт
В нижеприведенных командах мы будем использовать ключевое слово «таргет» — оно обозначает выбранную цель (игрок, предмет и так далее).
clear [индекс объекта] [доп. параметры] — полностью очищает содержимое сумки выбранного юзера.
debug — активация/остановка режима отладки.
defaultgamemode — для каждого нового пользователя будет изменен режим игры: выживание/творчество/приключение.
difficulty — устанавливает сложность игры для всех юзеров, где 0 — мирно, 1 — легко, 2 — нормально, 3 — сложно.
enchant [уровень] — зачаровывает предмет в руках на указанный уровень.
gamemode [таргет] — указывает на юзера и изменяет его режим игры. Выживание (survival, s или 0), Творчество (creative, c или 1), Приключение (adventrure, a или 2).
gamerule [true/false] — изменение игровых правил, которые включают в себя следующее:
Таким образом, команда для изменения игровых правил принимает следующий вид: «gamerule keepInventory true» — в таком случае будет включена опция, благодаря которой все содержимое инвентаря будет сохранено после гибели персонажа.
give [количество] [доп. параметры] — присваивает пользователю выбранный предмет.
publish — активирует подключение по локальной сети.
say — введите данную команду, чтобы отправить сообщение розовым цветом.
spawnpoint [таргет] [x] [y] [z] — определяет точное местоположение в координатах, где будет установлен спавн выбранного пользователя.
time set — используйте для изменения времени, где 0 — рассвет, 6000 — полдень, 12000 — заката и 18000 — полночь.
time add — увеличивает время на выбранное значение.
toggledownfall — позволяет активировать и деактивировать осадки в игре. Если погода была солнечная, то она будет изменена на дождливую.
weather — изменяет погоду на некоторое время в секундах.
xp — приписывает пользователю выбранное количество опыта, от 0 до 5000. Также можно добавить сразу несколько уровней — для этого необходимо прописать L и ввести количество уровней. Для понижения левела используйте опцию L, например, 15L снизит уровень на 15 единиц.
ban [опишите, почему пользователь был заблокирован] — блокирует пользователя по нику.
ban-ip — блокирует пользователя по ip-адресу.
pardon — возвращает доступ пользователю, который был забанен.
pardon-ip — исключает IP-адрес, внесенный в черный список.
banlist [ips] — отображает список всех юзеров, которые были заблокированы на сервере.
op — определяет выбранному юзеру привилегии оператора.
deop — забирает у пользователя привилегии оператора.
kick [опишите причину] — используйте, чтобы исключить юзера из игрового процесса.
list — показывает онлайн всех юзеров на сервере.
save-all — сохраняет все измененные параметры на сервере.
save-on — активирует автосохранение всех изменений, внесенных на сервере.
save-off — отключает автосохранение изменений на сервере.
stop — прекращает работу сервера.
whitelist list — отображает список пользователей в whitelist.
whitelist — добавляет выбранного пользователя в белый список.
whitelist — активация/деактивация опции белого списка на сервере.
whitelist reload — перезагрузка whitelist.
Команды для игроков
Для отображения всех доступных команд на сервере Minecraft мы можем ввести в чат символ «/» и нажать на клавишу «Tab».
Общие команды
rules — отображает правила поведения на сервере.
spawn — возвращает вашего персонажа на спавн.
motd — предназначено для просмотра приветственного сообщения.
ignore — если вы хотите, чтобы выбранной пользователь не мог с вами общаться, воспользуйтесь данной командой.
near — отображает юзеров, находящихся рядом с вами.
afk — активация режима «Отсутствует».
depth — показывает положение персонажа относительно уровня моря.
getpos — показывает, где вы находитесь на координатной оси.
itemdb — отображает ID предмета в руке.
list; who; playerlist; online — список команд для просмотра онлайн-сервера.
r; reply — быстрый ответ на присланное ранее письмо.
time — позволяет узнать время сервера.
compass — указывает текущее направление.
call — отправляет запрос для телепортации к другому юзеру.
tpahere — отправляет запрос на телепортации к себе.
pvp-on — деактивирует защиту для новых пользователей.
rtp — телепортирует в случайное место.
warp — телепортирование на точку варпа.
warp list [страница] — список открытых варпов.
case — отображает список предметов, которые находятся в указанном кейсе.
case — отображает список предметов, которые находятся в кейсе из руки.
me — отправляет письмо в чат от третьего лица. Например, если написать me копает, то будет отображена фраза «Player копает».
seed — показывает зерно мира, где происходит игровой процесс.
Команды для настройки жилища
home — отправляет в свое жилище.
home set — устанавливает жилище в текущей позиции.
home delete — удаляет жилище вашего персонажа.
home — позволяет посетить жилище указанного пользователя Minecraft.
home point — позволяет указать компасу на ваше жилище.
home list — отображает список домов, доступных для посещения.
home ilist — отображает список пользователей, которые могут посетить ваше жилище.
home invite [имя пользователя] — приглашает пользователя в дом.
home uninvite [имя пользователя] — отменяет приглашение указанного пользователя.
home public — разрешает сделать жилище публичным.
home private — разрешает сделать жилище приватным.
Мощные игровые серверы для Minecraft от 3 руб./час
От 4 Гб ОЗУ, от 80 Гб на скоростном NVMe и стабильные 200 Мбит/сек
Приват территории
//wand — добавляет деревянный топор для выделения области.
/region claim — выделенная область сохраняется как регион с указанным именем.
//pos1; //pos2 — выделяет блок, на котором стоит пользователь.
//hpos1 — добавляет первую точку с учетом координат пользователя.
//hpos2 — добавляет вторую точку с учетом координат пользователя.
/region list — отображает список доступных регионов
/region addowner — присваивает пользователей к выбранному региону как владельцев. Для них доступны те же опции, как и для основателя области.
/region addmember — присваивает пользователей к выбранному региону как обычных участников. Возможности ограничены.
/region removeowner — исключает выбранных пользователей из владельцев указанной области.
/region removemember — исключает выбранных пользователей из указанной области.
//expand — увеличивает масштаб области в указанном направлении. Например, при вводе команды //expand 10 down, расширение пойдет на 10 кубов вниз. Существует несколько направлений: up, down, me.
//contract — уменьшает масштаб области в указанном направлении. Например: //contract 10 down — уменьшит выделение на 5 кубов сверху вниз. Используются направления, аналогичные предыдущей команде.
/region flag — установка флага выбранной области. Работает только в том случае, если у вашего персонажа есть к этому доступ, содержит команды для различных типов пользователей.
Флаги для простых пользователей
pvp — включает или отключает режим PVP;
use — включает или отключает использование механизмов и дверей;
chest-access — если хотите запретить использование сундуков, то используйте эту команду;
lava-flow — подключает или отключает растекание лавы;
water-flow — подключает или отключает растекание воды;
lighter — если хотите запретить использование зажигалки, то используйте эту команду.
Флаги для VIP-пользователей
ice-form — создает лед;
ice-melt — создает процесс таяние льда;
snow-fall — активирует снегопад;
leaf-decay — активирует листопад;
ghast-fireball — урон от гастов;
creeper-explosion — урон от крипперов.
Флаги для Premium-пользователей
mob-spawning — предназначена для управления спавном мобов;
deny-spawn — предназначена для управления спавном отдельных мобов;
mob-damage — настройка урона от мобов в регионе;
entry — определяет, разрешено ли входить в регион;
greeting — сообщение при входе в регион;
farewell — сообщение при выходе из региона;
notify-enter — отображает текстовое сообщение при входе в пользовательскую зону;
notify-leave — отображает текстовое сообщение при выходе из пользовательской зоны;
item-drop — позволяет пользователям выбрасывать вещи на территории;
lava-fire — открывает доступ к поджогу от лавы.
Флаги для Deluxe-пользователей
invincible — устанавливает бессмертие в регионе;
feed-max-hunger — указывает на то, до скольки увеличится голод;
feed-min-hunger — указывает на то, со скольки увеличится голод.
Возможные значения:
allow — true,
deny — false,
none — не задано.
Заключение
В ходе статьи мы разобрали основные команды для администраторов и пользователей игры Minecraft. Если вы администрируете свой сервер, то подойдите к использованию команд с умом – правильно настроенный сервер позволит вывести себя на высокий уровень. Если вы простой игрок, то внимательно изучайте дополнительные параметры к выбранным командам, чтобы впоследствии не возникало никаких проблем. Удачи!
Закрытые порты! Что делать, если серверов лобби не видно / не подключается?
Закрытые порты – это распространённая проблема, особенно для компьютерных игр. Бывает так, что любимая игра не работает из-за невозможности подключиться, например, к серверу. Или ваше лобби (хост/сервер) в игре никто не может найти. Тогда люди начинают заниматься поисками причины этого недоразумения там, где их нет. Часто проблема заключается не в интернет-соединении и даже не в несовместимости с программным обеспечением.
Как правило, проблема заключается в закрытых каналах для передачи данных, но, чтобы решить эту проблему, необходимо открыть порты. И начать, пожалуй, следует с IP-адреса ПК, поскольку он вам ещё пригодится, когда дело дойдёт до настройки портов в роутере.
Что значит «открыть порт», почему они вообще могут быть закрыты?
Канал передачи данных из внешней сети до вашего компьютера может быть заблокирован по трем причинам:
1) Брандмауэр / Антивирус
Может банально заблокировать приложению доступ в интернет по всем портам. Или в режиме сверхбезопасности по умолчанию блокировать любые данные из сети.
2) Маршрутизатор / Роутер
Дополнительный передатчик усложняет маршрут до компьютера, порой делая его сложным для игры / приложения.
Данные из внешней сети по определенному порту могут дойти до роутера, а тот может не понять, на какое именно устройство (по какому внутреннему IP) их дальше отправить.
3) Вирус / Кривая сборка Windows
Это спонтанные ошибки, наглухо заблокированные адреса, недостаток прав, некорректная работа встроенных в ОС сетевых служб и все такое.
Как бороться с каждой из трех возможных причин, читайте далее в статье, пользуясь пошаговыми инструкциями.
Где и как можно узнать свой IP-адрес?
Если роутер новый, а вы с ним ничего не делали, как его настроили, тогда IP-адрес можно посмотреть на устройстве (на дне или сзади), где заодно будет указан пароль вместе с логином для входа в настройки роутера.
Как узнать IP-адрес на Windows 10?
В случае с Win 10 нужно сделать следующее:
Существует и другой способ узнать IP-адрес на «десятке». Для этого нужно воспользоваться инструментом под названием «PowerShell»:
Несмотря на тот факт, что операционную систему Windows 7 больше не поддерживают, она всё ещё популярна среди уверенных пользователей PC. Поэтому инструкция определённо поможет, если вы тот самый консервативный человек:
Прелесть вышеописанного способа очевидна – не нужно ничего уметь. Достаточно знать, как кликать мышкой. Однако существует и другой способ, благодаря которому IP-адрес можно узнать быстрее, но он не подойдёт для рядовых пользователей ПК:
Также есть и другой способ, который больше всего по душе сетевым администраторам, из-за лишних деталей в графическом интерфейсе, где абсолютно также можно узнать IP-адреса своего модема:
Как проверить статус своих портов?
Перед тем как начнёте разбираться с портами, рекомендуем для начала ознакомиться с их статусом, иначе не узнаёте, какой порт – работает, а какой – нет. И, соответственно, не сможете включить или настроить их.
Проще всего проверить порты с помощью какого-нибудь онлайн-сервиса, где это делается в два клика, например, https://2ip.ru/check-port/ или https://2ip.ua/ua/services/ip-service/port-check, но можно воспользоваться и консолью, если нет желания куда-то переходить.
Как открыть порт через «Брандмауэр Windows»?
Брандмауэр защищает компьютер не только от вирусов, но и ещё от шпионских вредоносных программ, которые запросто могут попасть к вам через интернет-соединение. Кроме того, встроенный защитник умеет отслеживать не только исполняемые процессы, но и трафик, именно поэтому с его помощью можно в некоторых случаях разблокировать определённые порты для конкретных задач.
И обычно при первом запуске приложения/программы «Брандмауэр Windows» спрашивает можно ли запустить тот или иной процесс, где нужно выбрать вариант «Разрешить доступ», благодаря чему он не блокирует приложение, но если по каким-то причинам пропустили этот момент, придётся прибегнуть к нижеописанному способу:
По итогу вы создадите новое правило, которое открывает порт для выбранной игры. Кроме того, описанный выше способ стандартный, то есть он абсолютно идентичный для всех версий ОС Windows, начиная с Win 7 и заканчивая последней на данный момент Win 10.
Важно: дополнительный брандмауэр / сетевой экран / фаерволл может быть встроен в антивирус (ESET Node Smart Security Family / Kaspersky и т.д.). В таком случае следует зайти в его настройки и проверить, не блокирует ли данная навороченная защита конкретное приложение или порт.
Как открыть порт в настройках роутера?
Большинство современных игр и роутеров поддерживают опцию Universal Plug and Play (UPnP), которая создана для избавления от всех проблем с портами. Так что для автоматического «пробрасывания» портов обычно достаточно просто включить ее, поставив галочку в настройках маршрутизатора.
Если включение UPnP не помогает, значит нужно связать IP компьютера в локальной сети и нужные порты вручную. Этот процесс не занимает больше десяти минут, при этом часто помогает решить проблему закрытых портов. Рекомендуем воспользоваться нашими инструкциями:
Примечание: настройка производилась на оборудовании ASUS RT-N12 C1 с микропрограммой 3.0.0.4.260 (черный интерфейс).
Примечание: настройка производится на роутере D-link DIR 615 с белым интерфейсом новейшей микропрограммы 2.5.20.
Примечание: настройка производится на роутере TP-LINK TL-WR940N / TL-WR941ND с микропрограммой 3.13.31.
Примечание: настройка в примере производилась на роутере ZyXEL Keenetic с микропрограммой 2.0.
Что делать, если ничего не помогло?
В таком случае проблема лежит либо на вашей стороне, либо на стороне «любимого» интернет-провайдера. Как определить? Если проблема на вашей стороне, тогда это может быть связано:
Если в очередной раз ничего не помогло, тогда совершенно точно закрытые порты связаны либо с тарифом интернет-провайдера, либо со злыми вирусами:





