WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:services:office365

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
wiki:services:office365 [2015/09/10 18:01]
Thithib [Office 365]
wiki:services:office365 [2020/06/27 18:16] (Version actuelle)
Ligne 4: Ligne 4:
  
 <WRAP center round info> <WRAP center round info>
-Les inscription sont basées sur un script en ruby inspiré de celui qui permet d'obtenir des licences [[wiki:services:dreamspark]]+Les inscription étaient basées sur un script en ruby inspiré de celui qui permet d'obtenir des licences [[wiki:services:dreamspark]]
 +Le service est maintenant basé sur l'API (Azure) qu'offre Microsoft pour inscrire des étudiants
 </WRAP> </WRAP>
  
-===== Installation =====+===== Offre : Office 365 proplus for students =====
  
-Le script Dreamspark utilise **selenium**, et a donc besoin d'un navigateur pour fonctionner. Il tourne sur la même openVZ que Dreamspark (vm n° 138 sur spirit), qui a besoin d'une IP publique car le https ne passe pas par nos proxys.+Installation des outils suivants sur 5 PC (ou macs), 5 tablettes et 5 téléphones : 
 +  * Word 
 +  * Excel 
 +  * PowerPoint 
 +  * Outlook 
 +  * OneDrive for Business 
 +  * OneNote 
 +  * Publisher (PC only) 
 +  * Skype for Business 
 +  * Access (PC only) 
 + 
 +Bonus : 
 +  * 1 TB sur OneDrive 
 +  * Office Online (permet d'utiliser Word, PowerPoint, Excel et OneNote en ligne) 
 + 
 + 
 +===== Solution actuelle ===== 
 + 
 +==== Windows Server 2016 ==== 
 + 
 + 
 +La solution tourne dorénavant sur Windows Server 2016, sur Atlantis. On peut passer par noVNC pour se connecter sur la VM. Cependant, si vous avez des problèmes avec l'interface, vous pouvez encore vous connecter dessus via RDP en utilisant remmina ou un autre logiciel. 
 + 
 +<WRAP center round important 60%> 
 +Le serveur Windows ne dispose pas d'interface graphique ! Il ne donne accès qu'à une invite de commande. N'hésitez pas à utiliser la documentation de Powershell avant de faire quoi que ce soit. 
 +</WRAP> 
 + 
 + 
 +Pour pouvoir lancer le site Web, exécutez le binaire httpd.exe : 
 + 
 +<code> 
 +C:\Apache24\bin\httpd.exe 
 +</code> 
 + 
 +Mais on préfère faire en sorte que ce soit automatique : 
 + 
 +On installe le service Apache dans windows : 
 +<code> 
 +> C:\Apache24\bin\httpd.exe -k install -n "Apache2.4" 
 +</code> 
 + 
 +Puis on met le service en autostart : 
 +<code> 
 +> sc config Apache2.4 start=auto 
 +</code> 
 +On vérifie : 
 +<code> 
 +> sc qc Apache2.4 
 +</code> 
 + 
 +Le serveur doit maintenant se lancer tout seul au démarrage de la machine 
 + 
 +Si le serveur se plein dans les logs du fait qu'il n'arrive pas à charger les libs (notamment ldap), c'est probablement que le PATH du user AUTORITE NT\Système ne possède pas le chemin vers php et ses extensions (.dll), cela peut arriver si jamais php n'est pas correctement installé. 
 +En ce cas : 
 +<code> 
 +> regedit.exe 
 +</code> 
 + 
 +Dans le registre, se rendre dans : ''HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment'', puis <color #ed1c24>ajouter</color> à la fin de la variable ''Path'' le chemin vers php et ses extensions, soit pour une installation à la racine de ''C:''
 +'';C:\php;C:\php\ext'' 
 + 
 +Vous pouvez alors relancer le service Apache et vérifier que tout fonctionne. 
 + 
 + 
 +**Fonctionnement:** 
 +On a un formulaire php qui fait la requête LDAP et vérifie que l'utilisateur existe et qu'il est bien qui il prétend être (user,mdp). 
 +Puis, le script PHP appel un script powershell qui fait les requêtes "in a microsoft way". Puis un message final apparaît sur la page utilisateur lui indiquant soit qu'il a déjà un compte soit qu'il peut se connecter sur portal.office.com.  
 + 
 + 
 + 
 +=== Installation d'OpenSSH === 
 + 
 +Le lien suivi est celui-ci : [[https://winscp.net/eng/docs/guide_windows_openssh_server|OpenSSH]]. 
 + 
 +Note : 
 +<code> 
 +powershell.exe -ExecutionPolicy Bypass -File 'C:\Program Files\OpenSSH\install-sshd.ps1' 
 +powershell.exe -ExecutionPolicy Bypass -File 'C:\Program Files\OpenSSH\install-sshd.ps1' 
 +powershell.exe -ExecutionPolicy Bypass -File 'C:\Program Files\OpenSSH\FixHostFilePermissions.ps1' 
 +powershell.exe -ExecutionPolicy Bypass -File 'C:\Program Files\OpenSSH\FixUserFilePermissions.ps1' 
 +Set-Service sshd -StartupType Automatic 
 +Set-Service ssh-agent -StartupType Automatic 
 +</code> 
 + 
 +Il est nécessaire de mettre une règle dans le parefeu. Toujours via PowerShell, on utilise : 
 + 
 +<code> 
 +New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 
 +</code> 
 + 
 +Après installation, les permissions doivent être les suivantes : 
 + 
 +<code> 
 +icacls 'C:\Program Files\OpenSSH\' 
 +      . NT SERVICE\TrustedInstaller:(I)(F) 
 +        NT SERVICE\TrustedInstaller:(I)(CI)(IO)(F) 
 +        NT AUTHORITY\SYSTEM:(I)(F) 
 +        NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F) 
 +        BUILTIN\Administrators:(I)(F) 
 +        BUILTIN\Administrators:(I)(OI)(CI)(IO)(F) 
 +        BUILTIN\Users:(I)(RX) 
 +        BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE) 
 +        CREATOR OWNER:(I)(OI)(CI)(IO)(F) 
 +        APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(I)(RX) 
 +        APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES:(I)(OI)(CI)(IO)(GR,GE) 
 +        APPLICATION PACKAGE AUTHORITY\ALL RESTRICTED APPLICATION PACKAGES:(I)(RX) 
 +        APPLICATION PACKAGE AUTHORITY\ALL RESTRICTED APPLICATION PACKAGES:(I)(OI)(CI)(IO)(GR,GE) 
 +</code> 
 + 
 +==== Quelques informations utiles ==== 
 + 
 + 
 +Pour télécharger via le proxy, il faut spécifier ceci car PowerShell utilise une version antérieure de SSL/TLS: 
 + 
 +<code> 
 +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 
 +</code> 
 + 
 +Puis, il vient : 
 + 
 +<code> 
 +wget -uri URL -Proxy http://192.168.103.61:82/ -OutFile NOM_du_FICHIER 
 +</code> 
 + 
 +Parfois le copier-collé passe mal via l'interface de Proxmox. La solution pas optimisée du tout est la suivante : 
 +  * On partage un dossier de Windows Server, on s'assurant de donner les droits nécessaires dessus 
 +  * On monte le dossier depuis son Linux/Windows 
 + 
 +Pour partager un dossier sans être très fin sur les permissions, on utilise : 
 +<code> 
 +net share DataShare=c:\Data /GRANT:Administrateur,FULL 
 +</code> 
 + 
 +Remarque : DataShare est un alias, on aurait très bien pu mettre toto. 
 +Pour monter le dossier depuis Linux, **(en supposant cifs-utils installé)** : 
 + 
 +<code> 
 +sudo mount -t cifs //192.168.103.166/DataShare /point/de/montage -o username=Administrateur,password=LE_MOT_DE_PASSE,uid=olivier,gid=olivier,rw,iocharset=utf8,file_mode=0777,dir_mode=0777 
 +</code> 
 + 
 +Pour supprimer le partage actif : 
 + 
 +<code> 
 +net share NOM_DU_POINT_DE_MONTAGE /delete 
 +</code> 
 + 
 +Pour voir la liste des partages actifs : 
 +<code> 
 +net share 
 +</code> 
 + 
 + 
 +===== Ancienne Solution ===== 
 + 
 +Une nouvelle solution a été implémenté car l'interface graphique de microsoft évolué trop souvent pour que le script sélénium offre une solution stable. 
 + 
 +La solution tourne sur une machine virtuelle Windows 10 activée avec une licence de 4 ans MSDNA. 
 +Le code utilisé est disponible sur le gitlab dans le groupe microsoft. 
 + 
 +Un fichier README est disponible sur le bureau de la machine pour guider l'administrateur vers les bons dossiers 
 + 
 +Un serveur apache a été installé dans C:\\Apache24. Pour le lancer, executer: 
 +<code> C:\Apache24\bin\httpd.exe -k start </code> 
 +Le répertoire contenant le projet git est dans C:\\Apache24\htdocs\office-minet. 
 + 
 +PHP a été installé dans C:\\php. 
 + 
 +Il a fallu installer les composants powershell nécessaire pour communiquer avec Ofice 365. https://docs.microsoft.com/fr-fr/office365/enterprise/powershell/connect-to-office-365-powershell 
 + 
 +Il faut d'ailleurs activer l'éxecution du powershell: 
 +<code> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser </code> 
 + 
 + 
 +===== Très Ancienne solution ===== 
 + 
 +Le script Dreamspark utilise **selenium**, et a donc besoin d'un navigateur pour fonctionner. Il tourne sur la même CT que Dreamspark, qui a besoin d'une IP publique car le https ne passe pas par nos proxys.
 EDIT: Depuis un certain temps le service tourne dans une KVM séparée à cause de quelques problèmes rencontrés avec xvfb. EDIT: Depuis un certain temps le service tourne dans une KVM séparée à cause de quelques problèmes rencontrés avec xvfb.
  
Ligne 68: Ligne 244:
  
 Envoyer un mail (peu importe le contenu du mail) à office@minet.net avec son adresse telecom. Envoyer un mail (peu importe le contenu du mail) à office@minet.net avec son adresse telecom.
-  +
wiki/services/office365.1441900893.txt.gz · Dernière modification: 2020/06/27 18:15 (modification externe)