Защитите прокси и бэкенды
В сети каждый игрок должен заходить через прокси. Если порт бэкенд-сервера открыт в интернет, любой может зайти на него напрямую, мимо всех проверок прокси, а если бэкенд использует обычную передачу данных BungeeCord без BungeeGuard, ещё и под любым ником, в том числе под ником админа.
- Привяжите бэкенд-серверы к 127.0.0.1 или к частной сети либо закройте их порты в файрволе, чтобы до них мог достучаться только прокси.
- На Velocity с бэкендами 1.13+ используйте modern player info forwarding и пропишите тот же forwarding secret в конфиге каждого бэкенда на Paper. Для бэкендов 1.8–1.12 выберите режим передачи bungeeguard и поставьте плагин BungeeGuard.
- На BungeeCord включите
ip_forwardи поставьте BungeeGuard, чтобы бэкенд принимал только подключения с вашим токеном. - Оставьте online mode на прокси включённым, если только у вас не пиратский сервер с плагином авторизации.
Обновляйте сервер и плагины
Новые сборки Paper и Velocity регулярно закрывают эксплойты, в том числе такие, которые роняют сервер одним пакетом. Обновляйте серверное ПО и прокси и удаляйте плагины, которыми больше не пользуетесь: любой плагин запускает свой код с полным доступом.
Скачивайте плагины только с их собственных страниц: Hangar, Modrinth, SpigotMC или GitHub автора. Бэкдоры часто попадают на сервер именно через слитые копии платных плагинов.
Права и op
Не давайте op никому на публичном сервере. Поставьте плагин прав, например LuckPerms, и давайте каждой роли только то, что ей нужно.
Осторожнее с правами-масками вроде * или essentials.*. В них часто входят команды, которые выполняют команды консоли, выдают предметы или меняют права, так что тот, кто захватит аккаунт модератора, получит почти те же возможности, что и консоль.
Забирайте права у человека в тот же день, когда он уходит из команды.
Защитите аккаунты персонала
На сервере с online mode аккаунт персонала и есть аккаунт Microsoft, поэтому проследите, чтобы у персонала там были надёжный пароль и двухэтапная проверка.
На пиратском сервере аккаунт защищён только паролем плагина авторизации. Пароли персонала должны быть длинными и больше нигде не использоваться, а двухфакторный вход должен быть включён, если ваш плагин авторизации его поддерживает. Подробнее в статье о переборе паролей.
Время от времени смотрите, откуда заходят аккаунты персонала. Вход из новой страны или от нового провайдера даёт повод задать вопрос.
Закройте то, чем не пользуетесь
- RCON даёт полный доступ к консоли по сети. Оставьте
enable-rcon=false, если он вам не нужен, а если нужен, поставьте длинный пароль и разрешите в файрволе только свой адрес. - Выключите
enable-query, если он вам не нужен. - Порты панели, базы данных и SSH должны быть открыты только для тех адресов, которым они нужны.
Бэкапы
Храните бэкапы миров и данных плагинов вне машины, на которой стоит сервер, и время от времени проверяйте, что их можно восстановить. Бэкап на том же диске не поможет, если машина выйдет из строя или кто-то захватит аккаунт хостинга.
DDoS, боты и VPN
DDoS-атака заливает сеть трафиком ещё до того, как что-либо дойдёт до Minecraft, поэтому никакой плагин её не остановит. Это задача хостинга или сервиса защиты сети. Подробнее в статье о том, что может плагин против DDoS и чего не может.
Бот-атаки, игроки с VPN и обход банов приходят как настоящие входы, и останавливают их на прокси: проверкой адресов, например Kordon, а ботов с чистых адресов плагином проверки, например Sonar. Читайте также: как заблокировать VPN и сравнение антибот-плагинов.
Чеклист
- Бэкенды доступны только с прокси, IP forwarding с секретом или BungeeGuard.
- Сервер, прокси и плагины обновлены, лишние плагины удалены, ничего из слитых источников.
- На публичном сервере ни у кого нет op, у ролей только те права, которые им нужны.
- У аккаунтов персонала надёжные уникальные пароли и двухэтапная проверка.
- RCON и query выключены или открыты только для вашего адреса.
- Бэкапы хранятся вне машины, восстановление проверено.
- От DDoS защищает хостинг, от ботов и VPN защита на прокси.