From 2855f26613eb80c31b19654eadf19d374bc4425f Mon Sep 17 00:00:00 2001 From: Fabian Arrotin Date: Oct 12 2021 12:09:31 +0000 Subject: Adding some notes about wiki.c.o/moin Signed-off-by: Fabian Arrotin --- diff --git a/docs/apps/wiki.md b/docs/apps/wiki.md index e69de29..1dc6eaa 100644 --- a/docs/apps/wiki.md +++ b/docs/apps/wiki.md @@ -0,0 +1,30 @@ +# Wiki + +The CentOS [wiki](https://wiki.centos.org) is a place where people can contribute to some documentation/howtos and SIGs are also (some of them) write quick tutorials on how to install packages, etc + +The wiki engine is [moin](http://moinmo.in/) and is packaged and built through [infra SIG tags](https://cbs.centos.org/koji/packageinfo?packageID=6625) + +The [ansible-role-moin](https://github.com/centos/ansible-role-moin) ansible role is used to deploy/update/modify the existing wiki. + +Worth knowing that on the CentOS Wiki, the default ACL is to forbid people to write content : that measure that to be taken some years ago to fight against spammers. + +So the way to request edit permissions on the Wiki is to + + * register an account (wiki isn't tied to central SSO for now) + * send a mail to centos-docs list and ask edit right + +Some trusted users are added (through ansible) in the admins list, or directly in the Edit group (in moin) to have access everywhere. + +## Fighting with spammers + +As all wiki instances, ours is also attracting bots/spammers, adding really heavy load. +To fight against that , some measures are in place : + + * using the `surge` module option in moin (search for `moin_surge_*` settings in ansible) to limit number of requests one could do at the wiki level + * using iptables/ipset lists to block some known bots/ip ranges (see the `ansible-role-iptables` and the ipset lists defined at the host_vars level for that host + * Tuning the wsgi processes/threads at the apache level + * using the mod_qos apache module to also block requests + +## Backup + +Like for other roles, the `ansible-role-moin` one includes the [centos-backup](https://github.com/CentOS/ansible-role-moin/blob/master/tasks/main.yml#L154) role, so backing up daily the wiki data/instance, that is pulled from central backup server, itself rotating and exporting to another site/DC the rotated pool