Почему RCON требует особой защиты
RCON предоставляет удалённый административный доступ к игровому серверу. Через него можно выполнять команды, менять карту, управлять игроками и изменять текущие параметры. Утечка RCON-пароля способна привести к остановке матчей, массовому отключению игроков, изменению настроек и другим нарушениям.
Главная ошибка — воспринимать RCON как обычный пароль от незначительной функции. На практике это один из административных ключей проекта, поэтому его защита должна быть сопоставима с защитой SSH или панели управления.
Каким должен быть пароль
Пароль не должен содержать название сервера, домен, ник владельца, год запуска или простую последовательность цифр. Такие варианты легко угадываются вручную и быстро проверяются автоматическими программами.
Используйте случайную комбинацию длиной не менее 20 символов. В ней должны быть буквы разного регистра, цифры и специальные символы, если выбранный формат конфигурации корректно их поддерживает.
Храните пароль в менеджере паролей. Не отправляйте его в общем чате команды, не вставляйте в публичную инструкцию и не сохраняйте в названии файла.
Если доступ сотруднику больше не нужен, пароль следует заменить. Одного устного обещания «не использовать» недостаточно.
Где хранится RCON-пароль
Обычно пароль задаётся в конфигурации сервера. Файл должен быть доступен только пользователю, от имени которого запускается процесс, и администраторам системы.
Проверьте:
- права на файл;
- владельца;
- наличие резервных копий в публичных каталогах;
- попадание файла в веб-доступную папку;
- отправку конфигурации в общедоступный Git-репозиторий;
- автоматическую публикацию архивов.
Частая проблема возникает, когда владелец отправляет кому-либо полный архив сервера для диагностики. Внутри могут находиться пароли, токены ботов, доступы к базе и другие секреты. Перед передачей копии конфиденциальные значения необходимо заменить.
Ограничение сетевого доступа
Firewall позволяет сократить количество доступных извне портов. Открывайте только то, что действительно требуется для работы сервера, SSH, панели и мониторинга.
Если RCON-клиент всегда подключается с одного постоянного IP, можно рассмотреть ограничение доступа по адресу. Однако такое правило требует аккуратности: при смене IP владелец рискует потерять возможность подключения.
Не блокируйте query-порт, необходимый для отображения сервера в мониторингах. После изменения firewall проверьте сервер через cs2-monitor.com, чтобы убедиться, что внешний запрос получает данные.
Защита SSH
RCON — только одна часть административного контура. Если злоумышленник получает SSH-доступ, он может прочитать конфигурации и извлечь RCON-пароль.
Для SSH рекомендуется:
- использовать авторизацию по ключам;
- запретить вход root по паролю;
- создать отдельного пользователя;
- ограничить доступ через firewall;
- установить защиту от перебора;
- регулярно просматривать журналы авторизации;
- удалить ключи бывших сотрудников;
- хранить резервный доступ отдельно.
Смена стандартного SSH-порта сама по себе не делает сервер защищённым. Она уменьшает количество автоматического шума, но не заменяет ключи, firewall и надёжную политику доступа.
Панель управления и файловый менеджер
Веб-панели часто становятся слабым местом. Используйте уникальный пароль, включайте двухфакторную авторизацию, если она доступна, и своевременно обновляйте саму панель.
Не создавайте один общий аккаунт для всей команды. Отдельные учётные записи позволяют отключить доступ конкретного человека и понять, кто выполнил изменение.
Файловый менеджер с возможностью редактировать конфигурации фактически даёт доступ к секретам. Не считайте его безопаснее SSH только потому, что он работает через браузер.
Разделение ролей
Не всем участникам проекта нужен полный доступ. Модератор может управлять игроками через игровые команды, но не должен получать SSH или пароль базы данных. Контент-менеджеру сайта не нужен доступ к конфигурации сервера.
Минимальные привилегии снижают ущерб от ошибки или компрометации одного аккаунта.
Составьте список:
- кто имеет доступ;
- к какой системе;
- с какой целью;
- когда доступ был выдан;
- когда последний раз проверялся;
- нужен ли он сейчас.
Проводите ревизию хотя бы раз в несколько месяцев и после любого изменения состава команды.
Журналы и признаки вмешательства
Без логов сложно определить, что произошло. Сохраняйте журналы запуска, административных команд, SSH-входов и действий панели.
Подозрительными признаками могут быть:
- неизвестные команды;
- неожиданные смены карты;
- перезапуски в необычное время;
- изменённые конфигурации;
- появление новых пользователей;
- неизвестные SSH-ключи;
- удаление логов;
- странные исходящие соединения.
При обнаружении проблемы не ограничивайтесь сменой одного пароля. Следует проверить весь сервер, активные процессы, ключи, пользователей, cron-задачи, службы и историю входов.
Что делать при утечке RCON
Порядок действий:
1. Немедленно заменить пароль. 2. Перезапустить игровой сервер. 3. Проверить конфигурации и плагины. 4. Изучить журналы команд. 5. Проверить SSH и панель. 6. Отозвать подозрительные ключи и аккаунты. 7. Убедиться, что пароль не остался в старых скриптах. 8. Сообщить команде о новых правилах доступа.
Если пароль был опубликован в репозитории, простого удаления файла недостаточно: значение может оставаться в истории изменений. Секрет обязательно меняют.
Безопасная передача доступа специалисту
При заказе установки или настройки создавайте временный доступ. После завершения работ:
- замените временный пароль;
- удалите временный SSH-ключ;
- проверьте список пользователей;
- сохраните отчёт об изменённых файлах;
- выполните резервное копирование;
- проверьте запуск и внешний ответ сервера.
Никому не передавайте основной пароль от личной почты или аккаунта хостинга, когда достаточно отдельной учётной записи либо временного доступа к серверу.
Итог
Безопасность сервера строится из нескольких слоёв: сильный RCON-пароль, защищённый SSH, ограниченные права, актуальная панель, firewall, журналы и регулярная ревизия доступов.
Даже небольшой игровой проект должен иметь понятный порядок выдачи и отзыва прав. Чем раньше этот порядок появится, тем меньше риск потерять сервер, конфигурации и доверие игроков.