/etc/cron.d
sinon le fichier est considéré comme désactivé !!!< retour à la page de l'administration technique
Le wiki de FedeRez est hébergé sur dodecagon dans /srv/dokuwiki
.
Une réplique de secours automatisée se trouve sur saigon dans /srv/dokuwiki
, accessible à l'adresse https://wiki-backup.federez.net. Plus de détails sur la réplication ci-dessous.
L'installation de Dokuwiki étant un simple git clone
de la branche stable du dépôt officiel, un git pull
devrait faire l'affaire :)
cd /srv/dokuwiki # Vérifier qu'on est bien sur la branche stable git pull --ff-only chown root:www-data -R /srv/dokuwiki chmod -R a-w,a+rX,u+w /srv/dokuwiki chmod -R g+w /srv/dokuwiki/data /srv/dokuwiki/lib/plugins/ /srv/dokuwiki/lib/tpl /srv/dokuwiki/conf/{local.php{.bak,},{users,acl}.auth.php,plugins.local.php{.bak,}}
En cas d'erreur lors du git pull
, il faudra regarder quels fichiers posent problème.
Dans /srv
, cloner le dépôt Git officiel :
git clone git://github.com/splitbrain/dokuwiki.git /srv/dokuwiki cd /srv/dokuwiki git checkout -b stable origin/stable chown -R www-data:www-data /srv/dokuwiki
Créer le fichier de site Apache (extrait de la configuration) :
<VirtualHost *:80> ServerName wiki.federez.net Redirect permanent / https://wiki.federez.net/ ... </VirtualHost> <VirtualHost *:443> ServerName wiki.federez.net DocumentRoot /srv/dokuwiki <Directory /> AllowOverride all </Directory> <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> ... </VirtualHost>
Après avoir activé le site et rechargé Apache, finir l'installation sur https://wiki.federez.net/install.php.
Options de configuration autres que celles par défaut : fichiers .local.php
dans /srv/dokuwiki/conf
Options de configuration générales, généré automatiquement en modifiant les paramètres via l'interface web.
(version du 2019-04-12 11:34 +0800)
<?php /* * Dokuwiki's Main Configuration File - Local Settings * Auto-generated by config plugin * Run for user: vincent.le-gallic * Date: Mon, 19 Aug 2013 19:11:49 +0200 */ $conf['title'] = 'Wiki de FedeRez'; $conf['lang'] = 'fr'; $conf['license'] = '0'; $conf['recent'] = 50; $conf['recent_days'] = 30; $conf['showuseras'] = 'username'; $conf['passcrypt'] = 'bcrypt'; $conf['superuser'] = '@admin,@federezadmin'; $conf['disableactions'] = 'register,resendpwd'; $conf['subscribers'] = 1; $conf['htmlmail'] = 0; $conf['userewrite'] = '1'; $conf['sepchar'] = '-'; $conf['fnencode'] = 'utf-8'; $conf['send404'] = 1; $conf['renderer_xhtml'] = 'xbr'; $conf['plugin']['editx']['user_rename'] = '@admin'; $conf['plugin']['editx']['user_rename_nr'] = '@admin'; $conf['plugin']['editx']['user_delete'] = '@admin'; // end auto-generated content
Configuration pour LDAP.
Il est nécessaire d'installer le paquet php5-ldap
et de redémarrer apache pour pouvoir utliser l'autehntification LDAP :
apt install php5-ldap service apache restart
<?php /** * Protected settings * LDAP configuration example */ $conf['useacl'] = 1; //enable ACL $conf['authtype'] = 'authldap'; //enable this Auth plugin # localhost permet l'authentification en cas de défaillance du serveur LDAP maître sur le wiki de backup. $conf['plugin']['authldap']['server'] = 'ldap://ldap.federez.net:389'; $conf['plugin']['authldap']['usertree'] = 'cn=Utilisateurs,dc=federez,dc=net'; $conf['plugin']['authldap']['grouptree'] = 'ou=posix,ou=groups,dc=federez,dc=net'; $conf['plugin']['authldap']['userfilter'] = '(uid=%{user})'; $conf['plugin']['authldap']['groupfilter'] = '(memberUid=%{cn})'; $conf['plugin']['authldap']['version'] = 3; # This enables the use of the STARTTLS command $conf['auth']['authldap']['starttls'] = 1; # Optional bind user and password if anonymous bind is not allowed $conf['plugin']['authldap']['binddn'] = 'cn=wiki,ou=service-users,dc=federez,dc=net'; $conf['plugin']['authldap']['bindpw'] = 'MotDePasseSuperSecret'; # Optional debugging $conf['plugin']['authldap']['debug'] = 0; # Mapping: FedeRez roles as dokuwiki groups $conf['plugin']['authldap']['mapping']['member'] = 'memberUid';
Pour désactiver le remplacement de --
par –
.
# Typography replacements # # Order does matter! # # You can use HTML entities here, but it is not recomended because it may break # non-HTML renderers. Use UTF-8 chars directly instead. -- --
Les ACL sont configurables par les administrateurs via Administer → Gestion de la liste des contrôles d'accès (ACL)
. Pour le public, on interdit tout par défaut et on autorise les pages à publier. Pour les utilisateurs enregistrés, presque tout est autorisé.
Le wiki est répliqué sur saigon. La copie est accessible à l'adresse https://wiki-backup.federez.net.
Le répertoire /srv/dokuwiki
est synchronisé une fois par heure avec le master de dodecagon.
Toute modification apportée sur le réplica sera perdue après la prochaine synchronisation.
Pour effectuer cette réplication, la même méthode que pour la réplication de federezpasswords est utilisée, à savoir :
/etc/cron.d/replica-dokuwiki
1) est appelé une fois par heure et exécute le script /root/scripts/replica.dokuwiki.client
# Réplication du wiki federez # 17 * * * * root /root/scripts/replica.dokuwiki.client
/root/scripts/replica.dokuwiki.client
exécute la commande suivante :https://gitlab.federez.net/federez/scripts/blob/master/replica.dokuwiki.client
rsync
se connecte ainsi avec la clef SSH /root/.ssh/id_ed25519_dokuwiki_from_dodecagon
en tant que root sur dodecagon/root/.ssh/authorized_keys
à ne pouvoir exécuter que le script /root/scripts/replica.dokuwiki.server
, sans terminal (no-pty
) et uniquement depuis l'IP de quigon (from=“160.228.155.65”
)/root/scripts/replica.dokuwiki.server
s'assure que la commande rsync n'a pas été trafiquée :https://gitlab.federez.net/federez/scripts/blob/master/replica.dokuwiki.server
Sur saigon et dodecagon, on crée un fichier de configuration de logrotate pour éviter de garder indéfiniment les logs des mise à jour avec :
/var/log/replica.dokuwiki.log { rotate 8 maxage 8 weekly missingok }
/etc/cron.d
sinon le fichier est considéré comme désactivé !!!