MAATRIX GAMES / Блог / Античит банит без причины: что делать

Античит банит без причины: что делать

MAATRIX GAMES

Рано или поздно к любому админу Rust-сервера прибегает игрок с криком "меня забанил ваш античит, а я не читер!" — и первая реакция обычно "у нас нет своего античита, это EAC". Это правда лишь наполовину: разбираться всё равно приходится тебе, потому что игрок стучится именно в твою личку, а не в поддержку Facepunch. Разберём, откуда берутся ложные баны EasyAntiCheat в Rust, что можно проверить самому и где заканчивается зона твоей ответственности как владельца сервера.

Сначала выясни: это EAC, серверный бан или вообще VAC

Прежде чем что-то делать, важно понять, какая именно система вынесла вердикт — от этого зависит, в твоей ли ты власти вообще что-то менять.

  • Бан EAC (EasyAntiCheat) — игрок видит сообщение в духе "You have been banned by EasyAntiCheat" при попытке подключения. Это решение принято на стороне инфраструктуры EAC/Facepunch, твой сервер тут вообще ни при чём — он просто не может пропустить клиента, которого EAC не авторизует.
  • Серверный бан — игрока забанил ты сам, модератор командой ban, либо плагин через Oxide/uMod (например BanSystem или встроенный список банов другого античит-плагина). Это полностью твоя зона — такой бан ты можешь снять в одну команду.
  • VAC — в чистом Rust не используется, но игроки иногда путают его с EAC из-за похожих сообщений об ошибке. Если видишь упоминание VAC применительно к Rust — скорее всего это недопонимание игрока, стоит переспросить точный текст сообщения.

Важный нюанс, который стоит сразу объяснить игроку: бан от EAC блокирует его не только на твоём сервере, а на всех серверах Rust с включённым server.secure true — то есть почти на всех публичных серверах. Это не локальная проблема твоего проекта, и решить её локально нельзя.

Три типичные причины ложного бана

Прежде чем писать "разберёмся" и разводить руками, полезно понимать, откуда чаще всего берутся ложные срабатывания — так проще и объяснить игроку, и решить, стоит ли вообще тратить время на разбор.

Нестабильное соединение. Скачки пинга, потеря пакетов, переключение Wi-Fi на мобильный интернет посреди сессии — всё это может создавать паттерны сетевого трафика, которые движок EAC интерпретирует как попытку манипуляции с игровым состоянием (что-то похожее по сигнатуре на speedhack или desync-инъекцию, хотя реальная причина — банальный роутинг у провайдера). Игроки на нестабильном мобильном интернете или через плохой VPN статистически попадают под такие срабатывания чаще остальных.

Устаревшие или конфликтующие драйверы видеокарты. EAC работает на уровне драйверов и проверяет целостность процесса и памяти игры. Бета-драйверы, кастомные сборки драйверов AMD/NVIDIA, недавно накатанное обновление без перезагрузки системы — всё это иногда триггерит проверки целостности, которые в норме реагируют на читы, инжектящие код в процесс.

Стороннее ПО на компьютере игрока. Самая частая причина на практике. Оверлеи (Discord, GeForce Experience, MSI Afterburner/RivaTuner, Razer Synapse), софт для записи экрана с инжектом в процесс, ReShade и другие визуальные твики, легитимные макросы для игровых мышей (даже если макрос никак не связан с Rust — например, назначен на другую игру, но софт всё равно резидентно висит в системе) — всё это использует те же техники внедрения кода в процесс, что и настоящие читы. EAC не читает намерения, он видит инжект DLL в память игры и реагирует одинаково что на чит, что на безобидный оверлей.

Честно: в подавляющем большинстве случаев причина ложного бана лежит на стороне клиента игрока, а не в настройках твоего сервера. Ты можешь держать идеальный конфиг Rust-сервера — это никак не защитит и не подставит игрока под такой бан, потому что решение принимает EAC на основе состояния его компьютера.

Поднять сервер Rust за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Что означает код причины EAC и где его искать

