Attention : vous consultez actuellement la documentation dédiée aux versions 1.x de Moodle. La documentation pour les versions 2.x de Moodle est consultable ici : Sécurité, celle pour les versions 3.x de Moodle est consultable ici : Sécurité et celle pour Moodle 4.x est consultable là : Sécurité.

« Sécurité » : différence entre les versions

De MoodleDocs
Aller à :navigation, rechercher
Ligne 61 : Ligne 61 :
* RSS - http://security.moodle.org/rss/file.php/1/1/forum/1/rss.xml
* RSS - http://security.moodle.org/rss/file.php/1/1/forum/1/rss.xml


==Miscellaneous considerations==
== Considérations supplémentaires ==
These are all things you might consider that impact your overall security:
Les points suivants ont également un impact sur la sécurité de votre Moodle :
*Turn off opentogoogle, esp for K12 sites
* Désactivez le paramètre ''opentogoogle'', en particulier pour les sites avec des élèves de moins de 12 ans
*Use SSL, httpslogins=yes
* Utilisez SSL et activez le paramètre ''httpslogins''
*Disable guest access
* Désactivez l'accès aux invités
*Place enrollment keys on all courses
* Mettez des clefs d'inscription pour tous les cours
*Use good passwords
* Utilisez de bons mots de passe
*Use the secure forms setting
* Activez le paramètre''secureforms''
*Set the mysql root user password
* Donnez un mot de passe à l'utilisateur ''root'' de MySQL
*Turn off mysql network access
* Désactivez l'accès à MySQL par le réseau


==Most secure/paranoid file permissions==
==Most secure/paranoid file permissions==

Version du 20 avril 2006 à 14:52

Toute application web est complexe, et l'on découvre de temps en temps des trous de sécurité dans chacune d'entre elles. Habituellement, ces problèmes impliquent la saisie de texte que les développeurs n'ont pas anticipée. Le projet Moodle prend la sécurité très au sérieux et améliore continuellement Moodle de façon à résoudre de tels problèmes dès leur apparition, et même avant.

Préambule

  • Dans cet article, vous trouverez d'importantes mesures de sécurité à prendre pour votre installation de Moodle.
  • Les problèmes de sécurité que vous rencontrez doivent être rapportés directement à l'adresse http://security.moodle.org/, sans quoi les développeurs risquent de ne pas y être rendus attentifs, et aussi parce qu'ils ne doivent pas être rendus public avant d'avoir une solution (pour prévenir des attaques et éviter de faire peur indûment).
  • Veillez à ne pas poster ni dans le gestionnaire de bogues, ni dans les forums, de messages avec du code permettant d'exploiter une faille de sécurité, afin là encore d'éviter les attaques.

Quelques mesures de sécurité simples

  • La meilleure stratégie de sécurité est une bonne copie de sauvegarde ! Une copie de sauvegarde n'est bonne que si vous pouvez la restaurer. Testez vos procédures de restauration !
  • N'utilisez que des logiciels et services que vous emploirez.
  • Effectuez les mises à jour de façon régulière.
  • Construisez votre modèle de sécurité comme les couches d'habits que vous portez lors d'un hiver froid.

Recommandations de base

  • Mettez à jour Moodle régulièrement, lors de chaque nouvelle version :
les failles de sécurité publiées attirent l'attention des pirates après leur publication. Plus la version est ancienne, plus grand est la probabilité qu'elle contienne des failles.
  • Désactivez l'option PHP register globals :
cela vous aidera à vous prémunir contre des éventuels problèmes XSS dans des scripts de tiers.
  • Utilisez des mots de passe complexes pour les administrateurs et les enseignants :
l'utilisation de mots de passes difficiles à deviner est une pratique de protection de base pour éviter les attaques en force contre les comptes.
  • Ne donnez des privilèges d'enseignants qu'à des utilisateurs fiables. Évitez la création de cours bac à sable avec des comptes d'enseignant ouverts sur des serveurs de production :
les comptes avec privilèges d'enseignant ont des permissions beaucoup plus larges et il est donc plus simple d'y créer des situations dans lesquelles les données peuvent être compromises.
  • Séparez vos systèmes autant que possible :
une autre technique de base consiste à utiliser différents mots de passe sur des systèmes différents, à utiliser différentes machines pour des services différents, etc. Ceci évitera que les éventuels dommages ne se répandent, même si un compte ou un serveur est compromis.

Faites des mises à jour régulières de vos systèmes

  • Utilisez les mécanismes de mise à jour automatique
  • Windows Update
  • Linux : up2date, yum, apt-get
Envisagez de mettre en place un script de mise à jour automatique lancé par cron
  • Mise à jour de logiciels de Mac OS X
  • Utilisez des versions actuelles de php, apache et moodle

Utilisez les listes de diffusion pour rester au courant

Pare-feu (firewalls)

  • Les experts en sécurité recommandent un pare-feu double :
différentes combinaisons de matériel et logiciels.
  • La désactivation des services non utilisés est souvent aussi efficace qu'un pare-feu :
utilisez netstat -a pour vérifier les ports réseaux ouverts.
  • Les pare-feu ne garantissent pas une protection absolue.
  • Permettre le trafic sur les ports réseaux :
80, 443 (ssl) et 9111 (pour le chat),
pour l'administration à distance : 22 (ssh) ou 3389 (rpd).

Soyez prêt au pire

Alertes de sécurité Moodle

  • Enregistrez votre site auprès de Moodle.org :
les utilisateurs enregistrés reçoivent les alertes par courriel.

Les alertes de sécurité sont aussi publiées en ligne :

Considérations supplémentaires

Les points suivants ont également un impact sur la sécurité de votre Moodle :

  • Désactivez le paramètre opentogoogle, en particulier pour les sites avec des élèves de moins de 12 ans
  • Utilisez SSL et activez le paramètre httpslogins
  • Désactivez l'accès aux invités
  • Mettez des clefs d'inscription pour tous les cours
  • Utilisez de bons mots de passe
  • Activez le paramètresecureforms
  • Donnez un mot de passe à l'utilisateur root de MySQL
  • Désactivez l'accès à MySQL par le réseau

Most secure/paranoid file permissions

Assuming you are running this on a sealed server (i.e. no user logins allowed on the machine) and that root takes care of the modifications to both moodle code and moodle config (config.php), then this are the most tight permissions I can think of:

1. moodledata directory and all of its contents (and subdirs, includes sessions):

owner: apache user (apache, httpd, www-data, whatever)
group: apache group (apache, httpd, www-data, whatever)
perms: 700 on directories, 600 on files

2. moodle directory and all of its contents and subdirs (including config.php):

owner: root
group: root
perms: 755 on directories, 644 on files.

If you allow local logins, then 2. should be:

owner: root
group: apache group
perms: 750 on directories, 640 on files

Think of these permissions as the most paranoid ones. You can be secure enough with less tighter permissions, both in moodledata and moodle directories (and subdirectories).

Voir aussi