Is it possible for a report to be added under DASHBOARD > REPORTS, to list accounts that share the same IP address?
Or, if the processing is too heavy to do large forums, the report could potentially be capped eg: checks all new accounts from the last 3mths.
Discourse identifies such duplicates when looking up a specific user, but it would be useful to see this information across all users. Currently I have no tool to identify this, other than checking individual users one at a time.
I realise that a shared IP doesn’t always mean it’s the same person and that some IP addresses are shared by multiple users on a network, but it would still be very useful.
Есть ли шанс, что это будет добавлено в стандартные отчёты панели управления Discourse без необходимости использования плагина Data Explorer?
Эта функция была бы полезна для большинства сотрудников форума Discourse, так как наличие у пользователей нескольких аккаунтов — довольно распространённая ситуация. Для меня она была бы полезнее на регулярной основе, чем большинство существующих отчётов панели управления.
Спросите себя: каково максимальное количество различных IP-адресов?
Думаю, было бы относительно недорого сравнивать count(ips) с count(distinct(ips)), чтобы получить общее представление о том, сколько аккаунтов использовали IP-адреса, принадлежащие другим аккаунтам.
Более затратным вариантом будет поиск конкретных IP-адресов «по требованию».
В зависимости от количества аккаунтов и IP-адресов на форуме, поиск всех недублирующихся IP-адресов может оказаться крайне дорогостоящим. Если мои подсчёты верны, формула для определения необходимого количества проверок будет примерно такой: (n*(n+1)/2)-n
где n — общее количество IP-адресов.
Например, для 100 это 4950 проверок, для 1000 — 499 500. Думаю, вы меня поняли.
Не знаю, какие это потребует системные ресурсы, но было бы полезно получать сообщение модератора и/или иметь отчет, который позволял бы получить список IP-адресов, с которыми связано более одного участника — либо через регистрацию, либо через последний IP-адрес.
В настоящее время единственный способ выявить дублирующиеся IP-адреса (что не обязательно означает наличие у одного участника нескольких аккаунтов) — это ручная проверка. Это означает, что мы узнаём о проблеме только тогда, когда кто-то начинает создавать проблемы.
Кроме того, может случиться (очень редко, но это может стать повторяющейся проблемой с мотивированным троллем), что человек создаст множество аккаунтов, которые он «прокачивает», чтобы получить возможность публиковать сообщения, но в остальном оставляет их неактивными. Очень трудно и трудоёмко для кого-то делать это с достаточной дисциплиной, используя VPN для разделения IP-адресов. Поэтому на каком-то этапе процесса повышения уровня доверия аккаунта тролль обычно совершает ошибку и заходит с «реальным» IP-адресом. И если модераторы смогут получать уведомления об этом или если такая информация будет отображаться в отчёте, который группа модераторов может регулярно проверять, это очень помогло бы предотвратить действия тролля, использующего множество неактивных поддельных аккаунтов для создания масштабных нарушений.
Но, возможно, это потребует слишком много системных ресурсов?
Всегда существует несколько способов создания приложения, но я могу поделиться своим опытом.
Я получил набор данных, включая IP-адреса, связанные с форумом Discourse (~250 тыс. аккаунтов).
Я написал код на PHP (*примечание, не Ruby) для парсинга CSV и вставки данных в базу данных MySQL (*примечание, не PostgreSQL).
Я загрузил устаревшую базу данных геолокации MaxMind.
Я написал код для преобразования массивов INET в числа и обратно и вставил значения в базу данных.
Я сопоставил индивидуальные IP-адреса Discourse с соответствующими локациями MaxMind (даже при ограниченном количестве, например, 10 тыс. аккаунтов, этот шаг мог занимать более двух часов — дорогостоящий диапазонный запрос).
После получения «базовых» данных мне оставалось лишь обновлять только то, что появилось с момента последнего обновления. Запуск [еженедельного] обновления никогда не занимал более нескольких минут.
Как только у меня были нужные данные, выполнение запросов по местоположению не было медленным.
Спасибо за это… Извините, что я не заметил это раньше, и спасибо, что напомнили. Я передам это нашему администратору, и мы обсудим, стоит ли оно того.
У нас несколько тысяч участников, и довольно регулярно люди создают дополнительные аккаунты. Иногда со злым умыслом, но часто без каких-либо видимых злых намерений. Редко это становится серьёзной проблемой.
Лишь несколько раз в год, насколько я помню, мы баним кого-то, и они создают дополнительные аккаунты, чтобы досаждать нам. До сих пор это было неприятно, но не настолько серьёзно. И пока что они всегда теряли желание тратить время на то, чтобы продолжать эту бессмыслицу: либо исчезали, либо создавали новый аккаунт и вели себя тихо, следуя правилам, не создавая проблем. В таком случае это не на самом деле проблема.