Когда EAC банит игрока, в сообщении об ошибке или в консоли сервера обычно фигурирует причина срабатывания — конкретная категория того, что было обнаружено (например, факт инжекта постороннего модуля в процесс, признак модификации памяти или другое отклонение от ожидаемого состояния клиента). Это не просто "бан без объяснений" — просто объяснение на техническом языке, который не всегда понятен игроку с первого взгляда.

Где смотреть на стороне сервера:

# консольный вывод Rust-сервера (или docker logs, если сервер в контейнере)
docker logs rust-server --tail 200 | grep -i eac

Если используешь Oxide/uMod, дополнительно загляни в папку oxide/logs — многие серверные плагины дублируют туда информацию о киках и банах, включая связанные с EAC события. Как устанавливать и настраивать сам Oxide, если ещё не разбирался — есть отдельная статья про Oxide и uMod.

Попроси у игрока скриншот экрана с текстом бана целиком — часто там есть код или короткое текстовое описание причины, которое не всегда попадает в серверный лог. Это главное, что понадобится для дальнейшего обращения в поддержку.

Как игроку подать апелляцию в EasyAntiCheat

Это единственный официальный канал, который реально может отменить бан EAC, — и это не ты. Твоя роль здесь — направить и, если есть возможность, подтвердить со своей стороны, что не видел признаков читерства на сервере.

  1. Игрок заходит на официальный сайт EasyAntiCheat (easy.ac) в раздел поддержки/апелляций и открывает тикет по своему бану.
  2. В тикете нужны: SteamID64 игрока, примерная дата и время бана, название игры (Rust) и, если есть, скриншот сообщения с кодом причины.
  3. Если ты как владелец сервера готов подтвердить, что не фиксировал подозрительной активности — приложи короткую выдержку из своих логов или скажи об этом в переписке с игроком, чтобы он мог упомянуть это в апелляции.
  4. Дальше — ожидание. Разбор апелляций у EAC не мгновенный, может занимать от нескольких дней до пары недель в зависимости от загрузки поддержки.

Отдельно: если жалобы на ложные баны посыпались массово и одновременно от разных игроков — это может быть волна ложных срабатываний из-за проблемы на стороне самого EAC/Facepunch (такое периодически случается после патчей). В этом случае имеет смысл проверить официальные каналы Rust на упоминание проблемы, прежде чем разбирать каждый случай вручную.

Что реально может сделать владелец сервера

Здесь стоит быть честным с собой и с игроками: возможности сервера ограничены, и это не лень админа, а архитектура системы — EAC работает независимо от того, что настроено на твоей стороне.

Что в твоей власти:

  • Проверить свои логи на предмет подозрительной активности игрока до бана — если статистика чистая (нет аномального аим-паттерна, стрельбы сквозь стены в записях плагинов вроде AdminRadar), это довод в пользу игрока.
  • Помочь с апелляцией — предоставить свои логи или письменное подтверждение отсутствия жалоб на игрока, если он просит.
  • Не давать пустых обещаний — не говори "я разберусь и разбаню", если бан от EAC. Ты физически не можешь снять его на уровне сервера, и обещание, которое не выполнится, портит доверие сильнее, чем честное "это не в моей власти".

Что НЕ в твоей власти:

  • Отменить сам бан EAC — решение полностью на стороне EasyAntiCheat/Facepunch.
  • Ускорить рассмотрение апелляции — приоритеты тикетов устанавливает поддержка EAC, а не владелец конкретного сервера.
  • Получить доступ к внутренним данным о том, что именно триггернуло детектор — обычно доступна только категория причины, не сырые данные проверки.

Единственное, что относится именно к твоим настройкам сервера, — это то, включён ли EAC вообще. Проверяется конваром:

server.secure

По умолчанию true. Отключать его ради того, чтобы "спасти" забаненного игрока — плохая идея: это открывает сервер для читеров без разбора и не отменяет уже выданный EAC-бан, он всё равно будет действовать при следующем включении защиты.

