Модульная система
- Добавлена поддержка установки модулей через ZIP-архивы прямо из админ-панели.
- Разработана архитектура для загрузки сервисов, маршрутов и Twig-шаблонов из модулей.
Динамическое меню
- Меню сайта теперь полностью управляется из базы данных.
- Добавлен CRUD-интерфейс в админке (/admin/menu) для создания, редактирования и сортировки пунктов.
- Поддержка вложенных пунктов, иконок и ограничений по флагам доступа.
Кэш
- Добавлена кнопка сброса кэша в админ-панели (очищает все кэшированные файлы: Twig, Symfony Cache и др.).
GreyPanel V2 – Полное описание
Что такое GreyPanel V2?
GreyPanel V2 — это современная, модульная и высокопроизводительная панель управления игровыми серверами (CS:GO, CS 1.6, CS2 и другие на движках GoldSource/Source). Она объединяет в себе веб-сайт сообщества, панель администрирования, магазин привилегий, платёжную систему, статистику и аналитику — всё в одном месте.
Содержание
- Общие сведения
- Функционал для игроков
- Административная панель
- Технические особенности
- Технологический стек
- Интеграции
- REST API
- Фоновые задачи (Cron)
- Консольные команды
- Установка и настройка
- Расширяемость и разработка
- Лицензия и контакты
Общие сведения
GreyPanel V2 — это готовое решение для управления игровым сервером и сообществом. Оно подходит как для небольших проектов, так и для крупных кланов, предоставляя все необходимые инструменты для администрирования, монетизации и взаимодействия с игроками.
Ключевые особенности:
- Модульная архитектура – легко расширять и адаптировать.
- Современный стек – PHP 8.4, Symfony Components, Twig, Bootstrap 5, Alpine.js, Vite.
- Безопасность – CSRF, rate limiting, шифрование, защита от XSS.
- Мультиязычность – русский и английский (легко добавить другие).
- Высокая производительность – кеширование, оптимизированные запросы.
- Гибкие интеграции – AmxBans, SourceBans, IKS, AS, FTP, GreyPanel API.
Функционал для игроков
Аутентификация и профиль
- Регистрация с подтверждением email.
- Вход по логину/паролю, восстановление пароля.
- Запоминание сессии (remember token).
- Привязка аккаунтов: Steam, VK, Discord, Telegram.
- Настройка аватара (загрузка, обрезка) и обложки профиля.
- Личные данные: имя, ник, день рождения, подпись, телефон.
- Настройки приватности:
- Кто может писать личные сообщения (все / только друзья).
- Привязка сессии к IP.
- Уведомления на email.
Общение и взаимодействие
- Форум – иерархия: категории → разделы → темы → посты.
- Поддержка Markdown.
- Лайки (вместо «спасибо»).
- Отслеживание прочитанных тем.
- Цитирование, редактирование, удаление (автором или модератором).
- Поиск по форуму.
- Общий чат – на главной странице.
- Отправка сообщений в реальном времени (с эмодзи).
- Просмотр истории.
- Личные сообщения – приватные диалоги.
- Уведомления о новых сообщениях.
- Отметка прочитанных.
- Защита от спама (rate limiting).
- Лента событий – отображение активности:
- Регистрация новых пользователей.
- Создание тем и постов.
- Покупка услуг.
- Подача жалоб.
Новости и контент
- Публикация новостей администраторами.
- Markdown-разметка, автоматическое распознавание ссылок.
- Встраивание видео (YouTube, Rutube).
- Комментарии к новостям (удаление автором или админом).
- Счётчик просмотров.
Магазин услуг (привилегии)
- Каталог услуг с описанием, флагами прав и привязкой к серверам.
- Тарифы – разная длительность (дни) и цена.
- Покупка с баланса пользователя.
- Автоматическая выдача прав на серверы через интеграции (AmxBans, SourceBans, FTP, IKS, AS).
- Отображение активных услуг в профиле (срок действия, статус).
Баланс и платежи
- Внутренний баланс пользователя.
- История пополнений и списаний.
- Пополнение через 13+ платёжных шлюзов:
- ЮMoney, Robokassa, FreeKassa.
- Qiwi (старый и новый API).
- LiqPay, InterKassa, PayAnyWay.
- PayPalych, Paysera, PrimePayments.
- Enot, AnyPay.
- Поддержка разных валют (RUB, USD, EUR и др., в зависимости от шлюза).
- Реферальная программа – игрок получает процент от пополнений приглашённых.
Статистика и рейтинг
- Интеграция с движками статистики:
- CSStats MySQL.
- HLStatsX CE.
- RankMe.
- Levels Ranks.
- Army Ranks Ultimate.
- Таблица рейтинга:
- Убийства, смертность, K/D, HS%.
- Время игры, скилл.
- Профиль статистики – подробная информация по картам, оружию, достижениям.
Бан-лист и муты
- Отображение банов и мутов с серверов (интеграция с AmxBans/SourceBans).
- Поиск по нику или SteamID.
- Заявка на разбан – через тикет-систему (автоматическое создание темы на форуме).
- Платный разбан (если включен в настройках).
- Статусы: активен, истёк, разбанен, куплен разбан.
Тикеты и поддержка
- Категории: общий вопрос, заявка на разбан, ошибка, платежи.
- Переписка с администрацией.
- Уведомления о новых ответах.
- Возможность закрыть тикет пользователем или администратором.
Жалобы на администраторов
- Подача жалобы на администратора:
- Сервер, причина, скриншоты, демо-запись.
- Рассмотрение администрацией: вердикт, наказание (блокировка услуги, удаление администратора).
- Переписка в рамках жалобы.
- Автоматическое уведомление всех сторон.
Административная панель
Управление пользователями
- Просмотр списка пользователей (поиск по нику/email).
- Редактирование: группа, баланс, блокировка, смена пароля.
- Просмотр услуг пользователя, выдача/удаление услуги.
- Просмотр рефералов и заработанных средств.
Управление группами
- Создание/редактирование/удаление групп.
- Назначение флагов прав (a-z) – гибкая система доступа.
- Группа по умолчанию для новых пользователей.
Настройка серверов
- Добавление/редактирование игровых серверов:
- IP, порты (игровой, query, RCON).
- Тип (halflife / source).
- Название, отображаемый адрес, скидка на услуги.
- Включение/отключение отображения в мониторинге.
- Интеграция привилегий: AmxBans, SourceBans, IKS, AS, FTP, GreyPanel API + AmxBans.
- Настройка статистики: движок, подключение к БД, таблица, сортировка.
- Синхронизация администраторов с внешними системами (импорт/экспорт).
Услуги и тарифы
- Создание/редактирование услуг: название, описание, флаги прав.
- Привязка услуги к серверам.
- Ограничение по группе пользователей.
- Добавление тарифов: длительность, цена, активность, порядок сортировки.
Администраторы серверов
- Просмотр администраторов для выбранного сервера.
- Добавление/редактирование:
- Имя (SteamID или ник).
- Пароль, флаги, тип авторизации (ce – SteamID, ca – ник+пароль).
- Активность, пауза.
- Привязка к пользователю сайта (позволяет видеть услуги в профиле).
Баны и муты (администрирование)
- Управление банами/мутами через внешние интеграции:
- Снятие наказания.
- Изменение срока.
- Удаление истекших или всех банов.
- Статистика: всего, активных, перманентных, истекших.
Тикеты и жалобы (администрирование)
- Просмотр всех тикетов/жалоб с фильтрацией по категории/статусу.
- Ответы через админ-панель (с отметкой, что ответ от администрации).
- Закрытие тикетов/жалоб с вердиктом.
- При удовлетворении жалобы – автоматическое наказание администратора (блокировка услуги).
Новости (администрирование)
- Создание/редактирование/удаление новостей.
- Управление публикацией (черновик/опубликовано).
- Просмотр статистики (просмотры).
Темы оформления и редактор
- Список доступных тем (из папки public/themes/).
- Активация/деактивация темы.
- Редактор тем – просмотр и редактирование файлов шаблонов (Twig, CSS, JS) прямо через веб-интерфейс.
- Вставка готовых блоков (виджетов) через модальное окно.
Платежи (настройка)
- Включение/отключение каждого платёжного шлюза.
- Установка ключей API, паролей, идентификаторов.
- Тестовый режим для каждого шлюза.
- Отображение URL для уведомлений (callback) для настройки в личных кабинетах платёжных систем.
Безопасность и SEO
- Безопасность:
- Включение/отключение reCAPTCHA на формах входа/регистрации.
- Установка Site Key и Secret Key.
- SEO:
- Настройка мета-тегов (описание, ключевые слова) для главной страницы.
- Автоматическая генерация sitemap.xml.
- Редактирование robots.txt через админку.
Общие настройки
- Название сайта.
- Протокол (http/https/авто).
- Ручной URL (если автоматическое определение не работает).
- Режим отладки (включение вывода ошибок).
- Время жизни сессии (в секундах).
- Имя cookie сессии.
- Язык по умолчанию.
Технические особенности
- Модульная архитектура – все компоненты легко заменяемы и расширяемы.
- DI-контейнер – управление зависимостями, интерфейсы для сервисов.
- Безопасность:
- CSRF-токены на всех формах.
- Rate limiting – защита от брутфорса и флуда.
- Шифрование конфиденциальных данных (пароли БД, FTP, платежных ключей).
- HTML-санитайзер (защита от XSS).
- Хеширование паролей пользователей (bcrypt).
- Производительность:
- Кеширование (файловое, опционально Redis).
- Оптимизированные SQL-запросы (подготовленные выражения, индексы).
- Vite для сборки фронтенда (быстрая загрузка ресурсов).
- Мультиязычность – встроенные переводы на русский и английский, легко добавить новые.
- REST API – для внешних систем (AMXX-плагин, интеграции).
Технологический стек
Компонент Используемая технология PHP 8.4+ Фреймворк Symfony Components (HttpFoundation, Cache, Console, Translation, Validator, Lock, RateLimiter, HtmlSanitizer) Роутинг FastRoute (подготовлен переход на Symfony Routing) Шаблонизатор Twig 3.x База данных MySQL / MariaDB (PDO) Фронтенд Bootstrap 5, Alpine.js, Vite, Chart.js, EasyMDE (Markdown), CodeMirror, emoji-picker Кеширование Filesystem (опционально Redis) Почта PHP mail() / SMTP (Symfony Mailer) Очереди Symfony Messenger (опционально) Инструменты PHP-CS-Fixer, PHPStan, ESLint, Prettier
Интеграции
Администраторы
- AmxBans
- SourceBans
- IKS Admin
- AS (Admin System)
- Users.ini (FTP/SFTP)
- GreyPanel API + AmxBans (гибридный режим)
Баны и муты
- AmxBans
- SourceBans
- IKS
- AS
Статистика
- CSStats MySQL
- HLStatsX CE
- RankMe
- Levels Ranks
- Army Ranks Ultimate
Платёжные шлюзы
- ЮMoney, Robokassa, FreeKassa
- Qiwi (старый и новый API)
- LiqPay, InterKassa, PayAnyWay
- PayPalych, Paysera, PrimePayments
- Enot, AnyPay
REST API
Для внешних систем (например, AMXX-плагин) доступны API-эндпоинты:
Метод Путь Описание GET /api/admins/{serverId} Получить список администраторов сервера POST /api/admins/{serverId} Создать/обновить администратора DELETE /api/admins/{serverId}/{name} Удалить администратора по имени
Аутентификация: через заголовок X-API-Key или параметр api_key.
Фоновые задачи (Cron)
Все периодические задачи выполняются через консольную команду cron:run. Рекомендуется запускать каждые 15 минут.
Код:*/15 * * * * cd /путь/к/проекту && php bin/console cron:run >> /dev/null 2>&1
Что делает cron:run:
- Удаление просроченных услуг.
- Уведомления об истечении услуг (за 5 дней).
- Очистка старых логов (старше 30 дней).
- Удаление неактивированных пользователей (не подтвердивших email, старше 7 дней).
- Обновление мониторинга серверов.
- Очистка истекших токенов подтверждения email и сброса пароля.
Консольные команды
Доступные команды (выполняются из корня проекта):
Команда Описание php bin/console cron:run Запуск всех фоновых задач php bin/console monitor:update Принудительное обновление мониторинга серверов php bin/console recalculate:reit Пересчёт рейтинга (reit) всех пользователей php bin/console messenger:consume Запуск обработчика очереди (если настроен)
Установка и настройка
Подробная инструкция по установке находится в файле. Краткий список шагов:У вас нет разрешения на просмотр ссылки. Вход или Регистрация
- Клонирование репозитория
Код:git clone https://github.com/ваш-аккаунт/greypanel-v2.git- Установка зависимостей
Код:composer install --no-dev --optimize-autoloader npm install npm run build- Настройка .env
Укажите параметры БД, сгенерируйте ENCRYPTION_KEY.Код:cp .env.example .env- Запуск веб-установщика
Откройтеи следуйте инструкциям.У вас нет разрешения на просмотр ссылки. Вход или Регистрация- Права на запись
Код:chmod -R 775 var/cache var/logs var/lock public/uploads chmod 660 .env- Настройка Cron (см. раздел выше).
Расширяемость и разработка
Добавление нового платёжного шлюза
- Создать класс в src/Merchant/, реализовать MerchantInterface.
- Добавить шаблон настроек в public/themes/admin/tpl/payments/.
- Добавить маршруты в config/routes.php для /payment/{gateway} и /payment/callback/{gateway}.
- Зарегистрировать шлюз в AdminPaymentController.
Добавление новой интеграции (AmxBans, SourceBans и т.д.)
- Создать класс в src/Integration/Admin/, реализовать AdminSystemIntegration.
- Добавить в IntegrationFactory метод getAdminIntegration.
- При необходимости создать аналогичные классы для Ban/Mute/Stats.
Работа с переводами
- Файлы: resources/translations/messages.{lang}.yaml и validators.{lang}.yaml.
- В Twig: {{ trans('key') }}.
- В PHP: $this->translator->trans('key').
Стиль кода
- Запуск PHP-CS-Fixer: composer fix.
- Проверка PHPStan: composer phpstan.
- Линтинг JS: npm run lint.
GreyPanel v2.0.0-rc1 — первый релиз-кандидат
Основные возможности
- Модульная архитектура с гибкой системой прав (пользователь, модератор, администратор, root)
- Полноценный форум с Markdown-редактором (EasyMDE), лайками, цитированием и отслеживанием прочитанного
- Новостная лента с поддержкой Markdown и загрузкой изображений
- Мониторинг серверов через Source Query с автообновлением
- VIP-система с автоматической активацией через FTP, MySQL, AmxBans/CsBans, SourceBans
- Бан-лист с автоматической интеграцией из внешней БД AmxBans/SourceBans
- Тикет-система с категориями (включая заявки на разбан)
- Баланс пользователей, реферальная программа
- Приём платежей через ЮMoney
- Онлайн-чат на главной странице
- Полноценная панель администратора со своей темой и редактором шаблонов
- Мультиязычность (русский, английский) с возможностью добавления новых языков
- REST API для виджетов (последние темы, топ донатеров, онлайн)
- Консольные команды (Symfony Console)
- Веб-установщик с проверкой окружения и самоудалением
Технический стек
- PHP 8.4+
- Symfony Components (HttpFoundation, Cache, Console, Translation, Serializer, Validator, Lock, RateLimiter, HtmlSanitizer)
- Twig — шаблонизатор
- Bootstrap 5, Alpine.js, Chart.js, SortableJS, EasyMDE, CodeMirror
- MySQL / MariaDB
- Vite — сборка JS / SCSS
Что было сделано после полного аудита
- Устранены рекурсии и ошибки типизации в DI-контейнере и сервисах
- Интеграции бан-листа (AmxBans/SourceBans) приведены к единому стандарту полей (banlist_db_*)
- Исправлены критические ошибки возвращаемых типов в BanService (вместо [] возвращается int/bool)
- Добавлены типизированные хелперы Request (postInt, postString, getInt и т.д.)
- Полная поддержка мультиязычности во всех шаблонах и JS-компонентах
- Замена самописного роутера на Symfony Routing
- Улучшена безопасность (CSRF, RateLimiter, HtmlSanitizer, шифрование паролей внешних систем)
- Внедрён единый подход к Toast-уведомлениям и обработке ошибок
Ссылки
- Скачать:
У вас нет разрешения на просмотр ссылки. Вход или Регистрация- Репозиторий:
У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Призываю к тестированию!
Это предрелизная версия. Буду благодарен за любые отзывы, баг-репорты и предложения в. Стабильная версия 2.0.0 выйдет после завершения тестирования.У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Альфа-версия — может содержать ошибки и нестабильный функционал.
Что нового
- Безопасный установщик — проверка окружения, шифрование данных между шагами, транзакционная загрузка миграций, динамический интерфейс без перезагрузки страницы.
- Расширенная статистика — поддержка CsStats MySQL, RankMe и Levels Ranks с автоматическим выбором движка и рейтингом игроков.
- Группы пользователей — управление правами через флаговую систему, создание и редактирование групп с удобным интерфейсом.
- Услуги и тарифы — полноценный модуль для продажи привилегий, настройка тарифов, привязка к группам и серверам.
- Редактор тем — встроенный редактор шаблонов и стилей с подсветкой синтаксиса, предпросмотром и вставкой готовых блоков.
- Улучшенный мониторинг серверов — кэширование данных, поддержка разных движков SourceQuery и внешнего API.
- Обновлённые шаблоны — переработанный интерфейс панели управления, публичный бан-лист с фильтрацией по статусу и поиском, улучшенное меню.
Установка
- Скачать архив
У вас нет разрешения на просмотр ссылки. Вход или Регистрация- Загрузите файлы на сервер.
- Откройте сайт в браузере – автоматически запустится мастер установки.
- Следуйте инструкциям на экране.
Обратная связь
Оставляйте свои замечания и предложения вУ вас нет разрешения на просмотр ссылки. Вход или Регистрация
Следите за обновлениями!
GreyPanel V2 – глобальный апдейт (альфа-версия)
С радостью сообщаем о выходе альфа-версии обновлённой панели управления игровыми серверами – GreyPanel V2. Это не просто очередной патч, а полный рефакторинг с упором на безопасность, производительность и удобство.
Что сделано?
- Безопасность: добавлена CSRF-защита всех форм, исправлены уязвимости XSS и повышения привилегий, внедрена reCAPTCHA v2.
- Защита от атак: rate limiting на логин, регистрацию, чат, активацию VIP и загрузку изображений.
- Кэширование: ускорена загрузка страниц – кэшируются настройки, категории форума, мониторинг.
- Гибкие настройки сайта: можно принудительно задать протокол (HTTP/HTTPS/авто) или указать полный URL.
- Платежи: переработана проверка уведомлений ЮMoney (проверка IP, подписи, вызов API).
- Оптимизация БД: добавлены индексы и внешние ключи – запросы стали быстрее.
🛠 Установка / обновление
- Новая установка: скачайте архив со страницы релиза на GitHub, распакуйте, перейдите в папку public/install и следуйте инструкциям установщика.
Требования к серверу
Код:PHP ≥ 8.4 (расширения: pdo_mysql, gd, imagick, mbstring, curl, fileinfo, openssl, ftp) MySQL ≥ 5.7 Composer, Node.js + npm
Это альфа-версия
Просим тестировать и сообщать о найденных ошибках в разделе. Панель уже можно использовать на небольших проектах, но для боевых серверов рекомендуем дождаться стабильного релиза.У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Полезные ссылки
У вас нет разрешения на просмотр ссылки. Вход или Регистрация У вас нет разрешения на просмотр ссылки. Вход или Регистрация У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Спасибо всем, кто помогает проекту! Вместе сделаем GreyPanel V2 лучшей панелью.