Académique Documents
Professionnel Documents
Culture Documents
Version : 1.0
Auteurs : Frédéric Chiaroni (Edunao), Nicolas Humann (Exakis), Romain Lacour (Exakis) , Philippe Beraud (Microsoft
France), Nicolas Frindel (Microsoft France)
© 2015 Microsoft France. Tous droits réservés. Reproduction autorisée pour un usage à des fins commerciales ou
non commerciales à condition d'en indiquer la source.
Ce document est mis à disposition sous licence « Paternité - Partage à l'Identique 3.0 non transposé ». Pour voir une
copie de cette licence, visitez http://creativecommons.org/licenses/by-sa/3.0/deed.fr ou écrivez à Creative Commons,
444 Castro Street, Suite 900, Mountain View, California, 94041, USA
Les informations contenues dans ce document représentent le point de vue actuel de Microsoft France sur les sujets
traités à la date de publication. Etant donné que Microsoft doit s’adapter aux conditions changeantes du marché, ces
informations ne doivent pas être interprétées comme un engagement de la part de Microsoft, et Microsoft n’est pas
en mesure de garantir l’exactitude de toute information présentée après la date de publication.
MICROSOFT NE DONNE AUCUNE GARANTIE EXPRESSE OU IMPLICITE DANS CE DOCUMENT.
Les autres noms de produits ou de sociétés cités dans ce document peuvent être des marques de leurs propriétaires
respectifs.
Note Pour plus d’information, consulter l’article Microsoft TechNet suivant: GUIDE DE MISE EN ROUTE POUR
LE DÉPLOIEMENT D’OFFICE 365 PROPLUS5.
Note Pour plus d’information sur les différents types de licences proposés par Office, vous pouvez
notamment consulter les pages CHOISISSEZ UNE OFFRE6 et OFFRES ET TARIFS OFFICE 365 ÉDUCATION7.
Exchange Online. Exchange Online est le service d’e-mail, de calendrier et de contact hébergé
dans le Cloud permettant un accès sécurisé depuis n’importe quel lieu ou périphérique.
SharePoint Online et OneDrive Entreprise. SharePoint Online est le service Cloud
d’hébergement de sites collaboratifs permettant aux employés, partenaires, clients, enseignants
ou apprenants de travailler ensemble au travers de portails ou de réseaux sociaux contrôlés
comme Yammer. OneDrive Entreprise est un espace de stockage personnel de grande capacité
hébergé dans le Cloud Microsoft permettant aux utilisateurs d’avoir accès à leurs documents
partout et de faciliter leur partage.
Lync Online. Lync Online est le service Cloud de communication instantanée et de réunion en
ligne permettant aux personnes d’échanger rapidement et de manière efficace en temps réel par
la voix, le texte et la vidéo.
1
Moodle : https://moodle.org/
2
Microsoft Office 365 : https://products.office.com/fr-fr/business?legRedir=true&CorrelationId=cd5bede1-e0e0-4500-ba6a-
c1f072bfe749
3
OVERVIEW OF OFFICE 365 PROPLUS: http://technet.microsoft.com/fr-fr/library/gg702619(v=office.15).aspx
4
OFFICE 365 PLAN OPTIONS: http://technet.microsoft.com/fr-fr/library/office-365-plan-options.aspx
5
GETTING STARTED GUIDE FOR DEPLOYING OFFICE 365 PROPLUS : http://technet.microsoft.com/en-us/library/jj839718(v=office.15)
6
CHOISISSEZ UNE OFFRE : https://products.office.com/fr-fr/business/compare-office-365-for-business-plans
7
OFFRES ET TARIFS OFFICE 365 ÉDUCATION : http://products.office.com/fr-FR/academic/compare-office-365-education-plans?omkt=fr-
FR
Avec près de 80 millions d’utilisateurs dans le monde, Moodle a déjà largement contribué à améliorer la
gestion des formations. Combiné avec Office 365 qui est largement présent et utilisé dans le monde de
l’Education - grâce notamment à ces outils de productivité de niveau Entreprise et aux bénéfices apportés
par Office 365 ProPlus – Moodle devient beaucoup plus efficace.
Au travers de plug-ins développés par Microsoft et mis à disposition avec leur code source complet sous
licence libre sur la forge GitHub9, Moodle peut être étendu pour tirer profit des services avancés de
collaboration qui sont fournis par la plateforme Office 365 et ainsi proposer aux étudiants et aux
enseignants une expérience d’utilisation sans commune mesure – ce qui correspond parfaitement à leurs
attentes.
Microsoft est engagé dans les solutions logicielles Open Source mettant en évidence le meilleur d’Office
365. Les plug-ins Moodle open-source apportent un nombre conséquents d’avantages incluant :
Accès facile. Vous accédez aux services de Moodle avec les même identifiant et mot de passe
que ceux que vous utilisez pour accéder à Office 365. Moodle est désormais accessible depuis le
lanceur d’applications d’Office 365 – ce qui signifie qu’il est désormais à quelques clics de vos
applications Office 365 favorites telles que Delve, Outlook, SharePoint et plus encore…
Travail hors-ligne. Les cours Moodle peuvent désormais inclure des documents Office pouvant
être édités sur n’importe quel terminal – même lorsque l’utilisateur ne dispose pas de connexion
Internet.
Accès depuis un Mobile. Les évènements de calendrier Moodle peuvent être synchronisés avec
Office 365 et être consultés depuis n’importe quel terminal mobile supportant Exchange –
exécutant iOS, Android et Windows.
Prêt pour l’enseignement. Les enseignants, les établissements scolaires et universitaires
peuvent intégrer les lectures interactives Office Mix10 au sein de leurs cours Moodle, gérer les
affectations et soumissions Moodle au travers de OneNote11, et stocker les documents de cours
Moodle sur OneDrive12.
Objectifs de ce document
L’un des objectifs de ce document est de décrire comment l’intégration de ces deux plateformes
fonctionne et comment la réaliser avec la configuration associée des différents plug-ins.
Aussi, nous profitons de la mise en œuvre de cette solution complète pour montrer comment la
plateforme Microsoft Azure13 est un candidat idéal à l’hébergement de la plateforme Moodle et son
intégration avec Office 365.
Note Microsoft Azure est la plateforme Cloud de Microsoft fournissant des services d’hébergements de
ressources informatiques, de stockage de données et de mise en réseau à destination des applications. Celle-ci
permet de bénéficier de ces services à la demande et de ne payer que ce qui est consommé tout en profitant de
capacités quasiment infinies.
8
Office 365 Community web site: http://community.office365.com/en-us/default.aspx
9
MSOpenTech/o365-moodle : https://github.com/MSOpenTech/o365-moodle
10
Office Mix : https://mix.office.com/
11
OneNote : http://www.microsoft.com/fr-fr/education/products/onenote/default.aspx#fbid=1jcPkOcMmIG
INTRODUCING ONENOTE CLASS NOTEBOOKS—A FLEXIBLE DIGITAL FRAMEWORK FOR TEACHING AND LEARNING :
12
http://blogs.office.com/2014/10/07/introducing-onenote-class-notebooks-flexible-digital-framework-teaching-learning/
13
Microsoft Azure : http://azure.microsoft.com/fr-fr/overview/what-is-azure/
Dans ce document, nous allons détailler l’ensemble des étapes de configuration de la solution, à savoir :
Configuration de l’environnement Microsoft Azure permettant d’héberger notre instance de
Moodle sous forme de machine virtuelle.
Configuration de l’environnement Office 365 et notamment des utilisateurs pour leur attribuer
une boîte aux lettres, des sites SharePoint et l’ensemble des services fournis par la plateforme.
Installation et configuration de l’instance Moodle et des plug-ins permettant l’intégration des
services Office 365.
Note Vous pouvez consulter à titre de complément le document OFFICE 365 PLUGINS FOR MOODLE 15.
Note importante Les procédures décrites ainsi que les lignes de commandes et exemples de script
proposés dans ce contexte sont fournis en l’état et à des fins de test sur un environnement ad ’hoc. Ils doivent
dans tous les cas être testés, adaptés et validés avant tout usage en environnement de production.
14
Azure Active Directory : http://azure.microsoft.com/fr-fr/services/active-directory/
15
Office 365 Plugins for Moodle : https://msopentech.com/wp-content/uploads/Office-365-plugins-for-Moodle-documentation.pdf
Par ailleurs :
Le service Machines Virtuelles permet de créer ses propres réseaux virtuels17 dans Azure
et d’avoir un contrôle précis des services exposés sur Internet au travers de la
configuration des points de terminaison.
Le service permet aussi d’ajouter facilement du stockage18 sur les machines virtuelles en
fonction du besoin applicatif.
Abonnement Office 365. L’environnement de test intègre de facto un compte Office 365 pour
bénéficier de l’ensemble des services proposés.
Nous disposons de licences E3 qui nous permettent d’avoir l’intégralité des fonctionnalités et un
accès à la suite Office ProPlus que nos utilisateurs peuvent installer sur leur poste de travail.
Azure Active Directory. Nous avons lié l’annuaire Azure Active Directory utilisé par notre
compte Office 365 à notre souscription Azure afin de bénéficier d’une intégration complète de
16
Azure Machines virtuelles : http://azure.microsoft.com/fr-fr/services/virtual-machines/
17
Azure Virtual Network : http://azure.microsoft.com/fr-fr/services/virtual-network/
18
Azure Stockage : http://azure.microsoft.com/fr-fr/services/storage/
Avant de commencer, vous devez disposer d’un abonnement Microsoft Office 365 et d’un
abonnement Azure. Pour plus d’informations, contactez votre représentant Microsoft.
A ce stade, nous supposons que vous disposez d’un abonnement Office 365 actif.
4a6d-9F85-2C104BDAE8B4&dl=ENTERPRISEPACK&culture=fr-FR&country=FR&ali=1#0
Dans le cadre de notre environnement de test, nous créons 4 utilisateurs : Enseignant Martin, Etudiant 1,
Etudiant 2, Etudiant 3, chacun avec une licence Office 365 E3.
Pour créer des utilisateurs, procéder comme suit :
1. Naviguer ver le portail de gestion Office 365 à l’adresse https://portal.office.com.
2. Se connecter au portail avec un compte administrateur de votre abonnement Office 365.
4. Rentrer les informations du compte à créer dans détails et cliquer sur Suivant.
6. On affecte une licence E3 à cet utilisateur pour qu’il ait l’ensemble des fonctionnalités Office 365
à sa disposition. Cocher les cases correspondantes dans attribuer des licences et cliquer sur
Suivant.
7. Dans envoyer des résultats par courrier électronique, spécifier une adresse e-mail sur laquelle
l’utilisateur recevra le mot de passe qui aura été généré par la plateforme. Vous pouvez forcer le
changement de mot de passe à la première connexion. Cliquer sur Créer.
Note Pour de plus amples informations sur ces scénarios et leur modalité de mise en œuvre dans
différents types d’environnement, vous pouvez consulter les livres blancs AZURE AD/OFFICE 365 SINGLE SIGN-ON
WITH AD FS IN WINDOWS SERVER 2012 R2 et AZURE AD/OFFICE 365 SINGLE SIGN-ON WITH SHIBBOLETH 2 . Ces livres blancs
sont disponibles en téléchargement à l’adresse http://aka.ms/aadpapers.
Passons au compte « API System ». Vous pouvez lui donner le nom que vous souhaitez. Pour les besoins
de notre illustration, nous créons le compte moodleapi@contoso123.fr.
Pour la création de compte, vous pouvez suivre la même procédure que celle illustrée à la section
précédente pour les utilisateurs. Il convient par contre d’accorder cette fois les autorisations
administrateur au compte lorsque cela vous est demandé.
Il ne faut pas attribuer de licence E3 à ce compte dans la mesure où ce dernier n’a pas besoin de disposer
d’une boîte aux lettres ou des autres services Office 365.
A ce stade, nous supposons que vous disposez d’un abonnement Azure actif.
20
EVALUATION D’UN MOIS GRATUITE : http://azure.microsoft.com/fr-fr/pricing/free-trial/
4. Quand votre navigateur Internet vous le propose, cliquer sur Exécuter (ou Run comme illustré ici
selon la langue choisie) pour démarrer l’installation des modules.
Le dialogue Web Platform Installer 5.0 s’ouvre.
5. cliquer sur Installer (ou Install comme illustré ici selon la langue choisie) pour continuer.
7. A l’issue de l’installation, cliquer sur Finir (ou Finish comme illustré ici selon la langue choisie)
pour fermer l’assistant Web Platform Installer 5.0.
Add-AzureAccount
3. La fenêtre suivante apparaît. Entrer l’adresse e-mail associée à votre souscription Azure et cliquer
sur Continuer.
Cette fenêtre apparaît seulement si l’adresse e-mail spécifiée existe à la fois dans la base de
comptes Microsoft et dans les comptes professionnels (fournis au travers d’Azure Active
Directory).
5. Renseigner le mot de passe associé au compte et cliquer sur Continuer.
21
Azure Cloud Services : http://azure.microsoft.com/fr-fr/services/cloud-services/
22
Portail de gestion Microsoft Azure : https://manage.windowsazure.com
23
Azure Script Center : http://azure.microsoft.com/en-us/documentation/scripts/
Les principales actions du script sont détaillées dans les parties suivantes.
Pour la création de réseaux virtuels dans Azure, cela passe par des fichiers de configuration au format
XML qui contiennent l’ensemble des configurations réseau d’une souscription.
La démarche de configuration est la suivante :
1. Exporter la configuration réseau de la souscription au cas où il y aurait déjà des réseaux virtuels
configurés.
2. Si le fichier exporté est vide, créer la structure de base du fichier de configuration XML.
3. Vérifier que le réseau virtuel que l’on souhaite ajouter n’existe pas déjà.
4. Rajouter les informations du réseau virtuel au fichier XML de configuration avec la configuration
des sous-réseaux.
5. Importer le fichier de configuration sur la souscription pour mettre à jour la configuration réseau.
L’exportation de la configuration réseau se fait avec la commande Get-AzureVNetConfig suivante :
Le fichier de configuration pour les réseaux virtuels nécessaires à notre plateforme Moodle est le suivant :
La configuration de la souscription avec le fichier XML complet s’effectue avec la commande Set-
AzureVNetConfig suivante :
La création du groupe d’affinité est réalisée avec une simple commande PowerShell New-
AzureAffinityGroup comme suit :
La création du service Cloud qui contiendra nos machines virtuelles pour l’environnement de test
s’effectue à l’aide d’une commande PowerShell.
L’important est bien de rattacher notre service Cloud au groupe d’affinité que nous venons de créer grâce
au paramètre –AffinityGroup.
$credential = Get-Credential -Message "Please provide the administrator credentials for the virtual machines"
$username = $credential.GetNetworkCredential().username
$password = $credential.GetNetworkCredential().password
La machine virtuelle est enfin créée avec la commande New-AzureVM en spécifiant le service Cloud dans
lequel déployer cette dernière, la configuration que nous venons juste de créer ainsi que le réseau virtuel
auquel cette machine virtuelle doit être connectée.
Nous répétons les mêmes opérations pour la machine virtuelle destinée à héberger le site Moodle.
Les points de terminaison permettent d’exposer certains services disponibles sur nos machines virtuelles
directement sur Internet.
Moodle étant un site Web, nous devons exposer les services HTTP et HTTPS pour que notre site Moodle
soit accessible sur Internet.
Par défaut sur des machines Linux, Azure crée un point de terminaison pour exposer les services SSH sur
Internet. Cela permet d’accéder aux environnements Linux hébergés dans Azure sans avoir à monter
d’infrastructure VPN avec Azure en passant directement par l’IP publique du service Cloud utilisé.
Pour créer des points de terminaison sur une machine virtuelle, il convient d’exécuter l’ensemble
d’actions suivant :
1. Récupérer la machine virtuelle souhaitée avec la commande Get-AzureVM.
2. Ajouter le point de terminaison avec la commande Add-AzureEndpoint.
3. Mettre à jour la machine virtuelle avec la commande Update-AzureVM.
Dans le script New-MoodleEnvironment.ps1 proposé, l’ensemble de ces actions est réalisé avec le bloc de
commande suivant :
Une fois toutes ces actions réalisées, notre environnement Azure et nos machines virtuelles sont prêtes à
recevoir l’installation de Moodle et de la base de données MySQL.
Pour connaître le nom de domaine de votre plateforme Azure, il vous suffit de vous connecter au portail
de gestion Microsoft Azure. Une fois connecté au portail, vous devez vous rendre dans le service Cloud
qui héberge votre plateforme Moodle.
Sur la page de tableau de bord du service Cloud, tout en bas, vous trouverez comme illustré ci-après le
nom DNS du service accessible sur Internet, s’agissant du nom qui pointe sur l’adresse IP publique
attribuée à votre service Cloud par Microsoft Azure.
2. Saisir les nom d’utilisateur et mot de passe suivants lorsque vous y êtes invité par le serveur :
Nom d’utilisateur : « moodleadmin »
Mot de passe : « Contoso123! »
3. Passer en mode super-utilisateur (root) avec la commande suivante :
moodleadmin@m2o-moodle:~$ sudo –s
Note La version du serveur HTTP Apache installée avec cette distribution Linux est la version 2.4.10.
Pour installer à présent le langage de script PHP et ses extensions, procéder comme suit :
1. Depuis la connexion SSH précédente, installer le langage de script PHP via la commande
suivante :
Note La version du langage de script PHP installée avec cette distribution Linux est la version 5.5.12.
Note L’extension PHP cURL facilite la communication avec un grand nombre de serveurs via de
nombreux protocoles et permet notamment l’échange de données entre plateformes Moodle via le réseau
MNet25.
Note L’extension PHP XML-RPC permet de faire des appels de procédures sur un ordinateur distant.
Note L’extension PHP INTL permet d’internationaliser les scripts PHP (notamment pour les nombres,
dates et heures).
25
MNET : https://docs.moodle.org/27/en/MNet
Note L’extension PHP LDAP active la prise en charge du protocole LDAP par PHP. LDAP est un protocole
de communication qui permet l’interrogation et la modification de services d’annuaire.
Note L’extension PHP MySQL permet la connexion à des bases de données MySQL à partir de scripts
PHP.
Pour installer les paquets complémentaires requis par Moodle, procéder comme suit :
1. Toujours depuis la connexion SSH précédente, installer TeX Live.
Note TeX Live fournit un environnement LaTeX. LaTeX est un système de composition de documents et
d’édition d’équations mathématiques. Il est très utilisé dans le milieu scientifique. LaTeX est requis par les plugins
d’édition standards de Moodle.
Note Aspell est un correcteur orthographique requis par les plugins d’édition standards de Moodle.
3. Installer NTP.
Note NTP (Network Time Protocol) est un protocole qui permet de synchroniser, via un réseau
informatique, l'horloge locale d'ordinateurs sur une heure de référence.
4. Installer Sendmail.
26
OPCACHE : https://docs.moodle.org/27/en/OPcache
De la même manière que nous venons d’installer le serveur HTTP, il serait possible d’installer directement
Moodle en saisissant les 2 commandes suivantes. Cela est toutefois déconseillé car nous ne maîtriserions
alors pas les versions de Moodle (ex. : 2.7 vs. 2.8) et de SQL (ex. : MySQL vs. PostgreSQL) installées. Celles-
ci seraient en effet dépendantes de la distribution Linux retenue.
root@m2o-moodle:~$ cd /var/www/html
root@m2o-moodle:/var/www/html$ apt-get install moodle
Nous allons donc installer Moodle à partir des versions disponibles sur le site officiel de Moodle27.
Pour cela, procéder comme suit :
1. Toujours depuis la connexion SSH précédente, créer un dossier src.
Note Il s’agit du dossier dans lequel sera téléchargé Moodle à l’étape suivante.
Note A l’heure où nous écrivons ces lignes, la version la plus récente de Moodle est la version 2.8,
publiée initialement le 10 novembre 2014. La version 2.7 a été initialement publiée le 12 mai 2014. Nous avons
choisi d’installer la version 2.7 de Moodle dans la mesure où il s’agit d’une version LTS (Long-Term Support)
c.à.d. qu’elle sera maintenue par Moodle pendant 3 ans (au lieu d’un an et demi pour les versions classiques de
Moodle). En outre, tous les plugins développés par la communauté Moodle ne sont pas encore compatibles avec
la version 2.8 de Moodle.
Note Les liens de téléchargement de la dernière version de Moodle et des versions de Moodle encore
maintenues sont respectivement disponibles dans les pages LASTEST RELEASE28 et OTHER SUPPORTED RELEASES29 du
site officiel de Moodle (Cf. lien derrière le bouton Download tgz).
Moodledata est le dossier dans lequel Moodle stocke les fichiers créés ou téléchargés depuis la
plateforme. Tous les contenus créés par les utilisateurs seront donc stockés dans ce dossier, notamment
les cours et les documents, images et vidéos hébergés sur la plateforme.
27
Site officiel de Moodle : https://moodle.org
28
LASTEST RELEASE : https://download.moodle.org/releases/latest
29
OTHER SUPPORTED RELEASES : https://download.moodle.org/releases/supported
Note Pour des raisons de sécurité, le dossier moodledata ne doit pas être accessible directement depuis
le web. Il ne doit donc pas être placé dans le dossier /var/www/.
Note moodledata est le nom par défaut de ce dossier mais il est tout à fait possible de le nommer
autrement.
Note Selon la distribution Linux utilisée, l’utilisateur Apache et le groupe Apache par défaut peuvent se
nommer www-data, nobody ou apache.
Note La commande chown (change owner) permet de changer le propriétaire du dossier tandis que la
commande chmod (change mode) permet de changer les autorisations du dossier. Ici, on ajoute (+) les droits de
lecture (r) et d’écriture (w) au dossier moodledata et à ses sous-dossiers (-R) et on fait en sorte que Moodle
conserve ces droits pour tous les fichiers qui y seront créés ou déposés, quels que soit l’utilisateur Moodle à
l’origine de cette création ou de ce téléchargement (s).
moodleadmin@m2o-mysql:~$ sudo –s
6. Saisir le mot de passe administrateur du serveur de base de données, « Contoso123! » dans notre
illustration, puis appuyer sur Entrée.
Enter password:
Note moodleadmin est le nom d’utilisateur de la machine virtuelle hébergeant le serveur Moodle.
10.0.1.4 est l’adresse IP publique de la machine virtuelle hébergeant le serveur Moodle. moodleazure est le mot
de passe avec lequel le serveur Moodle se connectera à la base de données MySQL.
5. Actualiser les autorisations d’accès à la base de données afin que les modifications récentes
soient prises en compte.
mysql> quit ;
Etant donné que l’installation du serveur MySQL a été effectuée par paquet, celui-ci est configuré en
local par défaut. Il convient donc le rendre accessible depuis le réseau virtuel qui a été mis en place entre
les deux machines virtuelles.
Pour ce faire, procéder comme suit :
1. Toujours depuis la connexion SSH précédente, éditer le fichier de configuration de la base de
données MySQL
root@m2o-mysql:~$ vi /etc/mysql/my.cnf
2. Rechercher la ligne commençant par bind-address et remplacer la valeur 127.0.0.1 par 10.0.2.4
afin d’ouvrir la base de données MySQL sur le réseau virtuel.
bind-address= 10.0.2.4
Note 10.0.2.4 est l’adresse IP publique de la machine virtuelle hébergeant le serveur MySQL.
Note La commande suivante peut être exécutée sur le serveur Moodle afin de vérifier que la base de
données MySQL est bien accessible depuis le serveur Moodle pour l’utilisateur moodleadmin que nous avons
configuré à l’étape 4. Si tout fonctionne correctement, on accède au prompt mysql> après avoir saisi le mot de
passe moodleazure.
root@m2o-moodle:~$ cd /etc/apache2/mods-enabled
root@m2o-moodle:/etc/apache2/mods-enabled$ ln -s ../mods-available/vhost_alias.load
Note La commande ln permet de créer un lien symbolique (-s) vers le fichier cible vhost_alias.load dans
le répertoire courant. Pour désactiver ultérieurement le service d’hébergement virtuel, il suffit de supprimer le
lien symbolique. Ainsi, le fichier cible n’est pas détruit et pourra être de nouveau utilisé lors d’une éventuelle
réactivation du service.
root@m2o-moodle:~$ cd /etc/apache2/sites-available
root@m2o-moodle:/etc/apache2/sites-available$ cp 000-default.vhost 030-moodle27.conf
root@m2o-moodle:/etc/apache2/sites-available$ vi 030-moodle27.conf
ServerName o2m.contoso123.fr
DocumentRoot /var/www/moodle27
10. Ajouter les lignes suivantes après le dossier racine afin de paramétrer le contrôle d’accès.
<Directory /var/www/moodle27>
Options -Indexes +FollowSymLinks +Multiviews
AllowOverride None
Allow from all
</Directory>
Note L’option -Indexes interdit l’affichage de la liste des fichiers. L’option +FollowSymLinks autorise le
suivi des liens symboliques. L’option +Multiviews autorise les variantes de fichiers (en cas de langues multiples
par exemple). Elle est facultative. La directive AllowOverride None interdit l’outrepassement des droits d’accès
au moyen de fichiers .htaccess. La désactivation de cette directive est très importante pour la sécurité d’une
plateforme Moodle. Enfin, la directive Allow from all permet aux internautes d’accéder à la plateforme depuis le
web.
11. Modifier les fichiers de journalisation (log) comme indiqué ci-dessous afin de refléter l’instance
d’hébergement virtuel.
ErrorLog ${APACHE_LOG_DIR}/error_moodle27.log
CustomLog ${APACHE_LOG_DIR}/access_moodle27.log combined
:wq
root@m2o-moodle:~$ cd /etc/apache2/sites-enabled
root@m2o-moodle:/etc/apache2/sites-enabled$ ln -s ../sites-available/030-moodle27.conf
Note L’extension de fichier .conf est indispensable afin que la configuration soit bien prise en compte.
root@m2o-moodle:/etc/apache2/sites-enabled$ cd /etc/apache2/mods-enabled
root@m2o-moodle:/etc/apache2/mods-enabled$ ln -s ../mods-available/ssl.load
root@m2o-moodle:/etc/apache2/mods-enabled$ ln -s ../mods-available/ssl.conf
root@m2o-moodle:/etc/apache2/mods-enabled$ ln -s ../mods-available/socache_shmcb.load
root@m2o-moodle:/etc/apache2/mods-enabled$ cd /etc/apache/sites-available
root@m2o-moodle:/etc/apache2/sites-available$ cp 030-moodle27.conf 030-moodle27-ssl.conf
root@m2o-moodle:/etc/apache2/sites-available$ vi 030-moodle27-ssl.conf
Note On s’appuie sur le fichier de configuration de l’hébergement virtuel que nous venons de créer.
3. Modifier la première ligne comme indiqué ci-dessous afin de faire fonctionner l’hébergement
virtuel en HTTPS.
<VirtualHost *:443>
4. Modifier les fichiers de log comme indiqué ci-dessous afin de refléter l’instance d’hébergement
virtuel SSL.
ErrorLog ${APACHE_LOG_DIR}/error_moodle27-ssl.log
CustomLog ${APACHE_LOG_DIR}/access_moodle27-ssl.log combined
SSLEngine on
SSLCertificateFile /home/moodleadmin/star_contoso123_fr.crt
SSLCertificateKeyFile /home/moodleadmin/star_contoso123_fr.key
SSLCertificateChainFile /home/moodleadmin/DigiCertCA.crt
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
:wq
root@m2o-moodle:/etc/apache2/sites-available$ cd /etc/apache2/sites-enabled
root@m2o-moodle:/etc/apache2/sites-enabled$ ln -s ../sites-available/030-moodle27-ssl.conf
8. Redémarrer le serveur HTTP Apache afin d’activer le service SSL et de prendre en compte la
nouvelle configuration.
9. Effectuer un test de configuration Apache afin de vérifier que les fichiers de configuration sont
corrects.
root@m2o-moodle:/etc/apache2/sites-enabled$ cd /var/www
root@m2o-moodle:/var/www$ chmod o+w moodle27
Note Pour des raisons de sécurité, il faut penser à retirer cette autorisation d’écriture une fois
l’installation depuis le web terminée.
2. Autoriser l’écriture dans les dossiers de plugins afin de permettre l’installation de plugins.
root@m2o-moodle:/var/www$ cd /var/www/moodle27
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data mod
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data blocks
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data auth
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data filter
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data user/profile/field
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data local
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data mod/assign/submission
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data mod/assign/feedback
root@m2o-moodle:/var/www/moodle27$ chown www-data:www-data repository
root@m2o-moodle:/var/www/moodle27$ chmod g+w mod blocks auth user/profile/field local mod/assign/submission
mod/assign/feedback repository filter
Note Cette opération doit être réalisée pour chaque type de plugins à installer. Dans le cas présent, seule est
autorisée l’écriture dans les dossiers de plugins correspondants aux types de plugins que nous avons prévus
d’installer dans le cadre de la démonstration.
Note Conserver la valeur par défaut mdl_ dans le champ Préfixe des tables.
Note 3306 est le port par défaut d’une base de données MySQL.
Note Vous pouvez également personnaliser sur cette page les autres champs du profil de
l’administrateur de la plateforme. Il sera toujours possible de modifier ces paramètres ultérieurement.
Vous devez à présent interdire au niveau du serveur Moodle la modification des fichiers de configuration
Moodle depuis le web Moodle pour des raisons de sécurité.
Si vous vous êtes déconnecté du serveur Moodle, il faut tout d’abord vous y reconnecter en répétant les
étapes 1 à 3 de la section § INSTALLATION DU SERVEUR HTTP APACHE.
Depuis la console SSH, taper les commandes suivantes pour cela :
root@m2o-moodle:~$ cd /var/www
root@m2o-moodle:/var/www$ chmod o-w moodle27
Note Le billet INTRODUCING ONENOTE CLASS NOTEBOOKS—A FLEXIBLE DIGITAL FRAMEWORK FOR TEACHING AND
30
LEARNING décrit l’usage des classeurs numériques OneNote pour l’enseignement.
30
INTRODUCING ONENOTE CLASS NOTEBOOKS—A FLEXIBLE DIGITAL FRAMEWORK FOR TEACHING AND LEARNING :
Note Une demande de confirmation de l’inscription est envoyée à l’adresse de courriel renseignée dans
le formulaire. Il est nécessaire de suivre le lien mentionné dans ce message électronique afin d’activer le compte.
Une fois le compte Moodle.org activé, nous pouvons installer les plugins Moodle.
4. Cliquer sur Installer des plugins à partir du répertoire des plugins Moodle. On est alors
redirigé sur le site Moodle.org.
7. Saisir Office 365 dans le champ de recherche et cliquer sur Search plugins.
Note Pour des informations complémentaires sur le rôle de chacun des plugins listés ci-dessus, vous
pouvez vous reporter à l’ANNEXE A JEU DE PLUGINS MICROSOFT.
Note Il n’est pas possible de mettre à jour la base de données avant d’avoir installé tous les plugins car
certains sont requis par d’autres.
14. Une fois le dernier plugin installé, cliquer sur Mettre à jour la base de données maintenant.
31
Résultats de la requête Office 365 sur Moodle.org : https://moodle.org/plugins/search.php?
s=Office+365&search=Search+plugins
Moodle affiche alors la liste des nouveaux réglages disponibles suite à l’installation des nouveaux
plugins. Il n’est pas nécessaire d’effectuer ces réglages maintenant. Il suffit de se rendre à l’adresse
https://o2m.contoso123.fr pour revenir à la page d’accueil de la plateforme Moodle et ignorer pour
l’instant ces réglages.
cron est un programme qui permet d’exécuter automatiquement des scripts ou des commandes à une
date et une heure spécifiées à l’avance. Moodle s'appuie dessus afin de programmer ses opérations de
maintenance.
Pour démarrer cron, procéder comme suit :
1. Si vous vous êtes déconnecté du serveur Moodle, il faut tout d’abord vous y reconnecter en
répétant les étapes 1 à 3 de la section § INSTALLATION DU SERVEUR HTTP APACHE.
2. Editer le fichier de configuration de cron.
root@m2o-moodle:~$ crontab -e
Note Cette commande va exécuter le script PHP cron de Moodle toutes les 10 minutes.
:wq
Note Pour des informations complémentaires, vous pouvez consulter la documentation Moodle
associé33.
33
OFFICE 365 : https://docs.moodle.org/27/en/Office365
6. Cliquer sur Continuer (ou Continue dans notre illustration selon la langue choisie).
La deuxième étape de configuration de l’authentification unique (SSO) entre Moodle et Office 365
consiste à déclarer notre application Moodle dans notre annuaire Azure AD afin de lui attribuer certaines
autorisations.
Procéder comme suit :
1. Se connecter au portail de gestion Microsoft Azure à l’adresse https://manage.windowsazure.com
si tel n’est pas déjà le cas.
2. Sélectionner ACTIVE DIRECTORY dans le volet de gauche et sélectionner votre abonnement
Azure.
5. Sur la page Parlez-nous de votre application, vous devez spécifier un nom pour votre
application and son type.
Sélectionner APPLICATION WEB ET/OU API WEB, puis cliquer sur l’icône flèche dans le coin en
bas à droite.
Une fois l’application créée, il nous suffit d’effectuer quelques étapes de configuration afin d’autoriser
Moodle à venir consommer les identités Office 365.
Pour cela, procéder comme suit :
1. Dans le portail de gestion Microsoft Azure, sélectionner l’application Moodle qui vient d’être
créée.
2. Cliquer sur CONFIGURER.
5. Copier / Coller les valeurs de Client ID et Client Secret et insérer les dans la page de
configuration OpenID Connect de votre instance Moodle et cliquer sur Enregistrer les
modifications.
Portail Azure
6. De nouveau, dans le portail de gestion Microsoft Azure, dans autorisations pour d'autres
applications, cliquer sur Ajouter une application, puis sur le symbole « + » à droite d’Office 365
Exchange Online et Office 365 SharePoint Online
7. Valider.
8. Dans Autorisations déléguées, pour Office 365 Exchange Online, sélectionner :
a. Read users calendars
b. Have full access to users calendars
10. Dans Autorisations d’application pour Windows Azure Active Directory, sélectionner :
a. Read directory data
11. Dans Autorisations déléguées pour Windows Azure Active Directory, sélectionner :
a. Read directory data
b. Enable sign-on and users profiles
c. Access your organization’s directory
Une fois l’application Moodle configurée, il ne reste plus qu’à attribuer les utilisateurs à l’application afin
de leur autoriser l’accès.
Procéder comme suit :
1. Sélectionner votre annuaire Azure AD Contoso123.
2. Cliquer sur APPLICATIONS.
3. Sélectionner votre application
5. Pour synchroniser les utilisateurs Azure AD avec l’instance Moodle, cocher Sync users from
Azure AD.
6. Pour la partie Application Permissions, cliquer sur Update pour vérifier que les autorisations
ont bien été positionnées sur Azure AD.
7. Dans AAD Tenant, indiquer le domaine par défaut de l’abonnement. Par exemple, si
l’abonnement est contoso123.onmicrosoft.com, indiquer « contoso123.onmicrosoft.com ».
8. Dans OneDrive for Business URL, indiquer le nom complet qualifié DNS (FQDN) des espaces
OneDrive Entreprise. Si le locataire SharePoint Online est contoso123.sharepoint.com comme
dans notre illustration, indiquer « contoso123-my.sharepoint.com ».
9. Cliquer sur Enregistrer les modifications.
11. Si le site n’existe pas dans l’environnement SharePoint cible, Moodle créera automatiquement le
site. Pour cela, il est nécessaire que votre compte « API System » configuré à la section §
CRÉATION DU COMPTE « API SYSTEM » POUR INTÉGRATION À MOODLE soit administrateur du site parent
ou de la collection de site cible.
12. Une fois que Moodle a terminé la création du site dans SharePoint, l’élément passe en vert dans
la page de configuration de Moodle. L’intégration des plugins Office 365 est terminée.
13. Cliquer sur Enregistrer les modifications.
Intégration OneNote
Le jeu de plugins Microsoft Services offre une intégration complète entre Moodle et OneNote pour
améliorer la gestion des devoirs, des soumissions aux devoirs par les étudiants ainsi que les
commentaires des enseignants sur les devoirs rendus.
Cette section s’intéresse à sa mise en œuvre au sein de notre environnement de test.
34
MICROSOFT SERVICES : https://docs.moodle.org/27/en/MicrosoftServices#Introduction
A l’issue de cette étape, l’installation, la configuration et l’intégration avec Office 365 sont maintenant
terminées.
2. L’utilisateur arrive sur la page d’accueil qui présente l’ensemble des applications Office 365
auxquelles il a accès.
3. En cliquant sur le lanceur d’applications en haut à gauche de la fenêtre, l’utilisateur peut accéder
à d’autres applications en cliquant sur Mes Applications.
5. Il est possible d’épingler l’application dans le lanceur pour disposer d’un accès rapide à Moodle
depuis Office 365.
3. Nous sommes automatiquement redirigés vers le portail de connexion Azure AD. L’utilisateur
saisit son identifiant (adresse e-mail) Office 365 ainsi que le mot de passe associé.
Une fois la synchronisation activée, tous les nouveaux évènements qui seront affectés à cet utilisateur
seront remontés automatiquement dans le calendrier Office 365.
35
Azure Applications web : http://azure.microsoft.com/fr-fr/services/app-service/web/
36
Azure Base de données SQL : http://azure.microsoft.com/fr-fr/services/sql-database/