Симптомы проблемы
Если в Moodle открыта самостоятельная регистрация по email, рано или поздно приходят боты: сотни фейковых аккаунтов с мусорными именами, спам в профилях и на форумах, замусоренная база пользователей. Это не только неприятно, но и риск безопасности и нагрузка на сервер.
1. Капча при регистрации
Включите reCAPTCHA или hCaptcha в настройках самостоятельной регистрации (Администрирование → Плагины → Аутентификация). Это отсекает большинство простых ботов. Ключи капчи получаете бесплатно у провайдера.
2. Обязательное подтверждение email
Регистрация «с подтверждением по email» не даёт активировать аккаунт без доступа к почте. Обязательно требует рабочей отправки почты — проверьте настройку SMTP, иначе живые студенты не смогут зарегистрироваться.
3. Белый список доменов
Если у вас учатся только «свои» (например, домены вуза или конкретных организаций), задайте разрешённые домены email в настройках. Регистрация с gmail, mail.ru и случайных адресов будет отклонена — боты отсекаются массово.
4. Отключить самостоятельную регистрацию
Самый надёжный способ для закрытых СДО: полностью отключить self-registration и заводить пользователей централизованно — массовой загрузкой из Excel, синхронизацией с 1С или через единый вход.
5. Вход через Госуслуги, ЕСИА или VK ID
Единый вход (SSO) закрывает регистрацию ботов в принципе: аккаунт создаётся только после подтверждённой авторизации. Для государственных учреждений это ещё и удобно студентам. Вход через Госуслуги (ЕСИА).
6. Очистка базы от уже накопившихся ботов
Если боты уже завелись, их нужно вычистить: отфильтровать аккаунты без активности, без подтверждённой почты, с подозрительными профилями и массово удалить. Делать это надо аккуратно, чтобы не задеть живых студентов — обязательно с резервной копией.
Итог
Обычно достаточно связки «капча + подтверждение email + белый список доменов», а для закрытых систем — единый вход. Настрою защиту вашего Moodle от спам-регистраций и почищу базу от накопившихся ботов — напишите.
Опишите задачу — расскажу, как решить её конкретно в вашем случае. Свяжитесь — разберём вместе.