Если сервер добавил свой собственный бан поверх EAC

Отдельный частый случай: EAC кикнул игрока, а после этого сработавший на это событие плагин (например, античит-модуль, который слушает EAC-кики и автоматически заносит SteamID в собственный бан-лист) добавил игрока ещё и в серверный список банов. Здесь ты уже можешь действовать — это твой локальный список, не EAC.

Снять именно серверный бан можно нативной командой через консоль или RCON:

unban 76561198000000000

Если бан добавлен конкретным плагином (не нативной командой), у него обычно своя команда снятия — ищи в документации плагина на странице модификации на Codefling или uMod, единого стандарта тут нет. Обзор популярных плагинов для модерации и защиты сервера — в статье про топ-10 плагинов для Rust.

Важно понимать: снятие серверного бана вернёт игроку доступ именно к твоему серверу. Если сам EAC-бан ещё действует, игрок всё равно не сможет подключиться — сначала должна закрыться апелляция в EAC, и только тогда локальное решение имеет смысл.

Временный разбан, пока идёт разбирательство

Если бан выдан именно твоим сервером (плагином или вручную), и ты по логам не видишь ничего подозрительного, а объяснение игрока звучит правдоподобно (например, всплеск "аномальной" точности из-за реально хорошего раунда, а не паттерна чита) — разумно временно снять локальный бан, пока идёт разбор, а не держать игрока в подвешенном состоянии неделями.

Практика, которая работает на большинстве серверов:

  1. Сними серверный бан командой unban <steamid>.
  2. Сообщи игроку, что решение предварительное и при повторных подозрениях бан вернётся без долгих разговоров.
  3. Зафиксируй это в админ-логе или отдельном канале модерации — кто, когда и почему разбанил, это защищает тебя же при повторных спорах.
  4. Если бан был именно от EAC (не серверный) — этот пункт не применим вообще, временно разбанить его нельзя ни при каких обстоятельствах, это не в компетенции сервера.

Таблица для быстрой ориентации, кто и что может сделать по типу бана:

Тип банаКто выносит решениеМожет ли владелец сервера снять
EAC-банEasyAntiCheat / FacepunchНет, только апелляция в EAC
Серверный бан (ручной)Админ/модератор сервераДа, команда unban
Бан плагина-античитаПлагин на сервереДа, через команду плагина
VAC (не относится к Rust)ValveНет, вопрос не в юрисдикции Rust-сервера

Поднять сервер Rust за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Частые вопросы

Можно ли снять EAC-бан через RCON или консоль сервера?

Нет. EAC-бан не хранится в базе твоего сервера — он привязан к аккаунту игрока на стороне EasyAntiCheat и действует на всех защищённых серверах Rust одновременно. Команда unban работает только со списком банов твоего сервера.

Игрок говорит, что забанен без причины — стоит ли ему верить на слово?

Проверь свои логи и статистику плагинов модерации перед тем, как делать выводы в любую сторону. Часть жалоб оказывается правдой (ложное срабатывание из-за сети или оверлея), часть — попыткой читера получить обратно доступ. Логи решают спор быстрее, чем доверие на слово.

Сколько ждать ответ от поддержки EAC по апелляции?

Точных сроков EAC публично не гарантирует, на практике разбор может занять от нескольких дней до пары недель — зависит от загрузки поддержки и сложности случая. Заранее предупреди игрока, чтобы не ждал ответа за один день.

Если я отключу server.secure, вернётся ли доступ забаненному игроку?

Технически да, потому что сервер перестанет требовать проверку EAC вообще — но это откроет сервер для всех читеров без разбора и резко снизит доверие остальных игроков к площадке. Так делать не стоит даже ради одного спорного случая.

Стоит ли банить игрока на своём сервере дополнительно, если его уже забанил EAC?

Обычно нет смысла — он и так не подключится, пока действует EAC-бан. Дублирующий серверный бан имеет смысл только если ты хочешь зафиксировать инцидент в своей истории модерации на будущее.