Constater du trafic d'utilisateurs anonymes et de crawlers, bien que le site soit privé

Je gère une instance Discourse privée et je n’ai pas pu manquer de remarquer qu’il y a du trafic enregistré d’utilisateurs anonymes et de robots d’exploration web affiché dans mon tableau de bord. En y regardant de plus près, je vois que cela se produisait déjà auparavant, mais en moindre quantité.

J’ai activé l’option « connexion requise » et notre SSO est configuré pour n’autoriser les connexions que pour les utilisateurs répondant à certains critères. Y a-t-il un autre paramètre que je devrais cocher ? Merci ! : )

Il ne devrait rien y avoir de plus à faire… ce trafic de robots provient probablement de robots accédant à community.yoursite.com/login. Si vous consultez community.example.com/admin/reports/web_crawlers, vous pouvez voir à quelle fréquence des robots spécifiques accèdent à votre site.

Voici quelques actions que vous pouvez entreprendre pour réduire ce trafic de robots…

  • Essayez d’interdire l’accès à /login aux robots dans le fichier robots.txt (community.example.com/admin/customize/robots)… vous devriez constater une baisse du trafic de robots (bien que probablement pas totale, car certains robots ne respectent pas le fichier robots.txt).

  • Examinez les principaux coupables dans /admin/reports/web_crawlers et ajoutez leurs user-agents aux paramètres du site « user-agents de robots bloqués ».

En plus de ce que Kris a écrit, il y aura également une requête anonyme pour la page de connexion ou la page d’accueil de votre site au début de chaque demande de connexion SSO.

Les pages CGU et Confidentialité de votre site peuvent également probablement être accessibles aux utilisateurs anonymes.

Si vous êtes sur un VPS ou si vous avez Nginx (Apache fonctionne aussi, mais Nginx est plus simple :wink: ) devant Discourse, bannir les bots est beaucoup plus facile. L’interface de Discourse n’est pas très facile à utiliser, car il y a une multitude de bots. Le fichier robots.txt est presque inutile car très peu le respectent, pas même Google.

Le problème ne concerne pas les attaquants qui tentent d’atteindre votre Discourse. Tout ce qu’ils recherchent, c’est :

  • Des centaines de script kiddies testent si vous utilisez WordPress et exploitent des failles, principalement anciennes, mais toujours présentes
  • Des scrapers SEO et autres spiders tentent d’analyser votre contenu, principalement parce qu’ils veulent en tirer profit
  • Sans oublier les moteurs de recherche bien sûr

Ces éléments ne causent pas de dommages réels comme une intrusion, mais les servir vous coûte de l’argent pur.

Le problème est que votre serveur doit répondre à tous ces requêtes. Très rapidement, la majorité de la charge provient des bots, et non des vrais utilisateurs. Il est tout à fait normal d’avoir environ 50 à 500 bots pour un utilisateur réel.

Et vous payerez pour tout cela.

Je n’ai pas d’audience mondiale car mes sites, y compris Discourse, sont purement finnois. J’ai donc un outil puissant, mais qui ne peut être utilisé que sur un VPS : le blocage géographique.

Je suis désolé pour nos amis de Russie, de Chine, d’Inde, du Pakistan, d’Iran, d’Irak et du Vietnam, mais lorsque j’ai bloqué ces pays, ma charge de bots a chuté d’environ 90 %.

La lutte contre les bots est un combat sans fin. Les outils de Discourse, lorsqu’un forum n’est pas privé, sont très limités. Mais c’est mieux que rien.

Ne me comprenez pas mal. Je ne veux pas dire qu’une application devrait faire ce qui relève du serveur. Je veux simplement dire que vous ne pouvez pas vous fier uniquement à Discourse.