tag:blogger.com,1999:blog-41910713354357713942024-03-19T11:11:04.621+01:00Vous avez dit "Unifiées" ?Un blog sur les Communications Unifiées... vulgarisation, technique, informations sur OCS/Lync, Exchange, la VoIP/ToIPBenoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.comBlogger106125tag:blogger.com,1999:blog-4191071335435771394.post-70158019058695660152016-05-01T10:42:00.001+02:002016-05-01T10:49:13.813+02:00Convertir un DAG classique en DAG sans point d'administration (et vice-versa)Bonjour,<br />
<br />
<br />
"It's been a while" (encore :)), comme le disent nos amis anglosaxons...<br />Aujourd'hui je voulais partager une technique permettant de convertir des groupes de disponibilité de base de données (autrement dit des Database Availability Groups, ou DAG) Exchange d'un mode "classique" (avec point d'administration, adresse IP + enregistrement DNS + objet ordinateur dans l'AD) à un mode "sans point d'administration".<br />Comme vous le savez, ce mode est supporté et <b><u>recommandé </u></b>depuis Exchange Server 2013 SP1/CU4 dès lors que le système d'exploitation utilisé est à la version Windows Server 2012 <b>R2 </b>ou ultérieure (rappel: il n'y a pas de version "ultérieure" supportée pour l'instant puisque Windows Server 2016 est toujours en Preview).<br />Les DAG sans point d'administration sont 200% recommandés pour des raisons très simples:<br />
<ol>
<li>Ils permettent d'éviter l'utilisation d'une ou plusieurs adresses IP (groupe du Cluster),</li>
<li>Ils permettent d'éviter l'utilisation d'un objet dans l'AD (Cluster Network Object),</li>
<li>Ils permettent d'éviter l'utilisation d'un enregistrement DNS pour le nom du DAG.</li>
</ol>
Bref, il permettent d'éviter tous les problèmes potentiels liés à un Cluster Windows classique... :)<br />
<br />
La problématique de la conversion est qu'il n'est pas possible de changer de mode lorsque le Cluster Windows est déjà créé. Il s'agit d'une limitation des Clusters Windows et non d'Exchange.<br />
<br />
Le principe est donc de partir d'un DAG existant (avec X membres et Y copies) et de supprimer le Cluster Windows sous-jacent, de reconfigurer le DAG puis de recréer le Cluster Windows sous-jacent. Afin d'en arriver là il faut passer par une phase où le DAG existe toujours mais où toute la haute disponibilité des bases de données n'existe plus:<br />
<ol>
<li>Supprimer toutes les copies de bases de données,</li>
<li>Supprimer tous les membres du DAG.</li>
</ol>
Et, une fois le DAG reconfiguré, de:<br />
<ol>
<li>Rejoindre les serveurs au DAG,</li>
<li>Recréer les copies.</li>
</ol>
<div>
<div>
L'avantage de cette technique est qu'elle peut s'exécuter à chaud, sans démontage des bases de données. Cependant il existe forcément un état à un instant T pendant lequel il n'existe plus qu'une copie de chaque base de données. Même si ce temps est relativement court (quelques minutes, max 5 tout au plus - le temps de rejoindre les membres et de recréer les copies), cela peut ne pas être jugé acceptable. Si tel est le cas, la seule option est de migrer vers un nouveau DAG. Hélas, cette option n'est pas toujours possible car cela demande de réinvestir.</div>
</div>
<div>
<br /></div>
<div>
Pour les personnes ayant donc installé un DAG sur Windows Server 2012 R2 avant Exchange 2013 SP1/CU4, et/ou n'ayant pas initialement voulu "tenter" le mode "DAG sans point d'administration", un peu d'automatisation peu permettre de faire la conversion en un minimum de temps et sans erreur.</div>
<div>
<br /></div>
<div>
Voici donc un petit script permettant d'effectuer la conversion d'un DAG classique vers un DAG sans point d'administration - ce script est aussi capable de faire l'inverse (même si je trouve l’intérêt de faire le chemin inverse limité...).</div>
<div>
<br /></div>
<div>
Le script prend soin de récupérer les paramètres existants du DAG et des copies:<br />
<br />
<ul>
<li>mode DAC (DatacenterActivation DagOnly)</li>
<li>réseaux du DAG (Database Availabiltiy Group Networks)</li>
<li>désactivation puis restauration du Circular Logging (ex: pour les DAGs sans sauvegarde)</li>
<li>copies décalées (ReplayLagTime et/ou TruncationLagTime)</li>
<li>ordre de préférence d'activation (ActivationPreference)</li>
<li>et pour les DAGs Exchange 2016 CU1 ou +, le gestion du ReplayLagMaxDelay</li>
</ul>
</div>
<div>
<b>Utilisation:</b></div>
<div>
<br /></div>
<div>
<b>.\Convert-DatabaseAvailabilityGroup.ps1 -Identity <dagidentity> -Verbose</dagidentity></b> -- conversion vers un DAG sans point d'administration</div>
<div>
<div>
<br /></div>
<div>
ou </div>
<div>
<br /></div>
<div>
<b>.\Convert-DatabaseAvailabilityGroup.ps1 -Identity <dagidentity> -DatabaseAvailabilityGroupIpAddresses 255.255.255.255 -Verbose</dagidentity></b> -- conversion vers un DAG sans point d'administration</div>
</div>
<div>
<br /></div>
<div>
<b>A l'inverse:</b></div>
<div>
<br /></div>
<div>
<div>
.<b>\Convert-DatabaseAvailabilityGroup.ps1 -Identity <dagidentity> -DatabaseAvailabilityGroupIpAddresses 0.0.0.0 -Verbose</dagidentity></b> -- conversion vers un DAG avec point d'administration mais utilisant DHCP</div>
</div>
<div>
<br /></div>
<div>
<div>
<b>.\Convert-DatabaseAvailabilityGroup.ps1 -Identity <dagidentity> -DatabaseAvailabilityGroupIpAddresses <ip1>[, IP2, IP3...] -Verbose</ip1></dagidentity></b> -- conversion vers un DAG avec point d'administration et une ou plusieurs adresses IP statiques</div>
</div>
<div>
<br /></div>
<div>
Le script est disponible <a href="https://onedrive.live.com/redir?resid=21AD54FD70600673%21625896" target="_blank">ici</a>.<br />
<br /></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com2tag:blogger.com,1999:blog-4191071335435771394.post-80055329172215307062014-07-08T18:13:00.001+02:002014-07-08T18:40:03.099+02:00[INFO]: Un bel "oubli" de la DevTeam Exchange concernant le POP3 et l'IMAP pour des rôles Exchange 2013 consolidés<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Bonjour,</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Cela faisait <b><u>TRÈS LONGTEMPS</u></b> que je n'avais posté un petit article... Un an et demi en sous-marin chez un client et un nouveau bébé, ça occupe !</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Bref...</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Aujourd'hui je voulais vous faire partager un souci rencontré chez un client.</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Nous avons chez ce client une infrastructure Exchange Server 2013, les rôles Client Access Server et Mailbox Server sont consolidés et les services POP3 sont utilisés par quelques boîtes aux lettres applicatives.</span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Rien de bien extraordinaire donc, si ce n'est que suite à l'installation du CU5 d'Exchange 2013 le service POP3 Back-End (</span><b style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">MSExchangePOP3BE</b><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">) n'avait pas redémarré.</span><br />
<i><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: xx-small;"><br /></span></i>
<i><span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;">Coup de chance, personne n'avait redémarré le serveur, sinon cela aurait probablement "masqué" le problème sans trouver la vraie cause (et donc celui-ci aurait pu survenir à nouveau). Vous comprendrez pourquoi en lisant le reste de cet article... ;)</span></i><br />
<span style="font-size: x-small;"><b style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><u>NB</u></b><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">: je parle de CU5 ici, mais il n'est pas en cause...</span></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: large;"><b>Le problème</b></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Le service <b>MSExchangePOP3BE </b>ne démarrait pas tout simplement car le service n'arrivait pas à ouvrir le port 9995/tcp. Ce port est bien le port du service POP3 Back-End (les ports utilisés par la partie POP3 Front-End étant 110/tcp (non SSL/TLS) et 995/tcp (SSL/TLS)).</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: large;"><b>Diagnostic et identification de la cause</b></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Après un petit <b>netstat -an</b> il a vite été mis en évidence que ce port était déjà utilisé, en l’occurrence par une chose (vraiment) anodine: en tant que port source à destination d'une connexion vers un Global Catalog. Une simple connexion vers l'AD... déroutant :) ! </span><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Le service essayant de se lier à "0.0.0.0:9955", cela échoue.</span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Pourquoi est-ce arrivé ? Probablement la faute a pas de chance: lors de la mise à niveau vers le CU5, tous les services Exchange ont été arrêtés puis redémarrés. Entre temps, un processus a pris ce port, puisqu'il fait partie des ports utilisables dynamiquement dans Windows...</span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Oui... et non! Depuis Windows Server 2008 Microsoft a réduit la plage des ports dynamiques (aussi appelée plage de ports éphémères</span><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">) de </span><b style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">49152 à 65535</b><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">.</span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Cependant, et il s'agit d'un héritage d'Exchange Server 2010, </span><a href="http://social.technet.microsoft.com/wiki/contents/articles/864.configure-static-rpc-ports-on-an-exchange-2010-client-access-server.aspx" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;" target="_blank">lorsque le rôle Client Access est installé sur un serveur, la plage de ports dynamiques est modifiée pour être [6005-59530</a><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">]</span><span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">. Ce comportement a été conservé par le Setup d'Exchange Server 2013.</span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Vous pouvez consulter la plage de ports dynamiques sur vos serveurs en utilisant la commande suivante:</span><br />
<span style="font-family: Courier New, Courier, monospace;"><b style="background-color: #fff2cc;">netsh int ipv4 show dynamicport tcp</b></span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: x-small;"><b><i>(variantes avec ipv6 et udp)</i></b></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo9XxQWDhckl0NEt0riQlAtk8T7llRG03raTJutFRG8RhfkmLzu2NOIHRp6W8HEhk8U84YilwDGhtkFeHhSDGMM3UvWnW5dshaW2TI4a-Djnnl3Tcs_ZWADGkyBnuRGtpp44ma7g_1Dfzz/s1600/portranges2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo9XxQWDhckl0NEt0riQlAtk8T7llRG03raTJutFRG8RhfkmLzu2NOIHRp6W8HEhk8U84YilwDGhtkFeHhSDGMM3UvWnW5dshaW2TI4a-Djnnl3Tcs_ZWADGkyBnuRGtpp44ma7g_1Dfzz/s1600/portranges2.jpg" height="196" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">De même, la liste des exclusions (sur processus ayant réservé des ports ou exclusions permanentes):</span><br />
<span style="font-family: Courier New, Courier, monospace;"><b style="background-color: #fff2cc;">netsh int ipv4 show excludedportange protocol=tcp</b></span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: x-small;"><b><i>(variantes avec ipv6 et udp)</i></b></span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><b><i><span style="font-size: xx-small;">NB: j'ai un peu raté ma capture d'écran (ipv6 deux fois), mais cela ne change rien au principe... :P</span></i></b></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><b><br /></b></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhghMyLqSt90JzRuZeygO0_4tO4xU4HKjKyF3OzkizckOZblKsN-G4QRCjgR01vIKJtiIfzaKW1gE3sq3JIGgJqcPZGNXOlfvYPvXJXGAF-aixhaSdJrx4iRvXk7XXO30475BC2LFt6Xpy7/s1600/portranges.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhghMyLqSt90JzRuZeygO0_4tO4xU4HKjKyF3OzkizckOZblKsN-G4QRCjgR01vIKJtiIfzaKW1gE3sq3JIGgJqcPZGNXOlfvYPvXJXGAF-aixhaSdJrx4iRvXk7XXO30475BC2LFt6Xpy7/s1600/portranges.jpg" height="371" width="640" /></a></div>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><b><br /></b></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: large;"><b>La résolution</b></span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Un simple redémarrage du serveur aurait résolu le problème, mais n'aurait pas éliminé la cause et donc n'aurait pas garanti que celui-ci puisse survenir à nouveau.</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Afin de bloquer le port <b>9955/tcp</b> sur IPv4 et IPv6 il suffit d'exécuter les commandes suivantes:</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;"><b style="background-color: #fff2cc;">netsh int ipv4 add excludedportrange protocol=tcp startport=9955 numberofports=1</b></span><br />
<b><span style="background-color: #fff2cc; font-family: Courier New, Courier, monospace;">netsh int ipv6 add excludedportrange protocol=tcp startport=9955 numberofports=1</span></b><br />
<div>
<br /></div>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">Et pour ne rien oublier, en ce qui concerne le service IMAP4 Back-End (<b>MSExchangeIMAP4BE</b>):</span><br />
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;"><b style="background-color: #fff2cc;">netsh int ipv4 add excludedportrange protocol=tcp startport=9933 numberofports=1</b></span><br />
<b><span style="background-color: #fff2cc; font-family: Courier New, Courier, monospace;">netsh int ipv6 add excludedportrange protocol=tcp startport=9933 numberofports=1</span></b><br />
<div>
<br /></div>
<div>
<span style="font-family: Helvetica Neue, Arial, Helvetica, sans-serif; font-size: large;"><b>Post-mortem</b></span><br />
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Je n'ai pas trouvé d'autre cas similaires avec des services Back-End. HTTP, Transport et UM utilisent tous (que je sache) des ports inférieurs à 6005/tcp. Il est cependant toujours bon de conserver à l'esprit que cela pourrait arriver de nouveau, sur d'autres services...</span></div>
<div>
<span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;">Cependant, il semblerait que la DevTeam Exchange n'ait pas pensé à ce cas. Fait rigolo, cela ne serait pas survenu sur une installation Exchange pure "Mailbox", ni même avec Exchange Server 2010. Or, l'équipe Exchange préconise plus que fortement depuis quelques temps déjà de consolider les rôles. Certains changements d'architecture liés à Exchange Server 2013 (Front-End / Back-End).</span></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-41940467618436208142013-05-26T10:29:00.004+02:002013-05-26T10:43:52.363+02:00[INFO]: Résoudre une mauvaise conception des choses... conversion de MailUser vers Maibox... <span style="font-family: Arial, Helvetica, sans-serif;">Hier, je suis tombé un peu par hasard sur un blog où l'auteur proposait un script permettant de convertir un objet de type "<b>MailUser</b>" en "<b>Mailbox</b>". Typique lorsque l'on souhaite effectuer des migrations rapides (bascule) et éventuellement récupérer les données après...</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">D'après l'auteur, il faudrait désactiver le <b><u>MailUser </u></b>(faire un "<b>Disable-MailUser</b>") et ensuite activer la BàL ("<b>Enable-Mailbox</b>"). Il y a une époque où c'était vrai et surtout pour ceux habitués à n'utiliser que la console Exchange...</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><b><span style="color: #cc0000;">Si vous êtes dans ce cas (besoin de convertir), ne vous prenez pas la tête</span></b>, la commande "<b>Enable-Mailbox</b>" permet de directement activer les fonctionnalités de BàL Exchange sans autre forme de procès. Cerise(s) sur le gâteau: l'attribut "<b>legacyExchangeDN</b>" est préservé (chose que le bloggeur donc je parlais précédemment à oublié) ainsi que d'autres attributs (type Alias) qui sont nettoyés lors du "<b>Disable-MailUser</b>".</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<b><span style="color: #cc0000; font-family: Arial, Helvetica, sans-serif;">Notez aussi que cela fonctionne pour le "Enable-RemoteMailbox".</span></b><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiJrfw_-7Huf7U3Ln3___0sErj9EZewDceTffbWofmAHq6axb5Fk9fZk0u4tN2zLHTG7xZBKEMAgVh9c4eLzlRREJp94fcDdEfPgqDr2QhXD0OsQClYXj5FPoVNiDnRHZA-kwWNXGaAhn/s1600/2013-05-26_100909.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiJrfw_-7Huf7U3Ln3___0sErj9EZewDceTffbWofmAHq6axb5Fk9fZk0u4tN2zLHTG7xZBKEMAgVh9c4eLzlRREJp94fcDdEfPgqDr2QhXD0OsQClYXj5FPoVNiDnRHZA-kwWNXGaAhn/s640/2013-05-26_100909.png" width="640" /></span></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizFRUoVBoVSYWrMGwaZxWOa99YBMNBWzsgFPjHREwqvPl-0NXNkRInJKWAZiqzbb2bmEypPqe73fjMKns666Ew7X1unCjIJR42oJRJXUQmV__VURysUh9tE-BNaqBCm-3_uNNf3cOyfMXt/s1600/2013-05-26_101157.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizFRUoVBoVSYWrMGwaZxWOa99YBMNBWzsgFPjHREwqvPl-0NXNkRInJKWAZiqzbb2bmEypPqe73fjMKns666Ew7X1unCjIJR42oJRJXUQmV__VURysUh9tE-BNaqBCm-3_uNNf3cOyfMXt/s640/2013-05-26_101157.png" width="640" /></span></a></div>
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-751786726462416882013-03-17T22:29:00.001+01:002013-03-17T22:29:40.843+01:00[TECH]: Corriger les erreurs d'Exchange 2013 avec l'Indexation de Contenu<br />
<br />
Exchange Server 2013 est jeune, trop jeune peut-être ? :)<br />
<br />
L'autre jour j'ai rencontré un problème sur mon lab: toutes mes Mailbox Databases sont entrées en échec sur l'indexation du contenu (Content Indexing). Après avoir cherché un peu, j'ai fini par trouver que cela est un problème connu, probablement une erreur de développeur...<br />
<br />
<b>Article</b>: <b><u><a href="http://support.microsoft.com/kb/2807668">http://support.microsoft.com/kb/2807668</a></u></b> (<i>Content Index status of all or most of the mailbox databases in the environment shows "Failed"</i>).<br />
<br />
Si l'on s'en réfère à l'article, il existe en deux moyens de corriger le problème:<br />
<br />
<ol>
<li>Créer un groupe de sécurité dans l'Active Directory, nommé "<b>ContentSubmitters</b>" et de donner aux administrateurs Exchange et aux comptes d'ordinateurs Exchange l'accès "complet" au groupe - selon l'article, le groupe ne sert à rien d'autre...</li>
<li>Supprimer la référence au groupe de sécurité (qui n'existe pas par défaut, donc...) dans les fichiers de configuration WCF.</li>
</ol>
<div>
Personnellement, la résolution #1 me semble tenir plus de la bidouille qu'autre chose. D'autre part on ne peut pas dire que la méthode de résolution soit très claire... J'ai donc opté pour la solution #2 et afin d'appliquer le correctif sur tous mes futurs serveurs, j'ai donc crée un script.</div>
<div>
<br /></div>
<div>
Vous pourrez le trouver ici: <a href="http://sdrv.ms/15eH1BH">http://sdrv.ms/15eH1BH</a></div>
<div>
Il suffit de le lancer ainsi: <b>.\FixContentIndexing.ps1</b> - une fois les corrections effectuées les services adéquats seront redémarrés. L'indexation de contenu sera alors rétablie dans les 5-10 minutes suivantes.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdtQ5NVbewQcqUsu93muFR4tPBoXxADadKDUMaMhNHbtEt3TghLr_2fgMKUp31vfTIYZ8jwgR7OBuG4Q05Vx8DYeLk1kFQhZIPIFkbKINQqokLgSTBaoVOZekxrcI6pHMoMr_9eTytGHby/s1600/FixContentIndexing.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdtQ5NVbewQcqUsu93muFR4tPBoXxADadKDUMaMhNHbtEt3TghLr_2fgMKUp31vfTIYZ8jwgR7OBuG4Q05Vx8DYeLk1kFQhZIPIFkbKINQqokLgSTBaoVOZekxrcI6pHMoMr_9eTytGHby/s640/FixContentIndexing.png" width="640" /></a></div>
<div>
<br /></div>
<br />
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com2tag:blogger.com,1999:blog-4191071335435771394.post-39845456777440011002013-02-22T18:03:00.000+01:002013-02-22T18:04:14.761+01:00[TECH]: Exchange 2013 - Monitoring & ActiveSync - Attention aux restrictions éventuelles !Un petit article rapide en passant, au cas où cela vous arrive un jour...<br />
<br />
Exchange 2013 introduit le concept de boîte aux lettres de Monitoring: des boîtes aux lettres testant régulièrement l'accès aux services, permettant ainsi de remonter facilement des alertes de disponibilité via les Event Logs.<br />
<br />
Dans leur grande bienveillance, vos serveurs Exchange 2013 vont donc tenter de se connecter au Web Services, et dans ce qui va nous intéresser ici, au service Exchange Active Sync.<br />
<br />
En effet, dans des tests sur mon lab, j'avais configuré ma Stratégie ActiveSync afin de ne pas autoriser la connexion de terminaux ActiveSync non provisionnés. Le but était à l'époque de probablement tester cette stratégie pour un client (honnêtement, je ne me rappelle plus)... bref...<br />
<br />
En regardant mes Events, j'ai donc vu ceci:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI2bya6QeK7f4O9-k7ETGiCj7U2SR1urmVuFGkEe-Ln9IsOJ2tX3s3cM9y3KzE6RRSP5EJcvcoPjAGFCeLq1tb_aw3ygHnSzRUa6zt5S706aDN65qmFATO_KMmgTMXKcXXwDsfOUa4Q0mr/s1600/EAS-Monitoring-Block.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="456" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI2bya6QeK7f4O9-k7ETGiCj7U2SR1urmVuFGkEe-Ln9IsOJ2tX3s3cM9y3KzE6RRSP5EJcvcoPjAGFCeLq1tb_aw3ygHnSzRUa6zt5S706aDN65qmFATO_KMmgTMXKcXXwDsfOUa4Q0mr/s640/EAS-Monitoring-Block.png" width="640" /></a></div>
<br />
On voit au travers de cette capture d'écran que le compte <b>CORP\SM_xxxxxxxxxxx</b> (qui correspond à une boite HealthMailbox de Monitoring) est bloqué. Le message est issu de la Web App ActiveSync dans le but de prévenir un éventuel administrateur de ce fait. Le hic, c'est qu'il s'agit précisément d'une boîte aux lettres système.<br />
<br />
C'est donc en voyant cet entrée dans le journal d'évènements que je me suis rappelé de la restriction que j'avais mise sur la Stratégie ActiveSync par défaut (<b>AllowNonProvisionableDevices </b>à <b>False</b>):<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggELZqIL956vhyphenhyphenGNfriK5LXBehQ0Q7GM3br9SRs5TSxzviPqrH2ErSpk-fxKtja7_EW0fvTE02dqZysVpfi7ToFdEGbbbVoLC2rIXPI4beddyibY3MMCDvqfSVOubzD1p5ionmymx4oSwE/s1600/EAS-Monitoring-Block2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="80" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggELZqIL956vhyphenhyphenGNfriK5LXBehQ0Q7GM3br9SRs5TSxzviPqrH2ErSpk-fxKtja7_EW0fvTE02dqZysVpfi7ToFdEGbbbVoLC2rIXPI4beddyibY3MMCDvqfSVOubzD1p5ionmymx4oSwE/s640/EAS-Monitoring-Block2.png" width="640" /></a></div>
<br />
<br />
Il existe dans l'absolu plusieurs façons de résoudre ce problème:<br />
<br />
<ol>
<li><span style="background-color: #fff2cc;">Changer la stratégie par défaut et autoriser les terminaux non provisionnés, pas toujours faisable si vous les aviez bloqués pour une raison particulière...</span></li>
<li><span style="background-color: #fff2cc;">Créer une nouvelle stratégie plus permissive et l'assigner aux bâls de Monitoring avec la commande: <b>Get-Mailbox -Monitoring | Set-CASMailbox -ActiveSyncMailboxPolicy <span style="color: #990000;"><nouvellestrategiepourhealthmailboxes> </nouvellestrategiepourhealthmailboxes></span></b></span></li>
<li><span style="background-color: #fff2cc;">On peut aussi imaginer une troisième solution, que je n'ai pas testée: ajouter l'Id du pseudo-terminal associé à la BàL dans la liste des terminaux autorisés (avec Set-CASMailbox aussi).</span></li>
</ol>
<div>
Tant que je suis sur le sujet des Monitoring Mailboxes: en essayant de déterminer la cause de mon évènement ActiveSync, je me suis rendu compte que j'avais oublié de déplacer les BàL de Monitoring des Mailbox Databases créées par défaut à l'installation du rôle Mailbox. Or, je supprime toujours ces bases plutôt que de les réutiliser.</div>
<div>
<br /></div>
<div>
Lors de leur suppression, Exchange n'a pas bronché (il n'a pas mentionné qu'il restait des BàL :p): j'avais bien pensé aux BàL "User", BàL "Arbitration", BàL "PublicFolder"... Du coup, il suffit de déplacer logiquement les BàL sur d'autres Mailbox Databases, comme illustré ci-dessous:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMI9BeSbEIkZzywiqZO_i8TaKzCyryMAdWf9AemoGm_NlAvND5aqc-fy6XdcxO1pLJyD_In8KG2vUanKbgDP0w9uXjPq73am-iKXSWCgDM46kxTVl8oY_lNszKrmOCTL8BSV6os7Eprm3/s1600/EAS-Monitoring-Block3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="290" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXMI9BeSbEIkZzywiqZO_i8TaKzCyryMAdWf9AemoGm_NlAvND5aqc-fy6XdcxO1pLJyD_In8KG2vUanKbgDP0w9uXjPq73am-iKXSWCgDM46kxTVl8oY_lNszKrmOCTL8BSV6os7Eprm3/s640/EAS-Monitoring-Block3.png" width="640" /></a></div>
<div>
<br /></div>
<div>
Problème résolu, mais petit contre-temps... :)</div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-41838037139426306472013-02-19T16:31:00.002+01:002013-02-19T16:33:15.125+01:00[TECH]: Get-ClientAccessServer et la coexistence Exchange 2010/2013Je dois l'avouer, ce n'est pas bien: j'ai installé Exchange Server 2013 dans mon organisation Exchange 2010 (mise à niveau en SP3 pour que cela soit possible) sans attendre la disponibilité du Cumulative Update 1...<br />
<br />
Honte à moi... :)<br />
<br />
Cependant, cela me permet de tester pas mal de chose en coexistence, dont en particulier tous mes scripts visant à configurer ou opérer Exchange, que l'on soit en mono-version (2010 _ou_ 2013) ou en mixité (2010 _et_ 2013 donc).<br />
<br />
En coexistence, la majorité des commandes Exchange 2010 (<b>Get-ExchangeServer</b>, <b>Get-<quelquechose></quelquechose></b>) ne "voient" pas (par défaut) les objets Exchange 2013... tant mieux, cela facilite la compatibilité des commandes Exchange 2010 sur des objets 2013 et donc permet d'éviter qu'une commande 2010 ne casse quelque chose.<br />
<br />
Cependant, j'ai déjà trouvé une exception à la règle: <b>Get-ClientAccessArray</b>...<br />
<br />
Dans sa version 2010, la commande retourne l'objet du Cas Array défini dans mon site Active Directory. S’exécutant sur un serveur Exchange 2010, et à fortiori les Cas Arrays étant une notion Exchange 2010 et retirée en Exchange 2013, on était en droit de s'attendre au fait que la liste calculée des membres du Cas Array ne soient que des serveurs CAS Exchange 2010. Et bien que nenni !<br />
<br />
La commande <b>Get-ClientAccessArray</b> d'Exchange 2010 retourne dans la propriété "<b>Members</b>" les serveurs CAS Exchange 2013 ! Là où le bât blesse, c'est que la réciproque n'est pas vraie: la commande <b>Get-ClientAccessArray</b> d'Exchange 2013 ne retourne _que_ les serveurs CAS Exchange 2010.<br />
<br />
La preuve en images:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCUdPvkXZNewlGDYs1kzY7Kim9ln_vLt6z2rPazeMMR1mqjmK1oN68-oF_u5F6hAjkqDDj89wQc3_C8MushUECXaJHBHoVb9Au6-WrLDMloTzSwODC1Ohm5yqtcQgsjruQS7AF2dPnvRU-/s1600/CasArray2010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCUdPvkXZNewlGDYs1kzY7Kim9ln_vLt6z2rPazeMMR1mqjmK1oN68-oF_u5F6hAjkqDDj89wQc3_C8MushUECXaJHBHoVb9Au6-WrLDMloTzSwODC1Ohm5yqtcQgsjruQS7AF2dPnvRU-/s640/CasArray2010.png" width="640" /></a></div>
<div class="" style="clear: both; text-align: center;">
<b><span style="font-size: x-small;">Ci-dessus: Get-ClientAccessArray (retourne le serveur CAS Ex2013)</span></b></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipDqTsKN5lH-FpmZBxmDyG24krCzn8wS2eo25C3Xb52w9y8mWhv-WfwB4iwt8IrSX0n747gvtnVYKRHhNkmKNcf02AAF0AsVkkftW65BwTD0gZyN-Z9eLjvrZIcCVPE3QbFOixxlA6EMhK/s1600/CasArray2013.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="100" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipDqTsKN5lH-FpmZBxmDyG24krCzn8wS2eo25C3Xb52w9y8mWhv-WfwB4iwt8IrSX0n747gvtnVYKRHhNkmKNcf02AAF0AsVkkftW65BwTD0gZyN-Z9eLjvrZIcCVPE3QbFOixxlA6EMhK/s640/CasArray2013.png" width="640" /></a></div>
<div style="text-align: center;">
<b><span style="font-size: x-small;">Ci-dessus: Get-ClientAccessArray Exchange 2013 (ne retourne que les serveurs Ex2010)</span></b></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Dans le même style, je disais précédemment que les cmdlets Exchange 2010 ne "voient" pas les serveurs Exchange 2013. Par exemple, un "<b>Get-ExchangeServer</b>" ne va lister que les serveurs à version 2010 (et antérieures):</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUXphitHmPZhJYOkyDS3UTBKq6Jx-SbnWyZ14SkkMk1lMZS32X4N3yXZWeMDmrDl4akAnsm7xzDsDpZywhr3IddKDU0LW9HUFQk2iBXHjZZ3qzIvIJSzELOeBKml6FqIWKfma4TI6_A_-B/s1600/GetExchangeServer2010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="120" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUXphitHmPZhJYOkyDS3UTBKq6Jx-SbnWyZ14SkkMk1lMZS32X4N3yXZWeMDmrDl4akAnsm7xzDsDpZywhr3IddKDU0LW9HUFQk2iBXHjZZ3qzIvIJSzELOeBKml6FqIWKfma4TI6_A_-B/s640/GetExchangeServer2010.png" width="640" /></a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
Et cependant, en utilisant le paramètre <b><span style="color: #990000;">-Identity</span></b>, je peux récupérer l'objet (<b>Get-ExchangeServer -Identity <something></something></b>):</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij6NziCgLwwUVv_FOJaDmAjSvy3JLRkhHCZMiMocMwLyi_15kxaVXLYbbFolMOQSTcPyGGyvG54b_bEw5xLaufaPv3jU0XzgYTfNjimioJEHFSOY1I1j-xj2R5iPvbgX8Ro-SCGQepYw5j/s1600/GetExchangeServer2010Explicit.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="296" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEij6NziCgLwwUVv_FOJaDmAjSvy3JLRkhHCZMiMocMwLyi_15kxaVXLYbbFolMOQSTcPyGGyvG54b_bEw5xLaufaPv3jU0XzgYTfNjimioJEHFSOY1I1j-xj2R5iPvbgX8Ro-SCGQepYw5j/s640/GetExchangeServer2010Explicit.png" width="640" /></a></div>
La raison: lorsque l'on fait un <b>Get-ExchangeServer</b> de base, un filtre de version est positionné (type "inférieur ou égal à la version actuelle") alors que lorsque l'on spécifie une identité, la commande ne créé pas un filtre sur la version... C'est aussi vrai pour les autres cmdlets type "<b>Get-MailboxServer</b>", "<b>Get-ClientAccessServer</b>", "<b>Get-TransportServer</b>", "<b>Get-UmServer</b>"...<br />
<div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX2OBCDNJBso-aP9zfmDNwrQmjye2BxKtOMvtrl61jdNRMk6DrQhAMuaerUOfOTW3DNM2HRTMCXar4tnM_DtcxiuKtChcvpbNBQKujry5k5jjcdDuzndWzVYysTdpmY1s01tMjSCzbk8lY/s1600/GetMailboxServer2010Explicit.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="218" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiX2OBCDNJBso-aP9zfmDNwrQmjye2BxKtOMvtrl61jdNRMk6DrQhAMuaerUOfOTW3DNM2HRTMCXar4tnM_DtcxiuKtChcvpbNBQKujry5k5jjcdDuzndWzVYysTdpmY1s01tMjSCzbk8lY/s640/GetMailboxServer2010Explicit.png" width="640" /></a></div>
<div>
<br /></div>
<div>
Voilà, attention donc lorsque vous serez en mixité de versions Exchange 2010/2013. Pensez à bien tester vos scripts et vos procédures opérationnelles afin d'éviter quelques sournoiseries...</div>
</div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-80386096096199008792013-02-12T23:59:00.001+01:002013-02-13T12:51:14.122+01:00[INFO]: Premières MàJ Office, dont Lync Client 2013En plus des mises à jour côté serveurs, Microsoft a également publié des mises à jour des clients Office, dont en particulier Lync 2013:<br />
<ul>
<li>Ajoute une fonctionnalité permettant de cacher les contacts hors-ligne, inactifs et ayant un statut de présence inconnu de la liste des contacts principale (dans un groupe séparé);</li>
<li>Ajoute une fonctionnalité permettant de recevoir des invitations de personnes externes à l'organisation et faisant partie d'une réseau source non vérifié;</li>
<li>Corrige quelques bugs liés aux fonctionnalités de Localisation (partage, configuration);</li>
<li>Corrige quelques bugs liés à la fonctionnalité d'onglets de conversations;</li>
<li>Permet à des utilisateurs de se joindre à des conférences via leur téléphone même si l'organisateur n'est pas activé pour la téléphonie;</li>
<li>Améliore la gestion des terminaux ayant deux caméras (faciale/dorsale);</li>
<li>Améliore l'expérience utilisateur lors de l'utilisations de salles virtuelles;</li>
<li>Améliore la prise en charge de périphériques à forte densité de pixles.</li>
</ul>
La description complète est ici: <a href="http://support.microsoft.com/kb/2810076/en-us?sd=rss&spid=11335">http://support.microsoft.com/kb/2810076/en-us?sd=rss&spid=11335</a>.<br />
<br />
Mise à jour du 13 février 2013: voici l'option à cocher si vous souhaitez activer la fonctionnalité visant à trier les contacts hors-ligne/inactifs/à statut inconnu dans un groupe séparé:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD4oIs2kVCEL2WNhpZKTK1IglPivlua4KcModUAH3YrFKyKM43zxwzgcxonwskgnvWB6wDIzvz8AoRCZxwsXrjkwSKABIpAWF8oireVuKCUbKR5Dy8GY38ZZJtDUskidWpam7e50efK4xl/s1600/lync-cu1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="521" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD4oIs2kVCEL2WNhpZKTK1IglPivlua4KcModUAH3YrFKyKM43zxwzgcxonwskgnvWB6wDIzvz8AoRCZxwsXrjkwSKABIpAWF8oireVuKCUbKR5Dy8GY38ZZJtDUskidWpam7e50efK4xl/s640/lync-cu1.png" width="640" /></a></div>
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-41287046247837875872013-02-12T23:58:00.000+01:002013-02-13T12:38:56.258+01:00[INFO]: Exchange Server 2010 SP3 !Je disais il y a quelques minutes que le Service Pack 3 d'Exchange Server 2010 serait bientôt disponible. A croire que j'étais plus près de la vérité que prévu... :)<br />
<br />
L'équipe Exchange a annoncé il y a moins d'une heure la mise à disposition du SP3:<br />
<ul>
<li><b>Annonce</b>: <a href="http://blogs.technet.com/b/exchange/archive/2013/02/12/released-exchange-server-2010-sp3.aspx">http://blogs.technet.com/b/exchange/archive/2013/02/12/released-exchange-server-2010-sp3.aspx</a></li>
<li><b>Lien de téléchargement</b>: <a href="http://www.microsoft.com/en-us/download/details.aspx?id=36768">http://www.microsoft.com/en-us/download/details.aspx?id=36768</a></li>
<li><b>Release notes</b>: <a href="http://technet.microsoft.com/en-us/library/jj965774(v=exchg.141).aspx">http://technet.microsoft.com/en-us/library/jj965774(v=exchg.141).aspx</a></li>
</ul>
Il apporte en outre la coexistence avec <b>Exchange Server 2013 <u><span style="color: #990000;">CU1</span></u></b><u><span style="color: #990000;"> </span></u>(qui n'est donc pas encore disponible :)), mais aussi les support de clients <b>Internet Explorer 10</b>. En outre il permet d'installer Exchange Server 2010 sur <b>Windows Server 2012</b> (en installant bien sûr directement le package SP3) et de Windows 8 (outils d'administration).<br />
<br />
Il faudra donc patienter encore quelques semaines avant de pouvoir faire coexister Exchange 2010 et 2013 !<br />
<br />
<b><span style="color: #990000;">MàJ du 13 février 2013: pour les plus tecchies, voici les versions d'objets suite au passage du SP3 ce matin dans mon lab:</span></b><br />
<br />
<ul>
<li><b>Organisation</b>: version 14322 (attribut "objectVersion" sur l'objet représentant l'organisation)</li>
<li><b>Schema</b>: version 14734 (attribut "rangeUpper" sur l'objet ms-Exch-Schema-Version-Pt dans la partition du schéma AD)</li>
</ul>
<div>
Il semblerait que les modifications du Schéma Exchange 2010 SP3 n'inclut que l'ajout d'un attribut nommé <b>ms-Exch-Calendar-Logging-Quota</b> et modifie les attributs suivants: {<b>ms-Exch-Schema-Version-Pt, ms-Exch-UM-Enabled-Text, ms-Exch-UM-Fax-Message-Text, ms-Exch-UM-Reset-PIN-Text, ms</b><b>-Exch-UM-Voice-Mail-Text</b>} ainsi que les classes {<b>ms-Exch-Mail-Storage, ms-Exch-MDB</b>}.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCdd40qc91xUoqHLJeJKXXPf5XRxnGQ88MVFFIDckb6YT4qLFBCeVYZ-bTI4e-GUovaokmKFOlhhCk5R1prepKzbz57Drr-8EwG7Sn-PVS09cGPR-18h6mpabCI_MVW1J5s8cnRrddlhmq/s1600/exchange-sp3-schema.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="282" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCdd40qc91xUoqHLJeJKXXPf5XRxnGQ88MVFFIDckb6YT4qLFBCeVYZ-bTI4e-GUovaokmKFOlhhCk5R1prepKzbz57Drr-8EwG7Sn-PVS09cGPR-18h6mpabCI_MVW1J5s8cnRrddlhmq/s400/exchange-sp3-schema.png" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSNWSSh2tokBh64HJb_GBtWU275dnT7XImMxgdlJ6vKXDcMOSDrtTegDitFXdueRxBCDlzn7cEVcL5BEfpGNJvidLUForDMSMuRIN_OG6xb0X4_v381Di29NLpFykO-fc7O_psafezM95t/s1600/exchange-objectversion.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSNWSSh2tokBh64HJb_GBtWU275dnT7XImMxgdlJ6vKXDcMOSDrtTegDitFXdueRxBCDlzn7cEVcL5BEfpGNJvidLUForDMSMuRIN_OG6xb0X4_v381Di29NLpFykO-fc7O_psafezM95t/s400/exchange-objectversion.png" width="358" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1LEYur4OiwZWJPvsdz_2O37I7dFu8pgufXEd0kiqWQQ9oqX9rl7g4tbjHjh64K0y-jeSBn6ZXLKzUuUJKgQW8Xy-dBKGVQPVOnmN74xFf4hiAnyEHla0-86Z8KCwH98SeBSMi4yrCv75Z/s1600/exchange-sp3-schema2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="115" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1LEYur4OiwZWJPvsdz_2O37I7dFu8pgufXEd0kiqWQQ9oqX9rl7g4tbjHjh64K0y-jeSBn6ZXLKzUuUJKgQW8Xy-dBKGVQPVOnmN74xFf4hiAnyEHla0-86Z8KCwH98SeBSMi4yrCv75Z/s640/exchange-sp3-schema2.png" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicY8OuFmzTdr8BvpwvkR28a-Rb2HYFltrBsxGlQFruEp5s6tr_25CuQBlhgAZ23xGcD6I3n30hI9x8DGgYVY7zfSI88-4Wbt40Nv5hqCnLB7oMXBgZ0o6ydx74_1CdINHO-3smvDjSRx1Y/s1600/exchange-sp3-schema3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicY8OuFmzTdr8BvpwvkR28a-Rb2HYFltrBsxGlQFruEp5s6tr_25CuQBlhgAZ23xGcD6I3n30hI9x8DGgYVY7zfSI88-4Wbt40Nv5hqCnLB7oMXBgZ0o6ydx74_1CdINHO-3smvDjSRx1Y/s640/exchange-sp3-schema3.png" width="640" /></a></div>
<div>
<br /></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-19566812210159299402013-02-12T22:30:00.000+01:002013-02-12T22:33:59.383+01:00[INFO]: Exchange 2010 SP2 Rollup 6 et Exchange 2007 SP3 Rollup 10Microsoft vient de publier le Rollup 6 d'Exchange Server 2010 SP2. Je vous passe la description détaillée, disponible ici: <a href="http://support.microsoft.com/kb/2746164">http://support.microsoft.com/kb/2746164</a>. On notera aussi le Rollup 10 pour Exchange Server 2007 SP3 dnt la description est ici: <a href="http://support.microsoft.com/kb/2788321/en-us?sd=rss&spid=10926">http://support.microsoft.com/kb/2788321/en-us?sd=rss&spid=10926</a>.<br />
<br />
<b><span style="color: #cc0000;">Les deux Rollups corrigent en particulier la faille décrite dans le bulletin de sécurité MS13-012 (voir ici: <a href="http://technet.microsoft.com/en-us/security/Bulletin/MS13-012">http://technet.microsoft.com/en-us/security/Bulletin/MS13-012</a>).</span></b><br />
<br />
De manière plus anecdotique, une mise à jour cumulative pour Outlook 2010 résolvant des problèmes de téléchargement de l'OAB en mode Outlook Anywhere (<a href="http://support.microsoft.com/kb/2597090/en-us?sd=rss&spid=14864">http://support.microsoft.com/kb/2597090/en-us?sd=rss&spid=14864</a>) mais qui contient aussi les correctifs précédents d'amélioration de performances et de stabilité... Pensez-y !<br />
<br />
<b>Au menu:</b><br />
<br />
<div class="MsoNormal">
<span lang="FR">Le Rollup 6
corrige quelques bugs liés à l’utilisation des Web Services, pour Blackberry
entre autres et des problèmes de performance potentiels avec BES aussi. J’aime aussi
(enfin !!!) la correction de l’OABGen lorsqu’il rencontre des lingering
objects… avant ça crashait, maintenant on espère que cela ne crash plus </span><span lang="FR" style="font-family: Wingdings; mso-ansi-language: FR;">J</span><span lang="FR"><o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<span lang="FR"><b>Quelques
nouveautés:</b></span></div>
<div class="MsoListParagraph" style="mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
</div>
<ul>
<li><span style="text-indent: -18pt;"><b>Compliance </b>:
</span><a href="http://support.microsoft.com/kb/2793274" style="text-indent: -18pt;">http://support.microsoft.com/kb/2793274</a></li>
<li><span style="text-indent: -18pt;"><b>Features </b>: </span><a href="http://support.microsoft.com/kb/2784083" style="text-indent: -18pt;">http://support.microsoft.com/kb/2784083</a></li>
</ul>
<br />
<div class="MsoNormal">
<span lang="FR"><b><u>Note</u></b>: Le SP3 est à
priori pour bientôt !<o:p></o:p></span></div>
<div class="MsoNormal">
<span lang="FR"><br /></span></div>
<div class="MsoNormal">
<span lang="FR">Comme toujours, soyez prudents afin d'éviter des déconvenues telles que celles rencontrées avec des Rollups précédents (rappellez-vous du Rollup 5 pour Exchange Server 2010 SP2...).</span></div>
<div class="MsoNormal">
<span lang="FR"><br /></span></div>
<div class="MsoNormal">
<span lang="FR">Bon patching !</span></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-843121049908262142012-12-20T16:35:00.000+01:002012-12-20T16:44:57.643+01:00[TECH]: Utiliser l'objet COM+ Internet Explorer sur Windows Server 2012Avec Exchange et Lync, il est souvent sympa de pouvoir générer des rapports divers et variés via un document HTML riche et bien formaté (au delà donc du simple usage des sorties formatées en HTML standard). Un exemple est un script que je fournis à mes clients et qui génère un rapport de santé d'un DAG et des composants d'infrastructure liés. Un exemple ci-dessous avec mon petit DAG Exchange 2013...<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy9t5hgJy5Lg5K0qYKDbMdiL3oLIKndryLTEVADs8cuvka_jRc63Txo1c-iGQiTC_cdWGWIwG5Mal99krO1RBO9ei8gaINyEMwJtNZHJAwsg8N2rAuHZ97ubWs5zC9AF9ZyC1jKkQrsmiu/s1600/2012-12-20_141845.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="304" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy9t5hgJy5Lg5K0qYKDbMdiL3oLIKndryLTEVADs8cuvka_jRc63Txo1c-iGQiTC_cdWGWIwG5Mal99krO1RBO9ei8gaINyEMwJtNZHJAwsg8N2rAuHZ97ubWs5zC9AF9ZyC1jKkQrsmiu/s640/2012-12-20_141845.png" width="640" /></a></div>
<br />
Le principe est de créer un objet COM Internet Explorer et de peupler un Document vide. Cela offre l'avantage de pouvoir utiliser les méthodes standards de l'objet comme getElementById() et d'aller modifier un style sur un code HTML généré en amont, par exemple ici le statut global qui passerait rouge en cas d'erreur. De plus, cela permet d'ouvrir une sorte de console IE en plain écran, de faire des rafraîchissements automatiques, ou même de sauvegarder le document complet au format HTML pour d'autres actions, type envoi par E-mail ou mise à disposition sur une racine IIS.<br />
<br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><b style="background-color: #fff2cc;">$IE = New-Object -comObject InternetExplorer.Application</b></span><br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><b style="background-color: #fff2cc;">$IE.Navigate2("about:blank")</b></span><br />
<br />
A partir de là, la logique est d'attendre la fin du statut occupé de l'objet IE, puis de travailler avec l'attribut membre "Document", en utilisant les méthodes <b>write()</b> et <b>writeln()</b> afin de générer le code HTML.<br />
<br />
Lorsque j'ai commencé à mettre à jour mon script de rapport de santé pour le rendre compatible Exchange 2013, je me suis retrouvé face à un problème de taille: mes serveurs Exchange 2013 étant installés sur un système d'exploitation Windows Server 2012, impossible d'utiliser les méthodes <b>write() </b>et <b>writeln()</b>. Elles existent toujours mais ne prennent aucun argument. Rien n'y faisait, impossible de générer le code.<br />
<br />
Puis j'ai regardé le comportement sur un autre serveur Windows 2012, mis à jour lui depuis un Windows Server 2008 R2. Et là: les méthodes existent mais les arguments à passer sont dans un type bizarre issu du code en C/C++ de vieux bouts de code IE.<br />
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIpj202cP73mGz6HkAU2mSqs7P_-MDDYUpu8AwW3g-79CArG5R4x5Q41XeHPtwyU2JZcc2TqPcDhCD1j6fMcm_9rxzaI3b_pilJnbq7gGTWXJBDInwmrW7eeSbN6sasSzuAXiZqBMRardl/s1600/2012-12-20_142807.gif"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIpj202cP73mGz6HkAU2mSqs7P_-MDDYUpu8AwW3g-79CArG5R4x5Q41XeHPtwyU2JZcc2TqPcDhCD1j6fMcm_9rxzaI3b_pilJnbq7gGTWXJBDInwmrW7eeSbN6sasSzuAXiZqBMRardl/s640/2012-12-20_142807.gif" /></a></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW4-7hUSCk8_I87zW6oMJ-Aa_MnPkPghUs26adtfIJ3jgdUZ6OeaRHeT5oSUw8E0HsBC3T_9sKbP1NnXWyci3kwIBkb5EJADuMKicfLVF47vvC0AZQnmxzj6x-Rt6xZhwYX7JZg1EeXMBE/s1600/2012-12-20_143031.gif"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW4-7hUSCk8_I87zW6oMJ-Aa_MnPkPghUs26adtfIJ3jgdUZ6OeaRHeT5oSUw8E0HsBC3T_9sKbP1NnXWyci3kwIBkb5EJADuMKicfLVF47vvC0AZQnmxzj6x-Rt6xZhwYX7JZg1EeXMBE/s640/2012-12-20_143031.gif" /></a></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBQ5qR0OlYCNAes2haKxZmJ0DAcEYpFz90yGiws9iJ2Fq4Byci-7K0FLcJDm5VmfSQMDgtvRuJKjVU2C_EoC5Z7jg5yuOjiQ5nBalRAbbI9MtatnTvUqf4B134dACzyF2oDlcVn3ZjUvyh/s1600/2012-12-20_143219.gif"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBQ5qR0OlYCNAes2haKxZmJ0DAcEYpFz90yGiws9iJ2Fq4Byci-7K0FLcJDm5VmfSQMDgtvRuJKjVU2C_EoC5Z7jg5yuOjiQ5nBalRAbbI9MtatnTvUqf4B134dACzyF2oDlcVn3ZjUvyh/s640/2012-12-20_143219.gif" /></a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
On a donc une différence fonctionnelle entre:</div>
<br />
<ul>
<li><b>Windows Server 2008 R2</b></li>
<li><b>Windows Server 2012 avec des composants issus du système originel mis à jour</b></li>
<li><b>Windows Server 2012 installé en partant de rien</b></li>
</ul>
<div>
J'ai donc commencé à m'intéresser à l'objet "Document", comprendre voir quelle est la nature des différences. J'ai donc regardé le type sur les trois environnements:</div>
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><b style="background-color: #fce5cd;">$IE.Document.GetType().ToString()</b></span><br />
et<br />
<b><span style="background-color: #fce5cd; font-family: Courier New, Courier, monospace; font-size: x-small;">$IE |fl Document</span></b><br />
<br />
Et là ! J'ai enfin été mis sur une <u>piste sérieuse</u>: les objets sont de type de base "ComObject" (des objets COM+ donc). Sur les environnements où les méthodes on bien un prototype définissant des arguments, l'objet est de type "<b>mshtml.HTMLDocumentClass</b>". Sur l'environnement Windows Server 2012 installé en partant de rien, l'objet apparaît être d'un type "<b>System.__ComObject</b>" et donc chargé sans support des méthodes MSHTML.<br />
<br />
Après quelques recherches, j'ai fini par trouver que cette classe est définie dans une "Primary Interop Assembly" nommée "<b>Microsoft.mshtml</b>" et définie dans la DLL "<b>Microsoft.mshtml.dll</b>". Une recherche rapide sur mes serveurs à permis de confirmer que cette assembly est bien installée sur les serveurs qui me fournissent un objet définissant les méthodes <b>write()</b> et <b>writeln()</b>.<br />
<br />
Le hic c'est que cette assembly n'est pas installée en standard/par défaut. Puisqu'il semblerait qu'IE sache l'utiliser lorsqu'elle est installée, je me suis dit qu'un chargement de l'assembly à la volée pourrait faire l'affaire.<br />
<br />
Me voici donc à développer une fonction PowerShell pour le faire, appelée naturellement "<b>Load-Assembly</b>". Le code est disponible ici sous forme d'un script PowerShell: <a href="http://sdrv.ms/U6j7Wn">http://sdrv.ms/U6j7Wn</a>.<br />
<div>
<br /></div>
<br />
J'ai ensuite copié la DLL de l'assembly depuis mon serveur Windows Server 2008 R2 vers l'emplacement réseau de mes scripts, dans un sous-répertoire "<b>bin\PrimaryInteropAssemblies</b>".<br />
<br />
Avant la création de mon objet Internet Explorer, j'ai donc ajouté le code suivant:<br />
<br />
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><b>if ( ("mshtml.HTMLDocumentClass" -as [Type]) -eq $null )<br />{<br /> $assembly = Load-Assembly -Path ".\bin\PrimaryInteropAssemblies\Microsoft.mshtml.dll"<br /> if ( $assembly -eq $null )<br /> {<br /> throw "Failed to load the MSHTML Primary Interoperability Assembly."<br /> return<br /> }<br /> Write-Verbose "PrimaryInteropAssembly MSHTML loaded: $($assembly.FullName)"<br />}</b></span><br />
<div>
<br /></div>
<div>
Et enfin, une fois mon assembly chargée, le type étant défini correctement, l'objet Document redevient un objet de la classe attendue, à savoir "<b>mshtml.HTMLDocumentClass</b>". Une fois l'assembly chargée, mes objets COM réagissent de la même manière sur mon serveur Windows 2012 qui ne fonctionnait pas auparavant.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg684t0JHoJZPyknswRsYL5VNkxttPq7I_zKCyNzyU1e79KFpr0mGPIekXNuLIscdeZ0-CW9Ka8Ozgtig87ubwNakM8h_KwB1TY2ax2P2B3A-zoAPdAE1GBmHpJ8RBiGcUMii81Cgz__CsZ/s1600/2012-12-20_160803.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="254" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg684t0JHoJZPyknswRsYL5VNkxttPq7I_zKCyNzyU1e79KFpr0mGPIekXNuLIscdeZ0-CW9Ka8Ozgtig87ubwNakM8h_KwB1TY2ax2P2B3A-zoAPdAE1GBmHpJ8RBiGcUMii81Cgz__CsZ/s640/2012-12-20_160803.gif" width="640" /></a></div>
<div>
<br /></div>
<div>
Me reste maintenant un problème à élucider: les méthodes write() et writeln() se refusent à fonctionner correctement malgré l'objet chargé avec la bonne classe. Faute probablement ici au PowerShell v3 je pense, qui gère les types ou la conversion de type différemment. Le type attendu est un SAFEARRAY (cf la capture d'écran en PowerShell v2) qui est un type C/C++. Imaginez la galère en partant de PowerShell...</div>
<div>
<br /></div>
<div>
Et là miracle: en explorant l'objet Document, je me suis rendu compte qu'il existe des méthodes additionelles à celles disponibles en PowerShell v2... bizarre mais elles sont nommées <b>IHTMLDocument2_xxx(), IHTMLDocument3_xxx(), IHTMLDocument4_xxx() et IHTMLDocument5_xxx()</b>. Cela ressemble fort à des méthodes de compatibilité descendante !!!</div>
<div>
<br /></div>
<div>
J'essaye donc <b>IHTMLDocument2_write() </b>et <b>IHTMLDocument2_writeln() </b>avec succès !!!</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7UYDPAFK4BPxK7QaYiNx0oIG9CjC2jbtzxuBx-TxMtDpap85SPDugkgt_xdtlHJ6_4FYwUGvfkSE481GS0Qty_RtBquHhd2MWGeU7qJLjzpLskX-G9A2Kxlo1XHY_pGeq4d_YO7e5gqCk/s1600/2012-12-20_161637.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="334" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7UYDPAFK4BPxK7QaYiNx0oIG9CjC2jbtzxuBx-TxMtDpap85SPDugkgt_xdtlHJ6_4FYwUGvfkSE481GS0Qty_RtBquHhd2MWGeU7qJLjzpLskX-G9A2Kxlo1XHY_pGeq4d_YO7e5gqCk/s640/2012-12-20_161637.gif" width="640" /></a></div>
<div>
<br /></div>
<div>
<b>Au final</b>:</div>
<div>
<ul>
<li>rajout d'un bout de code permettant de charger l'assembly,</li>
<li>utilisation des méthodes de compatibilité à la place des méthodes natives... dans mon cas j'ai codé une "surobjet" Document qui s'adapte et appelle la bonne méthode en fonction de la présence ou non de la méthode <b>IHTMLDocument2_write()</b>.</li>
</ul>
</div>
Le bug avait été remonté via Connect, ici: <a href="http://connect.microsoft.com/PowerShell/feedback/details/764756/powershell-v3-internetexplorer-application-issue">http://connect.microsoft.com/PowerShell/feedback/details/764756/powershell-v3-internetexplorer-application-issue</a><br />
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-91280265171915791752012-12-11T23:38:00.002+01:002012-12-11T23:38:52.041+01:00[INFO]: Nouveaux Rollups Exchange 2010 et Exchange 2007 disponibles<span style="font-family: Arial, Helvetica, sans-serif;">La DevTeam Exchange vient de publier les <b>Rollups 5v2 Exchange 2010 SP2</b>, <b>Rollup 8 Exchange 2010 SP1</b> et <b>Rollup 9 Exchange 2007 SP3</b>.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Tous corrigent un bug de sécurité considérée Critique décrite dans le bulletin <a href="http://technet.microsoft.com/en-us/security/Bulletin/MS12-080" target="_blank">MS12-080</a>.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">N'oubliez pas de bien tester dans votre environnement de pré-production afin d'éviter des sueurs froides comme celles créées par le <a href="http://unifiees.blogspot.fr/2012/11/alerte-exchange-server-2010-sp2-rollup-5.html" target="_blank">Rollup 5 Exchange 2010 SP2</a>... :)</span><br />
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-32547670055862430462012-12-08T14:07:00.001+01:002013-01-09T12:37:49.499+01:00[TUTORIEL]: Comment créer vous même un répartiteur de charge avec Ubuntu Server et HAProxy (v2)<span style="font-family: Arial, Helvetica, sans-serif;">En août dernier je m'étais finalement décidé à <a href="http://unifiees.blogspot.fr/2012/08/tutoriel-comment-creer-vous-meme-un.html" target="_blank">publier mon guide décrivant un approche pas-à-pas permettant de créer votre propre solution de répartition de charge basé sur HAProxy et stunnel</a>.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Tout récemment, <b>Willy Tarreau</b> et l'équipe de développeurs contribuant aux évolutions du code d'HAProxy ont implémenté de nouvelles fonctionnalités en version 1.5-dev7 puis dev12, 13 et 14: à savoir (entre autres) le support de la terminaison SSL sur HAPproxy, ce qui permet naturellement des scénarios de <b>SSL Offloading</b> ou de <b>SSL Bridging sans stunnel ou autre wrapper SSL</b>. </span><span style="font-family: Arial, Helvetica, sans-serif;">Je rappelle que HAProxy est le composant clef des boîtiers </span><a href="http://www.exceliance.fr/" style="font-family: Arial, Helvetica, sans-serif;" target="_blank">Exceliance </a><span style="font-family: Arial, Helvetica, sans-serif;">(http://www.exceliance.fr/), des solutions de répartition de charge très performances et peu onéreuses.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Voici donc <a href="http://sdrv.ms/PmMSy6" target="_blank">le lien de téléchargement du guide v2</a>, entièrement basé sur Ubuntu Server et HAProxy:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQmuKadH_GN8C8FhFnQiCw5OqgeemQCLDvzaeBZow4535eOv_ic5C3-Odckkbd5jFHQAmreiWgGUF4zll8r4mjUYyvi_5dGWuYzBia4hz630C17o6yXL15U4tLva2Gx_y-ZVZgGk0QHOHS/s1600/2012-12-10_124828.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQmuKadH_GN8C8FhFnQiCw5OqgeemQCLDvzaeBZow4535eOv_ic5C3-Odckkbd5jFHQAmreiWgGUF4zll8r4mjUYyvi_5dGWuYzBia4hz630C17o6yXL15U4tLva2Gx_y-ZVZgGk0QHOHS/s400/2012-12-10_124828.gif" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com2tag:blogger.com,1999:blog-4191071335435771394.post-78853955164290271662012-11-22T17:37:00.001+01:002012-11-22T18:00:26.283+01:00[TUTORIEL]: Exchange 2013 - Configurer l'accès Client et Kerberos (load-balancer ou DNS round-robin)<span style="font-family: Arial, Helvetica, sans-serif;">Depuis Exchange Server 2010 SP1, il est <b>hautement recommandé d'activer Kerberos </b>pour les accès clients. Cela se faisait au travers d'un ensemble de manipulations visant à créer un objet de sécurité dans l'Active Directory, puis de définir les Service Principal Names Kerberos sur cet objet.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Cet objet devait ensuite être défini sur la configuration des serveurs CAS comme le "Alternate Service Account", ce qui permettait alors au service "Microsoft Exchange Protected Service Host" de répondre en mode Negotiate à un challenge SPNEGO.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">J'avais documenté le pas-à-pas dans un tutoriel Exchange 2010 SP1 >> </span><a href="http://unifiees.blogspot.fr/2010/07/tutoriel-exchange-2010-sp1-activer.html" style="font-family: Arial, Helvetica, sans-serif;" target="_blank"><b><span style="color: #cc0000;">ici </span></b></a><span style="font-family: Arial, Helvetica, sans-serif;"><< (à l'époque c'était sur la Beta du SP1 mais la procédure est toujours applicable).</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<b><span style="font-family: Arial, Helvetica, sans-serif;">Qu'en est-il d'Exchange Server 2013... ?</span></b><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><b><u>Plusieurs points</u></b>:</span><br />
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">Exchange 2013 n'utilise plus le Mapi/Rpc (pour les accès clients), seulement le Mapi sur Http (autrement dit, le Rpc/Http)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">Exchange 2013 est configuré par défaut en mode Ntml, afin de conserver une compatibilité large et surtout parce que la configuration en Kerberos requiert des manipulations qui ne peuvent être faites automatiquement au moment du Setup</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">La haute disponibilité d'Exchange 2013 s'effectue uniquement au niveau du protocole HTTP, il n'y a par conséquent plus besoin de définir une VIP pour le Mapi/Rpc.</span></li>
</ul>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Ce que cela implique</b>:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><u>Au niveau de la haute-disponibilité</u>: il devient possible de se passer de répartiteur de charge (load-balancer, HLB) et de ne faire que du DNS round-robin (DNS RR). Il s'agit avant tout d'une logique du client et donc ne fonctionnera pas dans 100% des cas (vous devrez avoir des clients dits "modernes") - il reste bien sûr (et je le recommande pour plein de raisons) la possibilité de faire de la répartition de charge classique, en mode 100% HTTP/HTTPS désormais. Cependant, point noir pour Exchange 2013 RTM: il n'y a pas de support du SSL Offloading. Pour l'avoir testé, cela ne fonctionne pas du tout et j'essayerai de vous faire un tutoriel sur le SSL Bridging, qui lui devrait (en théorie) fonctionner.</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><u>Au niveau de la configuration</u>: il faudra configurer Outlook Anywhere et les Web Services afin de faire référence à un nom générique (load-balancé donc, ou en DNS RR). Cela permettra donc aux clients d'utiliser des URI liées à des points de connexion uniques, et non comme cela est le cas, directement liées au nom complet qualifié (Fqdn) de chaque serveur.</span></li>
</ul>
<h2>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Première partie: configuration des Web Services</b></span></h2>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">La configuration des Web Services est simple et presque identique à ce que l'on avait l'habitude de faire sur Exchange 2010, à savoir:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b><u>Définition d'une "InternalURL" pour les services suivants</u></b>: OWA/ECP, Exchange Web Services, OAB, Exchange ActiveSync. La configuration du Web Service Autodiscover n'est désormais plus utile, mais il faudra conserver la partie de la configuration visant à changer le Service Connection Point HTTP pour la découverte automatique via l'Active Directory (pour rappel: en utilisant le cmdlet <b>Set-ClientAccessServer</b>). A cela viendra s'ajouter la configuration, maintenant O-BLI-GA-TOIRE d'Outlook Anywhere, activé par défaut et référençant le Fqdn de chaque serveur.</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b><u>Optionnellement, définition des "ExternalURL"</u></b>, si vous souhaitez supporter des clients externes (pour du vrai Outlook Anywhere, dans le sens originel du terme... :)). Nous verrons cela dans un prochain article.</span></li>
</ul>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Pour l'exemple, nous allons donc configurer en premier lieu les URLs Internes et monter comment un client se connecte par défaut (il sera en Rpc/HTTP _et_ en Ntlm).</span></div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Le nom générique dans mon Lab sera "</span><b style="font-family: Arial, Helvetica, sans-serif;">ex.w15-lab.com</b><span style="font-family: Arial, Helvetica, sans-serif;">". J'ai ici deux serveurs (</span><b style="font-family: Arial, Helvetica, sans-serif;">SV-E15-1</b><span style="font-family: Arial, Helvetica, sans-serif;"> et </span><b style="font-family: Arial, Helvetica, sans-serif;">SV-15-2</b><span style="font-family: Arial, Helvetica, sans-serif;">) exécutant les rôles CAS et MBX, nous ne devrons configurer que la partie CAS. Pour l'exemple, je vais découper les actions en mode pas-à-pas et serveur par serveur.</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><u>Configuration des Web Services</u>:</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Regardons d'abord l'état de mon premier serveur pour le VDir Outlook Web App:</span></div>
<div>
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Get-OwaVirtualDirectory -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | fl *Url</span></b></li>
</ul>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3RUa8p8sBMX2xpzZjOM0fZgeyy24te-vyCneIQWfGRxyUVE6K5tbDPM-EYU3FJpHymVu98IpJYO-9did9J1uBhSoS81QfdKXlSu8hQxxMQ02yVSP3EZjlKJj4vM0Q9ZQy1ZjuvKUzGD3t/s1600/2012-11-22_111335.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="145" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3RUa8p8sBMX2xpzZjOM0fZgeyy24te-vyCneIQWfGRxyUVE6K5tbDPM-EYU3FJpHymVu98IpJYO-9did9J1uBhSoS81QfdKXlSu8hQxxMQ02yVSP3EZjlKJj4vM0Q9ZQy1ZjuvKUzGD3t/s640/2012-11-22_111335.gif" width="640" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Il est est de même pour les autres Web Services, nous allons donc les configurer individuellement (ici en Shell pour le premier):</span></div>
<div>
<div>
<ul>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">Get-OwaVirtualDirectory -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | Set-OwaVirtualdirectory -InternalUrl "https://<span style="color: #cc0000;">ex.w15-lab.com</span>/owa"</span></b></li>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">Get-EcpVirtualDirectory -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | Set-EcpVirtualdirectory -InternalUrl "https://<span style="color: #cc0000;">ex.w15-lab.com</span>/ecp"</span></b></li>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">Get-WebServicesVirtualDirectory -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | Set-WebServicesVirtualDirectory -InternalUrl "https://<span style="color: #cc0000;">ex.w15-lab.com</span>/EWS/Exchange.asmx"</span></b></li>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">Get-OabVirtualDirectory -Server <span style="background-color: #fff2cc;"><span style="color: #cc0000;">SV-E15-1</span></span> -ADPropertiesOnly | Set-OabVirtualDirectory -InternalUrl "https://<span style="color: #cc0000;">ex.w15-lab.com</span>/OAB"</span></b></li>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">Get-ActiveSyncVirtualDirectory -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | Set-ActiveSyncVirtualDirectory -InternalUrl "https://<span style="color: #cc0000;">ex.w15-lab.com</span>/Microsoft-Server-ActiveSync"</span></b></li>
</ul>
</div>
<div>
<i style="font-family: Arial, Helvetica, sans-serif; font-size: small;"><b><u>Note</u></b>: Attention à la casse sur les "/répertoire". Il y a des scripts disponibles sur la blogosphère permettant de soit-disant les configurer "facilement". Historiquement il y a eu des soucis si la casse d'origine n'était pas respectée: typiquement en mode Proxy-CAS sur l'Exchange Control Panel où l'InternalURL était en autre chose que "/ecp" (en minuscules) et "cassait" le cookie msExchCanary. Mon conseil: écrivez votre propre script et respectez exactement la même casse que celle originellement trouvée sur l'InternalURL. Pour les ExternalURL, utilisez la même nomenclature que l'InternalURL.</i></div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Nous voyons ici que nous n'avons pas utilisé la Cmdlet </span><b style="font-family: Arial, Helvetica, sans-serif;">Set-AutodiscoverVirtualDirectory</b><span style="font-family: Arial, Helvetica, sans-serif;">, contrairement à ce que nous aurions fait dans Exchange 2010 et Exchange 2007. Cependant ces actions n'avaient que très peu d’intérêt même dans les versions précédentes. Il semblerait donc que la directive dans Exchange 2013 est de ne même pas s'y attarder... :)</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMlAzXy11QICCzetXwQUUrOsG16V-PEGx_SD2zXw9a1ZNzynAF5EzrB4kc9nPdzD0ZN76ZSrPN4QzFhZylv7PnYPyOFLWrW-ZRf02k6fSR2p2R2orSqwC3H_nLUPqd10U5zbmA92M2Lx9Z/s1600/2012-11-22_112257.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="116" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMlAzXy11QICCzetXwQUUrOsG16V-PEGx_SD2zXw9a1ZNzynAF5EzrB4kc9nPdzD0ZN76ZSrPN4QzFhZylv7PnYPyOFLWrW-ZRf02k6fSR2p2R2orSqwC3H_nLUPqd10U5zbmA92M2Lx9Z/s640/2012-11-22_112257.gif" width="640" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Par contre, nous devons absolument configurer le </span><b style="font-family: Arial, Helvetica, sans-serif;">Service Connection Point</b><span style="font-family: Arial, Helvetica, sans-serif;"> de l'Autodiscover afin d'arriver sur notre URI générique. Cela ne peut se faire qu'en Shell. Notez que vous pouvez vous passer ce cette configuration si vous voulez disposer un certificat sur vos CAS ayant chaque Fqdn de chaque CAS dans le Subject Alternate Name. La meilleure méthode reste cela dit de définir une URI générique, comme pour tous les autres Web Services...</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Nous y sommes presque ! Reste donc la partie Rpc/Http, autrement dit, Outlook Anywhere !</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">La grosse nouveauté ici est qu'il existe désormais un "<b>InternalHostname</b>" à Outlook Anywhere. Rappelez vous que pour Exchange 2007 et Exchange 2010, il n'était possible que de définir un "<b>ExternalHostName</b>"... Vous l'aurez sans doute compris, le "<b>InternalHostname</b>" va être le point de connexion de vos clients et <u>va complètement supprimer la notion de "<b><i>Client Access Array</i></b>"</u> (NDLR: vous ne trouverez plus de Cmdlet <b>New-ClientAccessArray</b>, c'est donc normal :)).</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Nous allons donc configurer l'I</span><b style="font-family: Arial, Helvetica, sans-serif;">nternalHostname</b><span style="font-family: Arial, Helvetica, sans-serif;"> afin qu'il pointe aussi sur notre nom générique. Cela s'effectue au travers de la Cmdlet </span><b style="font-family: Arial, Helvetica, sans-serif;">Set-OutlookAnywhere</b><span style="font-family: Arial, Helvetica, sans-serif;">:</span><br />
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Get-OutlookAnywhere -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | Set-OutlookAnywhere -InternalHostName "<span style="color: #cc0000;">ex.w15-lab.com</span>" -InternalClientsRequireSsl:$true</span></b></li>
</ul>
<span style="font-family: Arial, Helvetica, sans-serif;">Vous pouvez vérifier la bonne application du changement en utilisant la Cmdlet </span><b style="font-family: Arial, Helvetica, sans-serif;">Get-OutlookAnywhere</b><span style="font-family: Arial, Helvetica, sans-serif;">:</span><br />
<div>
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Get-OutlookAnywhere -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ADPropertiesOnly | fl *Internal*</span></b></li>
</ul>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfg6s0PuBuU6ILzNfSIQvpyhreArBgXc1eEFkqHkydwXstu-9R8wQrkGYbnLkxEadtIwSl4xC67EZTkkSVE_sQhRnZ6_MFvLh5OAzc3jzykveLHcz6OtvnYWlEFpIK-YTUKOHFj3CzbwQb/s1600/2012-11-22_115912.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfg6s0PuBuU6ILzNfSIQvpyhreArBgXc1eEFkqHkydwXstu-9R8wQrkGYbnLkxEadtIwSl4xC67EZTkkSVE_sQhRnZ6_MFvLh5OAzc3jzykveLHcz6OtvnYWlEFpIK-YTUKOHFj3CzbwQb/s640/2012-11-22_115912.gif" width="640" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Dès lors, vous pouvez reproduire la même configuration pour vos autres serveurs CAS. Vous pouvez utiliser l'Exchange Administration Center (<b>https://<span style="color: #cc0000;">serveur.domaine.com</span>/ecp</b> en vous authentifiant avec un compte appartenant au(x) bon(s) Role Group(s)) et en allant dans les sections suivantes:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Servers ==> Virtual directories</b> pour les Web Services classiques (OWA/ECP, EWS, EAS, OAB)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Servers ==> Servers ==> double-click puis section "Outlook Anywhere" </b>pour la configuration du "<b>InternalHostName</b>" Outlook Anywhere.</span></li>
</ul>
<div>
<span style="color: #cc0000; font-family: Arial, Helvetica, sans-serif;"><b>Rappelez vous qu'il faudra quand même configurer l'AutodiscoverServiceInternalUri en Shell, l'EAC ne proposant pas la modification du champ.</b></span></div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Avant de tester la connexion avec un client Outlook, vous devrez attendre que les changements soient effectifs/commités dans la base IIS et la configuration Exchange de tous vos serveurs. Pour cela, cherchez dans l'eventlog Application une écriture au journal de l'évènement </span><b style="font-family: Arial, Helvetica, sans-serif;">ID3025 </b><span style="font-family: Arial, Helvetica, sans-serif;">de la source "</span><b style="font-family: Arial, Helvetica, sans-serif;">MSExchange RPC Over HTTP Autoconfig</b><span style="font-family: Arial, Helvetica, sans-serif;">".</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhV1LMZesi-pYPO94p22XAvnUYafzhEknoESWs-XVptwhQqR2Z0VxLUmS7QUiKT0LVq4IaAsFOB5SGZFExvxxIijW4I3WpAbcLr_L5O8ki-jiXAlxCUOsWrGtWPsVU7a8sVwNuSxf8DG2wu/s1600/2012-11-22_133444.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhV1LMZesi-pYPO94p22XAvnUYafzhEknoESWs-XVptwhQqR2Z0VxLUmS7QUiKT0LVq4IaAsFOB5SGZFExvxxIijW4I3WpAbcLr_L5O8ki-jiXAlxCUOsWrGtWPsVU7a8sVwNuSxf8DG2wu/s400/2012-11-22_133444.gif" width="400" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">En attendant que cela soit le cas, vous devez faire les actions suivantes:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Créer un certificat à base d'un modèle "Web Server" ou d'un dérivé, et l'assigner à IIS</b>. Pour ma part j'utilise un certificat "Wildcard" généré par un script, et ayant le <b>InternalHostName </b>et optionnellement (nous y viendrons plus tard) le <b>ExternalHostName </b>dans l'attribut SAN. Mon certificat n'a pas les Fqd des serveurs CAS dans le SAN, c'est mon côté puriste même si je comprends que certains préfèrent les avoir.</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Créer le ou les enregistrements DNS correspondant(s) au nom générique de connexion</b></span></li>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><u>Pour du DNS round-robin</u>, créez 'n' enregistrement de type A ayant le même nom. Dans mon cas, cela fait 2 enregistrements DNS dans ma zone DNS "w15-lab.com"</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><u>Pour du load-balancing classique</u>, il suffit de faire pointer l'enregistrement A sur la VIP créée à cet effet.</span></li>
</ul>
</ul>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrM3ieFeeV98xzKT2Itt26_OVP_5IiyeikIuUDySbBr8Jo5zt7ucob71D8OQRU12jvbcAcfDZec6qexm6fqkSPPftlJFNAccsIOlpeqHuDk1RBLpW1JpQwEH-12WF01-v88df80V7Yi6a9/s1600/2012-11-22_175916.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="299" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrM3ieFeeV98xzKT2Itt26_OVP_5IiyeikIuUDySbBr8Jo5zt7ucob71D8OQRU12jvbcAcfDZec6qexm6fqkSPPftlJFNAccsIOlpeqHuDk1RBLpW1JpQwEH-12WF01-v88df80V7Yi6a9/s640/2012-11-22_175916.gif" width="640" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Faites ensuite un redémarrage d'IIS sur chacun des CAS (iisreset /noforce). Cette étape n'est normalement pas requise mais j'ai eu des comportements bizarres sur les URL retournées lors de l'Autodiscover.</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Une fois toutes ces actions effectuées, vous pouvez démarrer votre client Outlook (testé avec Outlook 2010 ici).</span></div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Configuration Serveur Exchange et Exchange Rpc/HTTP Proxy</b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwpdU0m1YLJ_3Vvj4Uq9cw3Ou2VkzXkpAGTw-vVr1EXAEKckdVh4lYY_OY0A8gF-VEb8AcZI7uQqXx9kswjPE43dgiUN9XFZLmJSit7OKKbXOdQteMqNG6PYoxrrFwgefrbif0m6GchT7c/s1600/2012-11-22_140038.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="135" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwpdU0m1YLJ_3Vvj4Uq9cw3Ou2VkzXkpAGTw-vVr1EXAEKckdVh4lYY_OY0A8gF-VEb8AcZI7uQqXx9kswjPE43dgiUN9XFZLmJSit7OKKbXOdQteMqNG6PYoxrrFwgefrbif0m6GchT7c/s400/2012-11-22_140038.gif" width="400" /></a></div>
<div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqrjeVSyq99JV1vtgQ99lALGmoRmOW64QLB-qWm5_43WoAvWagBaiByu8ZuLDrbvV4zxay3TgKm91tSCi1lcjo-ZmcH64L0mJeqGWrv_ujFJmA4KH7ORX2tBHye-E8iMy5PwEvDSd5ZvbZ/s1600/2012-11-22_135956.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="353" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqrjeVSyq99JV1vtgQ99lALGmoRmOW64QLB-qWm5_43WoAvWagBaiByu8ZuLDrbvV4zxay3TgKm91tSCi1lcjo-ZmcH64L0mJeqGWrv_ujFJmA4KH7ORX2tBHye-E8iMy5PwEvDSd5ZvbZ/s400/2012-11-22_135956.gif" width="400" /></a></div>
<b style="font-family: Arial, Helvetica, sans-serif;">Etat des connexions:</b><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW7iffoTrUp31Z5dHbppzJyorbmPjyLbVxz6c1scaRp73EOJIFcYpTAm2XEckcri4iYSjSkDnNSajdZz4K0mNtnvS2q6z_WL5xDjj9mf5rju_ABe9UburHvVhbsKFy3SqCkS0-hdchyphenhyphentwU/s1600/2012-11-22_135754.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="208" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW7iffoTrUp31Z5dHbppzJyorbmPjyLbVxz6c1scaRp73EOJIFcYpTAm2XEckcri4iYSjSkDnNSajdZz4K0mNtnvS2q6z_WL5xDjj9mf5rju_ABe9UburHvVhbsKFy3SqCkS0-hdchyphenhyphentwU/s640/2012-11-22_135754.gif" width="640" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">On notera en particulier les points suivants:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">Le nom du serveur Exchange (ou anciennement du CAS Array) n'a plus lieu d'être est est remplacé par un GUID (GUID@forest.com)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">La configuration du Rpc/HTTP s'est fait automatiquement, comme pour les versions précédentes mais avec la subtilité d'avoir détecté une connectivité "interne" et donc une configuration du Rpc/HTTP Proxy faisant référence à <b>l'InternalHostName </b>configuré précédemment.</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">On remarquera aussi que les deux options visant à forcer l'utilisation du Rpc/HTTP sont forcées, et ceci s<u>ans configurer l'OutlookProvider EXPR</u>.</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">On voit aussi clairement que la configuration par défaut se fait en <b>Ntlm </b>(auto-configuré ainsi) et en <b>SSL </b>(par défaut aussi).</span></li>
</ul>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Nous sommes maintenant connectés, passons donc à la seconde partie: le Kerberos !</span></div>
</div>
<h2>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Seconde partie: configuration du Kerberos</b></span></h2>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">La configuration du Kerberos pour Exchange 2013 est dans la continuité d'Exchange 2010. Nous devons procéder ainsi:</span><br />
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Créer un objet pour l'Alternate Service Account</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Lui assigner les Service Pincipal Names qui nous intéressent</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Le configurer sur chaque serveur CAS</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Reconfigurer le mode d'authentification</span></li>
</ul>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Création de l'Alternate Service Account</b>:</span></div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">J'utilise un objet de type "Computer", nommé ici <b>EXCHANGE-MAIN$.</b> La subtilité ici est qu'un compte d'ordinateur n'a pas de mot de passe positionné lorsqu'il est ajouté au domaine via la pré-création d'un objet. Puisqu'il n'y a pas à proprement parler de serveur à joindre au domaine, nous allons devoir positionner un mot de passe.</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Pour ma part, j'utilise un script pour générer un mot de passe très long et très aléatoire puis un autre script pour faire une réinitialisation du mot de passe du compte ordinateur.</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Lorsque l'objet est créé, il ne dispose d'aucun nom de service associé. Nous allons donc les créer à l'aide de la commande <b>SETSPN</b>.</span></div>
<div>
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">setspn.exe -A HTTP/<span style="color: #cc0000;">ex.w15-lab.com</span> <span style="background-color: #fff2cc; color: #cc0000;">WFLAB\EXCHANGE-MAIN$</span></span></b></li>
</ul>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia0j6l-dnFuuQMa5aRSsPn5TRwJ93-mQBCFfA8LGbjAId_lL6dl5If1kVDKxxTkcp_TQj0XUs4_w-suAjM6oZiYKTsk_Ni8rVb_Z4g3JY9dRIKjcopZ1f4i8hyphenhyphenPEiYml5gYiHlNTGcSa21/s1600/2012-11-22_141659.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia0j6l-dnFuuQMa5aRSsPn5TRwJ93-mQBCFfA8LGbjAId_lL6dl5If1kVDKxxTkcp_TQj0XUs4_w-suAjM6oZiYKTsk_Ni8rVb_Z4g3JY9dRIKjcopZ1f4i8hyphenhyphenPEiYml5gYiHlNTGcSa21/s640/2012-11-22_141659.gif" width="640" /></a></div>
<div>
<b style="font-family: Arial, Helvetica, sans-serif;">Assignation de l'Alternate Service Account:</b></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Vous devrez procéder en mettant les Credentials de l'objet dans une variable, ici $ASA. </span><span style="font-family: Arial, Helvetica, sans-serif;">L’assignation</span><span style="font-family: Arial, Helvetica, sans-serif;"> s'effectue au travers de la Cmdlet Set-ClientAccessServer, comme dans Exchange 2010:</span></div>
<div>
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"><span style="color: #cc0000;">$ASA</span> = Get-Credential -Credential "<span style="background-color: #fff2cc; color: #cc0000;">WFLAB\EXCHANGE-MAIN$</span>"</span></b></li>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Set-ClientAccessServer -Identity <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -AlternateServiceAccountCredential <span style="color: #cc0000;">$ASA</span></span></b></li>
</ul>
</div>
<div>
<b style="color: #cc0000; font-family: Arial, Helvetica, sans-serif; text-decoration: underline;">Répétez l'opération pour chaque serveur CAS partageant le même pool. </b><span style="font-family: Arial, Helvetica, sans-serif;">Rappelez vous que l'Alternate Service Account ne peut être manipulé à distance (même en utilisant un </span><b style="font-family: Arial, Helvetica, sans-serif;">Connect-ExchangeServer -Fqdn <nomduserveur .domaine.ext=".domaine.ext"></nomduserveur></b><span style="font-family: Arial, Helvetica, sans-serif;">. Le plus simple est donc de se connecter en RDP à chaque serveur ou d'utiliser le script </span><b style="font-family: Arial, Helvetica, sans-serif;">RollAlternateServiceAccountPassword.ps1</b><span style="font-family: Arial, Helvetica, sans-serif;"> (qui - fait rigolo - affiche fièrement ne pas avoir été testé avec cette version d'Exchange :)).</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Par exemple</b>:</span></div>
<div>
<ul>
<li><b style="font-family: 'Courier New', Courier, monospace;"><span style="font-size: xx-small;">.\RollAlternateServiceAccountPassword.ps1 -CopyFrom <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span> -ToSpecificServers <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-2</span></span></b></li>
</ul>
</div>
<div>
<b style="font-family: Arial, Helvetica, sans-serif;">Reconfiguration du mode d'authentification</b></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Comme nous l'avons vu précédemment, Outlook Anywhere est donc configuré par défaut en </span><b style="font-family: Arial, Helvetica, sans-serif;">Ntlm</b><span style="font-family: Arial, Helvetica, sans-serif;">. Nous devons donc reconfigurer chaque serveur CAS afin de bascule l'authentification en mode Negotiate afin de faire du Kerberos (avec fail-back en Ntlm potentiel). Nous le verrons plus tard, mais il existe d'autres modes d'authentification, comme le Nego2 mais qui n'est semble-t-il pas supporté sur Windows XP, même avec Outlook 2010. A terme, l'idée serait peut-être même de forcer le Kerberos, ce qui est totalement possible avec Exchange 2013 (à tester !).</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Nous utiliserons la Cmdlet <b>Set-OutlookAnywhere</b> afin de reconfigurer l'authentification, l'Exchange Administration Center ne permettant que de modifier la méthode d'authentification externe (NDLR: Microsoft a encore pas mal de boulot pour finaliser l'EAC, trop léger à mon goût...).</span></div>
<div>
<div>
<ul>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Get-OutlookAnywhere -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-1</span><b style="font-family: 'Times New Roman'; font-size: medium;"><span style="font-size: xx-small;"><span style="font-family: Courier New, Courier, monospace;"> -ADPropertiesOnly</span></span></b> | Set-OutlookAnywhere -InternalClientAuthenticationMethod <span style="color: #cc0000;">Negotiate </span>-IISAuthenticationMethods <span style="color: #cc0000;">Negotiate,Ntlm</span></span></b></li>
<li><b><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">Get-OutlookAnywhere -Server <span style="background-color: #fff2cc; color: #cc0000;">SV-E15-2</span><b style="font-family: 'Times New Roman'; font-size: medium;"><span style="font-size: xx-small;"><span style="font-family: Courier New, Courier, monospace;"> -ADPropertiesOnly</span></span></b> | Set-OutlookAnywhere -InternalClientAuthenticationMethod <span style="color: #cc0000;">Negotiate </span>-IISAuthenticationMethods <span style="color: #cc0000;">Negotiate,Ntlm</span></span></b></li>
</ul>
</div>
<div style="font-family: Arial, Helvetica, sans-serif;">
Encore une fois, vous devrez surveiller l'eventlog Application afin de vérifier que la configuration Outlook Anywhere a bien été prise en compte et la configuration IIS alignée en conséquence (event ID 3025). <b><u>Rappel</u></b>: L'attente peut durer jusqu'à 15 minutes.</div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Vous pouvez aussi vérifier les </span><b style="font-family: Arial, Helvetica, sans-serif;">Authentication Providers</b><span style="font-family: Arial, Helvetica, sans-serif;"> dans IIS sur l'application </span><b style="font-family: Arial, Helvetica, sans-serif;">/Rpc</b><span style="font-family: Arial, Helvetica, sans-serif;"> et assurez-vous d'avoir (dans cet ordre: Negotiate et NTLM). Cette partie est normalement gérée par Exchange mais il semblerait que la synchronisation AD - Exchange - IIS ne fonctionne pas toujours très bien lors de modifications successives trop fréquentes... MEF !</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Dès lors, vous pouvez redémarrer votre client Outlook. Celui-ci va se reconnecter en Ntlm puisque telle est la configuration actuellement en place coté client. L'avantage du mode Negotiate est donc de supporter une transition vers le Kerberos s'il est disponible, sans pour autant perturber le fonctionnement des clients déjà configurés.</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Si vous ne voulez pas attendre une reconfiguration automatique de votre client (ce qui peut prendre jusqu'à 2 heures), effectuez une réparation de votre service Exchange, ce qui a pour effet de refaire appel au Web Service Autodiscover.</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpwibB0xIeaxZUudeWL5NBqQflkFoyyNL2Pul36LKdaRa8mdWkJHx93SbvgTzYA4zjMYGKUkWnetyppL1vL3Bpl_otATkdqyZWAxU2AyQmu2eOXeSHhE5ixfuAepnJGOEPTOsQhCNy2N3W/s1600/2012-11-22_152548.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="260" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpwibB0xIeaxZUudeWL5NBqQflkFoyyNL2Pul36LKdaRa8mdWkJHx93SbvgTzYA4zjMYGKUkWnetyppL1vL3Bpl_otATkdqyZWAxU2AyQmu2eOXeSHhE5ixfuAepnJGOEPTOsQhCNy2N3W/s400/2012-11-22_152548.gif" width="400" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">On voit bien d'ailleurs lorsque l'on fait un Test d'AutoConfiguration que l'on est configuré sur un autre mode d'authentification (ici, Nego2).</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRgBrmMS3FNiOHPlR3xnuP9GGRucNrwq9_1DCvuif5M2_bb187MS5Zo6Jd9x7XNAJXfTw1a1NF9j5M0A1B3YTk77GZ2gN3CIx2KPy4lJnoF0pFXzon_9ILJt0yRT0cj8iQxrj_gwUNh2fA/s1600/2012-11-22_153923.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRgBrmMS3FNiOHPlR3xnuP9GGRucNrwq9_1DCvuif5M2_bb187MS5Zo6Jd9x7XNAJXfTw1a1NF9j5M0A1B3YTk77GZ2gN3CIx2KPy4lJnoF0pFXzon_9ILJt0yRT0cj8iQxrj_gwUNh2fA/s400/2012-11-22_153923.gif" width="400" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Et voici donc le résultat en se reconnectant et après une purge des tickets Kerberos (klist purge):</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgM4dzsPUYmxMWEgAchhKLRyZwZz5UE5PwNtudGYsySJqiE1UPWBHtj4jMBR6dX8Tq-BnW2KA8M8OIhyphenhyphenlQLtVCh_Mb1YslzlDWCnmtec8xdwTF7GTe2GbWDz0D7UVP3TM-jlZXNi2lmUf01/s1600/2012-11-22_153345.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgM4dzsPUYmxMWEgAchhKLRyZwZz5UE5PwNtudGYsySJqiE1UPWBHtj4jMBR6dX8Tq-BnW2KA8M8OIhyphenhyphenlQLtVCh_Mb1YslzlDWCnmtec8xdwTF7GTe2GbWDz0D7UVP3TM-jlZXNi2lmUf01/s640/2012-11-22_153345.gif" width="640" /></a></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b><br /></b></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><b>Promotion en Kerberos complet</b></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Maintenant que nous avons vu comment configurer le mode Negotiate (le plus compatible), nous pouvons pousser l'exercice plus loin et forcer l'utilisation de Kerberos. N'appliquez pas cette procédure sur un environnement de production sans l'avoir testée dans un environnement de pré-production fonctionnellement similaire à la production.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">La reconfiguration se fait de la même manière que précédemment, en utilisant la Cmdlet </span><b style="font-family: Arial, Helvetica, sans-serif;">Set-OutlookAnywhere</b><span style="font-family: Arial, Helvetica, sans-serif;">:</span></div>
<div>
<div>
<ul>
<li><b><span style="font-size: xx-small;"><span style="font-family: Courier New, Courier, monospace;">Get-OutlookAnywhere -Server </span><span style="background-color: #fff2cc; color: #cc0000; font-family: 'Courier New', Courier, monospace;">SV-E15-1</span><span style="font-family: Courier New, Courier, monospace;"> -ADPropertiesOnly</span><span style="font-family: Courier New, Courier, monospace;"> | Set-OutlookAnywhere -InternalClientAuthenticationMethod </span><span style="color: #cc0000; font-family: 'Courier New', Courier, monospace;">NegoEx </span><span style="font-family: Courier New, Courier, monospace;">-IISAuthenticationMethods </span><span style="color: #cc0000; font-family: 'Courier New', Courier, monospace;">Kerberos</span></span></b></li>
<li><span style="font-size: xx-small;"><b style="font-family: 'Courier New', Courier, monospace;">Get-OutlookAnywhere -Server </b><span style="background-color: #fff2cc; font-family: 'Courier New', Courier, monospace;"><span style="color: #cc0000;"><b>SV-E15-2</b></span></span><b style="font-family: 'Courier New', Courier, monospace;"><b style="font-family: 'Times New Roman'; font-size: medium;"><span style="font-size: xx-small;"><span style="font-family: Courier New, Courier, monospace;"> -ADPropertiesOnly</span></span></b> | Set-OutlookAnywhere -InternalClientAuthenticationMethod <span style="color: #cc0000;">NegoEx </span>-IISAuthenticationMethods <span style="color: #cc0000;">Kerberos</span></b></span></li>
</ul>
<div>
<span style="color: #cc0000; font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Note: vous pouvez utiliser "NegoEx" ou "Negotiate" pour l'InternalClientAuthenticationMethod.</b></span></div>
</div>
<div style="font-family: Arial, Helvetica, sans-serif;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTijqol_ROFgPjX4PPRjafdNdYJIV_9LCZyz7ItUkGQKD_8BRh4qwr5sU3c4iGJm_aW5ZOaqIaXZX_M22pjnaqBUUKGoD3LhsAp9ATQKi3BIYr4xs1FTxsIJOvIofw9NOqySYVAUQUtKMV/s1600/2012-11-22_160252.gif" imageanchor="1" style="font-family: 'Times New Roman'; margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="84" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTijqol_ROFgPjX4PPRjafdNdYJIV_9LCZyz7ItUkGQKD_8BRh4qwr5sU3c4iGJm_aW5ZOaqIaXZX_M22pjnaqBUUKGoD3LhsAp9ATQKi3BIYr4xs1FTxsIJOvIofw9NOqySYVAUQUtKMV/s640/2012-11-22_160252.gif" width="640" /></a></div>
</div>
</div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">D'un point de vue client, rien de change, on reste en <b>Negotiate </b>mais ce qui change est surtout côté serveur et des Authentication Providers, où l'on passe de "<b>Negotiate</b>" et "<b>NTLM</b>" à "<b>Negotiate:Kerberos</b>".</span></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpAzXcsque8oKGVZiXn8r8o-MyvyNXr1JkiXv9yHlySqi-62owxVK4sikQUJ38VeWegxFbCuELyl5nNcSMozodDa2YHgek3jFPL3jnMQYuxOH_Wj1uYqHBF6sZJaAc0B4Z1B0d_IlSyM1V/s1600/2012-11-22_160154.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpAzXcsque8oKGVZiXn8r8o-MyvyNXr1JkiXv9yHlySqi-62owxVK4sikQUJ38VeWegxFbCuELyl5nNcSMozodDa2YHgek3jFPL3jnMQYuxOH_Wj1uYqHBF6sZJaAc0B4Z1B0d_IlSyM1V/s640/2012-11-22_160154.gif" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<b style="font-family: Arial, Helvetica, sans-serif;"><br /></b></div>
<div class="separator" style="clear: both; text-align: left;">
<b style="font-family: Arial, Helvetica, sans-serif;">Notez que forcer le Kerberos sur cette partie d'IIS va impacter vos connexions externe, puisque un client hors Active Directory ne pourra utiliser Kerberos</b><span style="font-family: Arial, Helvetica, sans-serif;">. Cela dépendra donc de la capacité de fournir une authentification externe en Negotiate et d'effectuer ou non de la délégation Kerberos via le Reverse Proxy, type ISA/TMG.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com3tag:blogger.com,1999:blog-4191071335435771394.post-40263472510922817172012-11-20T18:09:00.001+01:002012-11-24T00:50:19.358+01:00[INFO]: Activer Kerberos pour Outlook Anywhere (clients internes)<span style="font-family: Arial, Helvetica, sans-serif;">Les avantages d'activer Kerberos avec Exchange 2010 ne fait plus de doute pour personne. <a href="http://unifiees.blogspot.fr/2010/07/tutoriel-exchange-2010-sp1-activer.html" target="_blank">C'est pleinement supporté depuis Exchange Server 2010 SP1 et fait partie du béa-ba d'une implémentation propre et pouvant monter en charge</a>.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Qu'en est-il d'Outlook Anywhere ou plus précisément du Rpc/HTTP.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Pourquoi faire la distinction? Je m'explique...</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Lorsque l'on parle d'Outlook Anywhere, cela représente la fonctionnalité (se connecter sans VPN avec un client lourd, et hors des frontières de l'Entreprise, autrement dit, généralement depuis une connexion Internet lambda et via un Reverse Proxy). La fonctionnalité Outlook Anywhere inclut <i>de facto</i> un ensemble d'aspect techniques: les Web Services (Autodiscover, OAB, EWS) et le fameux Rpc/HTTP.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">En mode </span><i style="font-family: Arial, Helvetica, sans-serif;">stricto-sensu</i><span style="font-family: Arial, Helvetica, sans-serif;"> Outlook Anywhere, nous n'avons pas accès à l'Active Directory et donc à un "Key Distribution Center" (KDC). La négociation Kerberos ne peut donc se faire. Dès lors, les modes d'authentification possible deviennent "</span><i style="font-family: Arial, Helvetica, sans-serif;">Basic</i><span style="font-family: Arial, Helvetica, sans-serif;">" et "</span><i style="font-family: Arial, Helvetica, sans-serif;">Ntlm</i><span style="font-family: Arial, Helvetica, sans-serif;">". Soit... ça c'était "avant"... :)</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Lorsque l'on est en interne, il arrive que l'on veuille forcer l'utilisation du Rpc/HTTP afin de rester dans un mode "Web" et donc passer outre les équipements de sécurité plus facilement. Il arrive aussi que cela soit à des fins de sécurité (un RSSI a plus confiance en SSL qu'en un cryptage MAPI par exemple...). Dès lors, il était donc possible (et recommandé) d'activer le "</span><i style="font-family: Arial, Helvetica, sans-serif;">Ntlm</i><span style="font-family: Arial, Helvetica, sans-serif;">" afin de conserver du Single-Sign On (SSO).</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Mais le Kerberos n'était pas disponible... Jusqu'à semble-t-il récemment.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Sachant qu'Exchange 2013 fait seulement du Rpc/HTTP, cela permet de donner un avant goût d'un mode Rpc/HTTP full Kerberos avec Exchange 2010 !</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Le principe est simple: il s'agit de permettre à Exchange de répondre au nom de service Outlook Anywhere (un nom généralement externe) et d'activer l'authentification par négociation sur les CAS (ce qui est le cas pour tous les Web Services, mais ne l'est pas par défaut pour le Rpc/HTTP).</span><br />
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Pour le premier point</b>, il s'agit d'ajouter le Fqdn d'Outlook Anywhere au compte de service Kerberos d'Exchange (le fameux "AlternateServiceAccount") - cela se fait en utilisant SETSPN (<b><u>par exemple</u></b>: <b>setspn -A HTTP/<span style="color: #cc0000;">outlookanywhere.domain.com</span> DOMAIN\AlternateServiceAccount</b>)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Pour le second point</b>, il faut configurer Outlook Anywhere sur chaque CAS afin d'utiliser le mode "NegoEx" (<b><u>par exemple</u></b>: <b>Get-OutlookAnywhere -Server <span style="color: #cc0000;">MonServeurCAS1 </span>-ADPropertiesOnly | Set-OutlookAnywhere -ClientAuthenticationMethod <span style="background-color: #fff2cc; color: #cc0000;">NegoEx </span>-IISAuthenticationMethods <span style="background-color: #fff2cc; color: #cc0000;">Ntlm</span></b>)</span></li>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Note</b>: la valeur "<b>Ntlm</b>" positionnée pour les méthodes d'authentification IIS configurera en fait le répertoire virtuel "<b>/Rpc</b>" en activant l'authentification intégrée Windows avec les fournisseurs suivants: "<i>Negotiate</i>" et "<i>NTLM</i>" (dans cet ordre).</span></li>
</ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">Vous devrez ensuite créer un nouveau pool d'application dans IIS (Application Pool). Nous pouvons le nommer par exemple "<b>MSExchangeRpcProxyAppPool</b>" (même nom qu'Exchange 2013 :)) et utiliser les paramètres suivants:</span></li>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>IdentityType</b>: LocalSystem</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>QueueLength</b>: 1000 pour une infrastructure de taille moyenne, 10000 pour une infrastructure devant supporter une majorité de clients en Rpc/Http</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>ProcessModel / LoadUserProfile</b>: False</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>ProcessModel / IdleTimeout</b>: 0</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Recycling / PeriodicRestart / Time</b>: 0 (jamais)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Failure / RapidFailProtection</b>: False</span></li>
</ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">Vous devrez ensuite assigner l'Application Pool au répertoire virtuel "/Rpc" (et idéalement, au répertoire virtuel "/RcpWithCert", que nous n'utiliserons pas ici).</span></li>
</ul>
<ul>
</ul>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgF0s_5muTD-SFrz5eGbz-9YwoRQZDcz9teUZOA4ZSgm-7UlZwTJQI9lhSrFfG9OtkYA3usR_1DBWLYYR5H4jagCJYkBru4GOyEG_VAT1BEizv8D5uMh6amKJ3Z1Ul1K0fmakfCvdWTtPHH/s1600/2012-11-24_004124.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="416" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgF0s_5muTD-SFrz5eGbz-9YwoRQZDcz9teUZOA4ZSgm-7UlZwTJQI9lhSrFfG9OtkYA3usR_1DBWLYYR5H4jagCJYkBru4GOyEG_VAT1BEizv8D5uMh6amKJ3Z1Ul1K0fmakfCvdWTtPHH/s640/2012-11-24_004124.gif" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1txK1t7-54nRSulBabBEc1I_N48mmuXlCGI9fz2kspTFFGH_s6XRa-eK8UHmIgQqWZCX4-fF2CXAly8tzBTCIrzGrc_pnnykD65ZUNkfTa0rDDVGJM6MJfg1pu7BScrl-buJkW-SaVkDM/s1600/2012-11-24_004831.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1txK1t7-54nRSulBabBEc1I_N48mmuXlCGI9fz2kspTFFGH_s6XRa-eK8UHmIgQqWZCX4-fF2CXAly8tzBTCIrzGrc_pnnykD65ZUNkfTa0rDDVGJM6MJfg1pu7BScrl-buJkW-SaVkDM/s640/2012-11-24_004831.gif" width="640" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Une fois ces modifications effectuées, il est recommandé d'attendre quelques minutes afin que les changement soient effectivement pris en compte.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Il reste un point essentiel, voire deux:</span></div>
<div>
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Créer un "Split DNS" </b>afin de résoudre le Fqdn d'Outlook Anywhere via un DNS interne. Cela peut se faire facilement si vous avez déjà un split DNS. Sinon, il suffit de créer une zone DNS nommé "outlookanywhere.domain.com" et de créer un enregistrement de type "A" (Host) vide en spécifiant l'adresse IP du load-balancer. La relativité du DNS fait le reste...</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><b>Sur la partie load-balancer ou sur les CAS </b>si vous ne faites pas de SSL Offloading ou de SSL Briding, et si ce n'était pas déjà le cas, remplacez le certificat de manière à avoir le Fqdn d'Outlook Anywhere en "Subject Name" et les autres noms (internes) en "Subject Alternate Names". Si vous ne voulez/pouvez pas faire ces modifications, vous pouvez configurer l'Outlook Provider "EXPR" afin que le nom pour l'authentification mutuelle SSL se fasse avec le Fqdn porté par le "Subject Name" du certificat. Attention toutefois, cela impacte vos clients "externes" et le nom doit être en adéquation avec le certificat porté par le Reverse Proxy. Par conséquent, la manipulation peut s'avérer plus ou moins complexe en fonction de la configuration en place.</span></li>
</ul>
<span style="font-family: Arial, Helvetica, sans-serif;">Il </span><b style="font-family: Arial, Helvetica, sans-serif;">est pris l'hypothèse que vous êtes déjà capable de load-balancer le Rpc/HTTP</b><span style="font-family: Arial, Helvetica, sans-serif;"> avec une bonne affinité (par exemple, cookie applicatif "OutlookSession") ou sinon n'utilisiez pas d'affinité du tout (le composant RPCHTTP-LB le faisant pour vous côté des serveurs Exchange au prix d'une consommation CPU accrue).</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Dès lors, lors du prochain démarrage d'un client Outlook 2010 SP1 et pleinement mis à jour (testé avec les mises à jour de Novembre 2012) et après avoir forcé l'Autodiscover à reconfigurer la partie Rpc/HTTP proxy (un "repair" du profil s'impose, sinon attendre au max 2 heures), le client est maintenant configuré en mode "</span><b style="font-family: Arial, Helvetica, sans-serif;"><i>Negotiate</i></b><span style="font-family: Arial, Helvetica, sans-serif;">" et non plus "</span><i style="font-family: Arial, Helvetica, sans-serif;"><b>Basic</b></i><span style="font-family: Arial, Helvetica, sans-serif;">" ou "</span><i style="font-family: Arial, Helvetica, sans-serif;"><b>Ntlm</b></i><span style="font-family: Arial, Helvetica, sans-serif;">".</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif; margin-left: 1em; margin-right: 1em; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXbaDp5zBKKzgAM5eDJqs8ahMSpMlaoJ7L86j8wyQwtkEhRvsZmb8R7GN_bUIuMeHLDT21r-_9FMlJDVsoFHVVBQIGs2iqbMVoK836-hG9d2WAaghSi_in9QmQmaPP26G3ZfZC7tPTJ3SV/s1600/2012-11-20_172326_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" height="354" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXbaDp5zBKKzgAM5eDJqs8ahMSpMlaoJ7L86j8wyQwtkEhRvsZmb8R7GN_bUIuMeHLDT21r-_9FMlJDVsoFHVVBQIGs2iqbMVoK836-hG9d2WAaghSi_in9QmQmaPP26G3ZfZC7tPTJ3SV/s400/2012-11-20_172326_2.gif" width="400" /></a></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkI9nHjPbM6ecigyv4sLdZ_XQNxiF4Psum_WnYGMH5QqBOLvl4wdQEXkJo5V9R4d4tbwv97F4rTkjWCsgKRelVRfp833E_5rgroSFk3xMGZwHUcxTa0tGeaWRPK67eLVDFWheZFctVLYpr/s1600/2012-11-20_165325_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="186" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkI9nHjPbM6ecigyv4sLdZ_XQNxiF4Psum_WnYGMH5QqBOLvl4wdQEXkJo5V9R4d4tbwv97F4rTkjWCsgKRelVRfp833E_5rgroSFk3xMGZwHUcxTa0tGeaWRPK67eLVDFWheZFctVLYpr/s640/2012-11-20_165325_2.gif" width="640" /></span></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Une petite vérification d'impose aussi sur les tickets Kerberos (avec <b>KLIST</b>):</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq6gPt1U2uwol-MWpgH_C5Eh1h0IsdWfJ1iKAiFH5sqOZwJ6zKeC6RyGDJrwu5bZfSWKzyGGL7QDMnAL85I30rclhWYcU5mkr-j3yWomloVZWZOu54HZwUzOH1OM8jERR8DyMSf-LEJdrY/s1600/2012-11-20_174023_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="228" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq6gPt1U2uwol-MWpgH_C5Eh1h0IsdWfJ1iKAiFH5sqOZwJ6zKeC6RyGDJrwu5bZfSWKzyGGL7QDMnAL85I30rclhWYcU5mkr-j3yWomloVZWZOu54HZwUzOH1OM8jERR8DyMSf-LEJdrY/s640/2012-11-20_174023_2.gif" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: left;">
Malheureusement, je n'ai pas encore réussi à faire fonctionner l'authentification par négociation avec un client <b>Outlook 2007 SP3</b>, même pleinement mis à jour. Cependant le mode d'authentification est disponible dans les propriétés Rpc/HTTP d'Outlook 2007 (depuis longtemps en fait).</div>
<div class="separator" style="clear: both; text-align: left;">
En effet, lorsque mon client Outlook 2007 tente de se connecter, il échoue et se connecte en Mapi/Rpc classique et la méthode d'authentification se repositionne systématiquement sur "<b>Basic</b>". Il semble donc qu'il ne sache pas interpréter le mode d'authentification NegoEx (ci-dessous "<b><a href="http://msdn.microsoft.com/en-us/library/dd303576(v=prot.20).aspx" target="_blank">Nego2</a></b>" dans Outlook 2010 SP1).</div>
<div class="separator" style="clear: both; text-align: left;">
Démonstration:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgocv5UMGbszV_wG20e98ZUPiJISacc7F_MQ-EpYoN5uPUPr_M2h_7wtCk9lJMbSyLP0ZLUONJ2f1JB4BG_ZfjESOs5VnHYqOEqtSVJJZn3QXa4e6pUPhKElpHg7xdPAmVv4ETNhNEDlId6/s1600/2012-11-20_175224_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgocv5UMGbszV_wG20e98ZUPiJISacc7F_MQ-EpYoN5uPUPr_M2h_7wtCk9lJMbSyLP0ZLUONJ2f1JB4BG_ZfjESOs5VnHYqOEqtSVJJZn3QXa4e6pUPhKElpHg7xdPAmVv4ETNhNEDlId6/s1600/2012-11-20_175224_2.gif" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTxSw8-4TSo5OAno1uvun_8g_uZTfb16LmAV57zbrJzZ90CdPAV7m0asSxr7BMrk4x2ZAtKnbbsWl_EYyQxpXwDbkKjniUn9k_3_l0kIbgJyHowAnh1fcv7LEY7z946g9xxCkh6RvSqKIU/s1600/2012-11-20_175344_2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="294" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTxSw8-4TSo5OAno1uvun_8g_uZTfb16LmAV57zbrJzZ90CdPAV7m0asSxr7BMrk4x2ZAtKnbbsWl_EYyQxpXwDbkKjniUn9k_3_l0kIbgJyHowAnh1fcv7LEY7z946g9xxCkh6RvSqKIU/s640/2012-11-20_175344_2.gif" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-42259850732602374652012-11-14T19:28:00.002+01:002012-11-14T19:28:48.280+01:00[ALERTE]: Exchange Server 2010 SP2 Rollup 5<span style="font-family: Arial, Helvetica, sans-serif;">Certains d'entre vous ont pu voir que le Rollup 5 d'Exchange Server 2010 SP2 a été mis à disposition au téléchargement aujourd'hui.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<b><span style="color: red; font-family: Arial, Helvetica, sans-serif;">ATTENTION: suite à l’installation dans mon lab, il s'avère que la mise à jour semble ne pas mettre à jour certains types/fichiers et par conséquent casse certaines fonctionnalités.</span></b><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Pour l'instant, je conseille de ne pas l'installer. J'ai essayé de prévenir quelques contacts chez Microsoft au sein de la DevTeam en espérant qu'ils retirent le Rollup5 au téléchargement si le bug est avéré.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Ensuite, s'il ne s'agit que de mon lab, tant mieux, mais j'ai comme un doute... :(</span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3FE2zsMSOwl12DLgsb7Khx3AlRXg_cH-wZxOg_DPs73n-Yq61f5TiC9mhDTEyIy6MHEyU30CUQYfjZbklvEv4z9nczua_CIIFu2AjlbYxiKn_XnHwksMDj8TTY8njqIk-pvaDxEAnckEv/s1600/rollup5-bug1.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3FE2zsMSOwl12DLgsb7Khx3AlRXg_cH-wZxOg_DPs73n-Yq61f5TiC9mhDTEyIy6MHEyU30CUQYfjZbklvEv4z9nczua_CIIFu2AjlbYxiKn_XnHwksMDj8TTY8njqIk-pvaDxEAnckEv/s640/rollup5-bug1.gif" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0A8m6N8jVU2U_ZGmCELd4RVaDzF65EvwiS_nu5yxtcNiohvxyvbSa9xRTok1XZclJtx-mi9ytYWZkt9i3xp8Z53nRR1M3zWimdk-E2EbVuhFYSqJfT360Kn3n7c18QqUeAzHaJVzPP9Ub/s1600/rollup5-bug2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="384" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0A8m6N8jVU2U_ZGmCELd4RVaDzF65EvwiS_nu5yxtcNiohvxyvbSa9xRTok1XZclJtx-mi9ytYWZkt9i3xp8Z53nRR1M3zWimdk-E2EbVuhFYSqJfT360Kn3n7c18QqUeAzHaJVzPP9Ub/s640/rollup5-bug2.gif" width="640" /></a></div>
<br />Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com1tag:blogger.com,1999:blog-4191071335435771394.post-58955080095278496812012-10-24T19:52:00.003+02:002012-10-24T19:52:55.333+02:00[INFO]: Exchange/Lync/Office 2013 disponibles sur MSDN !<span style="font-family: Arial, Helvetica, sans-serif;">Déjà, nous y sommes !</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Microsoft vient de mettre à disposition sur MSDN une ribambelle de nouvelles versions de leurs produits, estampillés donc "2013".</span><br />
<br />
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Exchange Server 2013</b></span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Lync Server 2013</b></span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Office Web Apps 2013</b></span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Office 2013 Pro Plus</b></span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Visio 2013</b></span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><b>Project 2013</b></span></li>
</ul>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">et bien d'autres !</span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Arial, Helvetica, sans-serif;">Bon téléchargements :)</span></div>
<div>
<br /></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com1tag:blogger.com,1999:blog-4191071335435771394.post-3220704282483566782012-10-12T10:13:00.003+02:002012-10-12T10:13:23.859+02:00[INFO]: Exchange Server 2013 est RTM<span style="font-family: Arial, Helvetica, sans-serif;">Cette nuit, le DevTeam Exchange a annoncé <strong>la finalisation du code d'Exchange Server 2013</strong>, qui atteint donc son build RTM.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> </span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Depuis quelques mois, l'équipe Exchange a communiqué énormément sur la nouvelle version d'Exchange. Vous retrouverez l'article lié à l'annonce ici: </span><a href="http://blogs.technet.com/b/exchange/archive/2012/10/11/the-new-exchange-reaches-rtm.aspx"><span style="font-family: Arial, Helvetica, sans-serif;">http://blogs.technet.com/b/exchange/archive/2012/10/11/the-new-exchange-reaches-rtm.aspx</span></a><br />
<span style="font-family: Arial, Helvetica, sans-serif;"></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Vivement la disponibilité au téléchargement !!!</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Stay tuned ;)</span>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-23525022063836365202012-10-09T22:56:00.001+02:002012-10-09T23:56:32.061+02:00[INFO]: Exchange Server 2010 SP2 Rollup 4-v2<span style="font-family: Arial, Helvetica, sans-serif;">Microsoft a publié aujourd'hui le <b>Rollup 4-v2 d'Exchange Server 2010 Service Pack 2</b>.</span><br />
<a href="http://www.microsoft.com/en-us/download/details.aspx?id=34956"><span style="font-family: Arial, Helvetica, sans-serif;">http://www.microsoft.com/en-us/download/details.aspx?id=34956</span></a><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Le build est <b>14.02.0318.004</b> alors qu'il était de <b>14.02.0318.<span style="background-color: yellow;">002</span></b> pour le Rollup 4 originel.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Pour l'instant <a href="http://support.microsoft.com/kb/2756485" target="_blank">l'article de la base de connaissance</a> ne mentionne pas ce qui a été corrigé mais il est fort à parier qu'il concerne un certain nombre de failles de sécurité corrigées récemment par Microsoft.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>
<i><b style="font-family: Arial, Helvetica, sans-serif; font-size: small;">Mise à jour à 23:53</b><span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;">: l'équipe Exchange a publié <a href="http://blogs.technet.com/b/exchange/archive/2012/10/09/re-released-exchange-2010-and-exchange-2007-update-rollups.aspx" target="_blank">l'annonce des mises à jour sur son blog</a>.La mise à jour concerne une expiration prématurée de signature de code .NET. Au passage, la mise à jour corrige un bug mineur du moteur de recherche.</span></i><br />
<span style="font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><br /></span>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-89211803330440493672012-08-18T15:05:00.001+02:002012-08-18T19:18:27.664+02:00[TECH]: Compter le nombre de boîtes aux lettres dans une Mailbox Database en seulement quelques millisecondes<span style="font-family: Arial, Helvetica, sans-serif;">Hier, je cherchais je-ne-sais-plus-quoi et je suis tombé sur le blog d'un collègue norvégien, nommé Jan: </span><a href="http://blog.powershell.no/2010/11/21/retrieve-number-of-mailboxes-per-database-in-exchange-server-2010/"><span style="font-family: Arial, Helvetica, sans-serif;">http://blog.powershell.no/2010/11/21/retrieve-number-of-mailboxes-per-database-in-exchange-server-2010/</span></a><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Bref, je me suis mis à lire l'article et il s'avère simplement que l'auteur cherchait à savoir comment compter le nombre de BàL par Mailbox Database le plus rapidement possible...</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">En effet, il y a des techniques plus ou moins rapide, et plus ou moins gourmandes en mémoire. Une technique "simple" est de faire un <strong>Get-Mailbox -Database <IdentifiantDB> -ResultSize:Unlimited</strong>. Cela retourne une collection ou $null si rien n'a été trouvé.</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Au demeurant, le problème majeur de cette technique est qu'elle pourrait être rapide (c'est en fait la plus rapide en utilisant juste la cmdlet Get-Mailbox) mais elle a le gros désavantage de retourner une collection d'objets: c'est lent et cela consomme de la mémoire.</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Typiquement, on ferait:</span><br />
<strong><span style="font-family: Arial, Helvetica, sans-serif;">([Object[]] $Mailboxes = Get-Mailbox -Database </span></strong><strong style="font-family: Arial, Helvetica, sans-serif;"><IdentifiantDB> </strong><strong><span style="font-family: Arial, Helvetica, sans-serif;">-ResultSize:Unlimited).Count</span></strong><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Et si l'on voulait compter toutes les BàL <strong>Exchange 2010</strong> (en utilisant la même technique):</span><br />
<strong><span style="font-family: Arial, Helvetica, sans-serif;">([Object[]] (Get-MailboxDatabase | Get-Mailbox -ResultSize:Unlimited)).Count</span></strong><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">On obtiendait alors des temps pas terribles (on mesure avec Measure-Command): <strong><span style="color: #990000;">35 secondes et quelques pouillemes</span></strong>, mon lab a 8 Databases et environ 1200 BàL. Pis: dans de gros environnments, ce type de commandes échoue systématiquement ou finit par consommer une mémoire infernale (j'ai vu des sessions Powershell à plus de 8GB parfois :p).</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjudVFkiXPXaFrD4apq3F_5hheSKjJVCGV-6cTdb6o_M5jDVprSRVb6khIR7JnUkneCEWoZf3VxRL1p3lvW4DWRiWjwWjzdotqf6U0Ts5Sa4upHZiLikwGj9XhYVH7lZk0AJTHXmruc_CxG/s1600/2012-08-18_143202.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="74" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjudVFkiXPXaFrD4apq3F_5hheSKjJVCGV-6cTdb6o_M5jDVprSRVb6khIR7JnUkneCEWoZf3VxRL1p3lvW4DWRiWjwWjzdotqf6U0Ts5Sa4upHZiLikwGj9XhYVH7lZk0AJTHXmruc_CxG/s640/2012-08-18_143202.jpg" width="640" /></span></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Alors la technique de notre ami norvégien 'Jan Egil Ring' est d'utiliser une requête LDAP et de compter le nombre d'objets ayant le '<b><i>homeMDB</i></b>' égal au DistinguishedName de la Database où l'on souhaite compter. Une peu à la Exchange 2000/2003 au fond...</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Cela fonctionne très bien et c'est finalement ce que fait la commande Get-Mailbox (en construisant un filtre LDAP et en requêtant l'Active Directory), mais cela prends encore "quelques" secondes (le "quelques" étant variable). D'ailleurs j'utilisais cette technique moi-même avec des résultats que je jugeais alors optimums (j'ai de bons souvenirs d'optimisations de requêtes LDAP dans une grosse forêt multi-domaines avec plus de 200 mille objets...).</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Je me suis dit qu'il faisait trop chaud (36°C à l'ombre :p) pour sortir gratter dans le jardin, et me suis lancé un mini-le défit: d'optimiser encore. J'ai finalement trouvé la réponse rapidement (c'est ballot car le soleil n'a pas décliné, et il fait encore 36°C :p).</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Parmi les nombreux attributs présent sur un objet Mailbox Database (<strong><em>msExchPrivateMDB</em></strong>), il en est un qui s'appelle le '<strong><em>homeMDBBL</em></strong>'... 'BL' pour Back Link. Il s'agit donc d'un attribut construit par AD lorsque l'attribut backlinké est modifié. Ici, l'attribut backlinké est le '<strong><em>homeMDB</em></strong>'. Tiens donc... ? Cela signifie alors que le <strong><em>homeMDBBL</em></strong> contient les DistinguishedNames des BàL de cette Database. Pratique non ? S'agissant d'un attribut multi-valué, il suffit de récupérer l'attribut 'Count' via les interfaces ADSI.</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">On s'apperçoit que dans la liste il y a toujours une <strong>SystemMailbox{<<guid gt="gt" guid="guid">}</guid></strong> car à sa création, chaque DB se voit attribuer un GUID et une BàL (rien de nouveau sous le soleil quoi, c'est comme ça depuis Exchange 2000). Bref, on constate donc que le nombre de BàL dans une Mailbox Database est donc égal à '<strong>compte d'entrées dans homeMDBBL moins 1</strong>'.</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Un petit script que l'on nommera ici <strong>Get-MailboxCount.ps1</strong>, et voici ce que cela donne (en utilisant '<b>Measure-Object -Sum</b>' afin de faire la somme:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieTzp4Gu6szfVXvjo7Ptilz2mvgzvnY9EL1vmhP8dgNmA2uIM1y9w60DKQ8rWewsCmCwRfNOcbWhaORDHlwrgcUQqrrYhDb_gpaISilayjVZaCe7Tmubq9kyCgyZtniFhrR8BRDZeg1BC8/s1600/2012-08-18_143307.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="76" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieTzp4Gu6szfVXvjo7Ptilz2mvgzvnY9EL1vmhP8dgNmA2uIM1y9w60DKQ8rWewsCmCwRfNOcbWhaORDHlwrgcUQqrrYhDb_gpaISilayjVZaCe7Tmubq9kyCgyZtniFhrR8BRDZeg1BC8/s640/2012-08-18_143307.jpg" width="640" /></span></a></div>
<strong><span style="font-family: Arial, Helvetica, sans-serif;">Soit 50 millisecondes !!!</span></strong><br />
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Pas de requête LDAP</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Interrogation de l'objet AD correspondant à la DB depuis la partition Configuration, donc disponible sur tous les Contrôleurs de Domaine</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Attribut disponible dans le Global Catalog</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;">Si l'objet (ou les objets) Database est déjà stocké dans une variable, on gagne encore quelques millisecondes puisque l'on évite le Get-MailboxDatabase...</span></li>
</ul>
<span style="font-family: Arial, Helvetica, sans-serif;">Gros handicap toutefois, il devient compliqué d'ajouter des filtres additionels. Mais cela permet d'jà de répondre au besoin initial de compter le nombre de BàL par Mailbox Database. Et vite!</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Epatant, non? :)</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Vous trouverez le script en question, ainsi que bien d'autres ici: </span><a href="http://sdrv.ms/PtoxZo"><span style="font-family: Arial, Helvetica, sans-serif;">http://sdrv.ms/PtoxZo</span></a>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-66846772669572862482012-08-14T18:56:00.001+02:002012-08-14T18:56:55.445+02:00[TECH]: Let's PowerShell - Scripts d'installation des pré-requis Lync et Exchange - 2010 et 2013...Si vous me lisez de temps en temps, vous avez probablement remarqué au travers des captures d'écran prises lors de certain tutoriels que j'utilise des scripts faits maison.<br />
<br />
<div>
Aujourd'hui est jour de fête (ou pas...) car je mets certains de ces scripts à disposition. Rien de révolutionnaire, mais ce sont toujours (je l'espère) de bon exemples.<br />
<br />
<b><span style="font-size: large;">Scripts de préparation des pré-requis Windows pour Lync</span></b></div>
<div>
<b>Lync 2010</b>: <a href="http://sdrv.ms/Rdr7pL" rel="nofollow" target="_blank">INS-LS2010-WindowsRolesAndFeatures.ps1</a><br />
<b>Lync 2013(Preview)</b>: <a href="http://sdrv.ms/Rdrdhd" rel="nofollow" target="_blank">INS-LS2013-WindowsRolesAndFeatures.ps1</a><br />
<br />
<b><span style="font-size: large;">Scripts de préparation des pré-requis Windows pour Exchange</span></b></div>
<div>
<b>Exchange 2010</b>: <a href="http://sdrv.ms/RdrjVW" rel="nofollow" target="_blank">INS-E2010-WindowsRolesAndFeatures.ps1</a><br />
<b>Exchange 2013(Preview)</b>: <a href="http://sdrv.ms/Rdroce" rel="nofollow" target="_blank">INS-E2013-WindowsRolesAndFeatures.ps1</a></div>
<div>
Il va de soi que les scripts pour Lync 2013 et Exchange 2013 ne sont pas dans leur version définitive, même si très proche. En particulier, la partie concernant la détection du système d'exploitation Windows Server 2012 n'est pas encore finalisée, puisque la version RC est actuellement détectée comme la RTM. Cela sera changé dès que j'aurai pu installer la version RTM de Windows Server 2012, mis à jour le numéro de build en conséquence et validé le changement.</div>
<div>
<br /></div>
<div>
<b><span style="font-size: large;">Bonus</span></b></div>
<div>
Quelques autres scripts en vrac:</div>
<div>
<ul>
<li><a href="http://sdrv.ms/PUQaXq" rel="nofollow" target="_blank">Optimisation des Inline Help URL PowerShell v2</a></li>
<li>Quelques <a href="http://sdrv.ms/PUQLYY" rel="nofollow" target="_blank">utilitaires</a>, <a href="http://sdrv.ms/RLQSel" rel="nofollow" target="_blank">includes</a> (à dot-sourcer) et <a href="http://sdrv.ms/RLR4tT" rel="nofollow" target="_blank">command proxies</a> (à dot-sourcer aussi, et générées avec le script utilitaire <b>Export-CommandMetadata.ps1</b>)</li>
</ul>
<div>
Il y a quelques utilitaires sympas (par exemple des commandes PowerShell pour l'AD et sans utiliser le module AD PowerShell de Win 2008 R2), c'est assez basique mais j'en rajouterai probablement au fur et à mesure.</div>
</div>
<div>
<br /></div>
<div>
<b>Get-ADSchemaVersion.ps1</b></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk0RzYo59RDZjq07U4WyaJQ23UQ0WeS3AJ9P1AqCv51EFQ1mmy9iXN1F7IJH4MZLMweIluc6634dhrT5GjYmZ5F6Te6L4DA9VY2nZfiDx-bsEiqfgHvtXsbx7nLSzV3CYq4QX8ToxhMZf3/s1600/2012-08-14_184501.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="259" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk0RzYo59RDZjq07U4WyaJQ23UQ0WeS3AJ9P1AqCv51EFQ1mmy9iXN1F7IJH4MZLMweIluc6634dhrT5GjYmZ5F6Te6L4DA9VY2nZfiDx-bsEiqfgHvtXsbx7nLSzV3CYq4QX8ToxhMZf3/s640/2012-08-14_184501.jpg" width="640" /></a></div>
<div>
<b>Get-ADDomain.ps1, Get-ADDomainController.ps1, Get-ADSchemaHistory.ps1</b></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7QdLQ93cRfJj6wytZbbZ8MV3Hs_EfX8as2msIrP2RaAqx2pdxGZTQgbOc53noenB-BeV-izgzdL804GG_g7DiswDqOZbEN0e5fen8RLw6MABnILmkH97hRGo9uDHkIjV-g7Pl-YkKMi8f/s1600/2012-08-14_185018.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7QdLQ93cRfJj6wytZbbZ8MV3Hs_EfX8as2msIrP2RaAqx2pdxGZTQgbOc53noenB-BeV-izgzdL804GG_g7DiswDqOZbEN0e5fen8RLw6MABnILmkH97hRGo9uDHkIjV-g7Pl-YkKMi8f/s640/2012-08-14_185018.jpg" width="640" /></a></div>
<div>
<br /></div>
<div>
Amusez-vous bien ! Et profitez de cette fin d'été pour vous mettre à Windows Server 2012 RTM, Lync/Exchange/SharePoint 2013 Preview et Office 365 v2 Preview !!! :)</div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-54624417487916115532012-08-14T18:06:00.001+02:002012-08-14T18:07:43.675+02:00[TUTORIEL]: Comment créer vous même un répartiteur de charge avec Ubuntu Server et HAProxy<span style="font-family: Arial, Helvetica, sans-serif;">Il y a quelques mois maintenant (plus d'un an en fait!) j'avais promis à certains de publier un guide expliquant comment créer son propre répartiteur de charge (load-balancer) en utilisant Ubuntu Server et HAProxy.</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;">Ce guide, je l'avais commencé fin 2010 dans un but purement pédagogique interne à Avanade. Devant le succès rencontré auprès de certains collègues, je m'étais réfreiné afin de conserver un peu d'avance de connaissance sur la concurrence. Au final, le sujet étant désormais pleinement maîtrisé (tout du moins en ce qui concerne "comment load-balancer Exchange 2010 ou Lync 2010" :)), je mets maintenant </span><a href="http://sdrv.ms/MXaKvP" rel="nofollow" target="_blank"><span style="font-family: Arial, Helvetica, sans-serif;">le guide à disposition ici</span></a><span style="font-family: Arial, Helvetica, sans-serif;">.</span><br />
<br />
<strong><span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #990000;">Attention</span>: le guide est en anglais, mais pas d'inquiétudes toutefois: c'est beaucoup de blabla au début, et pas mal de technique ensuite...</span></strong><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5onq_GD1y1I1bF4taMTWiOWgG7ti2nUGZsya4giXF3K3iQIx6ZbcVkEnRHeM7JVr2WQqEI0OuIlFPkPeVqRfBVQqaehuXtEVM5jaUqOyy1yK3P40nqRQnAkF45c8HxDgFcQkrV0Xk5AMJ/s1600/2012-08-14_175851.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5onq_GD1y1I1bF4taMTWiOWgG7ti2nUGZsya4giXF3K3iQIx6ZbcVkEnRHeM7JVr2WQqEI0OuIlFPkPeVqRfBVQqaehuXtEVM5jaUqOyy1yK3P40nqRQnAkF45c8HxDgFcQkrV0Xk5AMJ/s400/2012-08-14_175851.jpg" width="308" /></span></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<strong><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size: x-small;"><span style="color: #660000;">Rappel</span>: ce guide n'est pas là pour vous éviter d'implémenter un "vrai" load-balancer. L'auteur (moi) et les personnes morales ou sociétés dont les noms figurent dans ce guide ne sont aucunement engagées ou responsable de tout problème pouvant découler de l'utilisation de ce guide.</span></span></strong></div>
Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com3tag:blogger.com,1999:blog-4191071335435771394.post-35312064814816217722012-08-08T16:04:00.000+02:002012-08-08T16:05:15.648+02:00[TECH]: Exchange 2013 Preview, IIS et Kerberos - Ou: questionnement autour du MaxFieldLength<span style="font-family: Arial, Helvetica, sans-serif;">Tous ceux ayant déjà travaillé avec IIS sur SharePoint, Exchange et Lync et ayant "joué" à activer le Kerberos le savent: dans des environnements respectables et où il y a beaucoup de groupes de sécurités, il faut configure le pilote HTTP de Windows afin de supporter des en-têtes (</span><b style="font-family: Arial, Helvetica, sans-serif;">MaxFieldLength</b><span style="font-family: Arial, Helvetica, sans-serif;">) et tailles de requêtes </span><span style="font-family: Arial, Helvetica, sans-serif;">(</span><b style="font-family: Arial, Helvetica, sans-serif;">MaxRequestBytes</b><span style="font-family: Arial, Helvetica, sans-serif;">)</span><span style="font-family: Arial, Helvetica, sans-serif;"> </span><span style="font-family: Arial, Helvetica, sans-serif;">supérieures à la normale.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><a href="http://support.microsoft.com/kb/820129" target="_blank">L'article idoine de la KB Microsoft (http://support.microsoft.com/kb/820129) le dit très bien</a>:</span><br />
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBgVU2D6r7-Lfu8Le1_Viy40x-sBG4Jg82a7jTG_Eo1N-9nTV-k7jynRVmY4Ofo2ViWiqS8prf1-ryKX8XTpMkcvBcyIZ1U5dMNkwo8Bkr4GKXNqd9_Vd1lFo9oJnBeybWjBHF9YXy1RKA/s1600/2012-08-08_144415.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBgVU2D6r7-Lfu8Le1_Viy40x-sBG4Jg82a7jTG_Eo1N-9nTV-k7jynRVmY4Ofo2ViWiqS8prf1-ryKX8XTpMkcvBcyIZ1U5dMNkwo8Bkr4GKXNqd9_Vd1lFo9oJnBeybWjBHF9YXy1RKA/s640/2012-08-08_144415.jpg" width="640" /></span></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Et, pour Exchange Server 2010, la DevTeam avait bien prévu l'augmentation de la taille des ces deux limites au travers d'un script nommé "</span><b style="font-family: Arial, Helvetica, sans-serif;">LargeToken-IIS_EWS.ps1</b><span style="font-family: Arial, Helvetica, sans-serif;">" (disponible dans "</span><b style="font-family: Arial, Helvetica, sans-serif;">$exscript</b><span style="font-family: Arial, Helvetica, sans-serif;">"). Ce qui est intéressant ici ce n'est pas tant que l'équipe Exchange l'avait prévu (à la base il s'agit en fait d'un script créé pour des cas particuliers) mais la valeur de </span><b style="font-family: Arial, Helvetica, sans-serif;">MaxFieldLength</b><span style="font-family: Arial, Helvetica, sans-serif;"> qui est donc à son maximum de 64Ko - 2 octets (réservés pour les deux caractères de fin de chaîne en HTTP).</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">La valeur configurée dans le script d'Exchange Server 2010 est donc alignée avec la base de connaissance IIS de Microsoft. Dans des environnements plus classiques, mettre <b>65534 </b>pour <b>MaxFieldLength </b>et <b>65536 </b>pour <b>MaxRequestBytes </b>suffit généralement à résoudre 99.99% des problèmes (Note: <b>MaxRequestBytes</b> doit être à minima supérieur de 2 octets à <b>MaxFieldLength</b>).</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Bref, éviter les problèmes Kerberos... Il semblerait que cela soit la volonté de la DevTeam car dans Exchange Server 2013 Preview, on constate que <b><span style="color: #990000;">ces deux valeurs</span></b> sont positionnées par défaut... à <b><span style="color: #990000;">65536 </span></b>! (Au passage, on remarque que les scripts en rapport avec Kerberos n'existent plus... :))</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">La preuve en images:</span><br />
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNdhk6zxHLuvfYUaOQzbUySRjM2zYRzvsES7KeoxVRKTb8PHX11bfceMnQz07o8KfTmETPsuPJJUUoSkLVGQV7CUkJAG7i4-YeD6dD45Uk1T93spL3zAN3nTlCgSuzTbv34ZkMUjdQ5k6F/s1600/2012-08-08_143810.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="140" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNdhk6zxHLuvfYUaOQzbUySRjM2zYRzvsES7KeoxVRKTb8PHX11bfceMnQz07o8KfTmETPsuPJJUUoSkLVGQV7CUkJAG7i4-YeD6dD45Uk1T93spL3zAN3nTlCgSuzTbv34ZkMUjdQ5k6F/s640/2012-08-08_143810.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Là où le bât blesse est que la valeur positionnée par Exchange Server 2013 <b><u>dépasse le maximum théoriquement configurable</u></b>. Il faudra donc effectuer quelques tests et vérifier que le pilote HTTP.SYS se comporte correctement sur les deux systèmes supportés (Windows Server 2008 R2 SP1 et +, et 2012 RTM et +). En effet, il arrive parfois qu'une valeur de registre dépassant le maximum autorisé soit traitée comme invalide et donc ignorée (et donc 16Ko ici)... si le code du pilote HTTP.SYS est bien fait, il devrait traiter toute valeur hors limites comme étant la limite (donc ici, dépassant la limite haute: 65536 est corrigé en 65534).</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Fait étrange (mais probablement pas exprès :)), <b>Lync Server 2013 ne positionne pas </b></span><span style="font-family: Arial, Helvetica, sans-serif;"><b>cette</b></span><span style="font-family: Arial, Helvetica, sans-serif;"><b> valeur</b>. Pourtant, il est fréquent que le Remote Shell Lync ne fonctionne pas pour cette même raison (à cause de la taille du token Kerberos...) et que cela fasse planter le Lync Control Panel .</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Donc, sauf erreur de ma part, et étant un puriste, </span><b style="font-family: Arial, Helvetica, sans-serif;">MaxFieldLength </b><span style="font-family: Arial, Helvetica, sans-serif;">devrait être positionné à </span><b style="font-family: Arial, Helvetica, sans-serif;">65534</b><span style="font-family: Arial, Helvetica, sans-serif;">. Je vais tout de même tenter de prévenir la DevTeam au cas où...</span></div>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com2tag:blogger.com,1999:blog-4191071335435771394.post-30117480833416628932012-07-22T20:03:00.001+02:002012-08-14T18:57:51.228+02:00[INFO]: Exchange 2013 Preview / Erreurs Securité (ID 4625 / Unknown logon name or password)Au lendemain de l'installation de mon serveur Exchange 2013 Preview, j'ai remarqué que mes journaux d'évenements de sécurité se remplissaient d'échecs de type "Audit failure" / "An account failed to log on"... (EventID 4625).<br />
<br />
Quid? Je vois que le compte qui bombarde mon serveur de demandes d'authentification (et échoue donc), est <em><u>HealthMailbox4139e7ab8f1048e5a8bc51cca4ec531f@uc-previewlab.com</u></em>. Le nom du compte ressemble à une adresse E-mail, certes, mais est en fait un UPN (User Principal Name). Une recherche rapide dans mon AD, et je vois que l'utilisateur existe bien. Cependant, l'UPN défini est <em><u>HealthMailbox4139e7ab8f1048e5a8bc51cca4ec531f@uc-previewlab.<strong><span style="color: red;">org</span></strong></u></em> et non "<strong><u>.com</u></strong>".<br />
<br />
Hier, j'ai reconfiguré le domaine SMTP par défaut à "<strong>uc-previewlab.com</strong>" ce qui a eu pour effet de changer toutes les adresses E-mail à cette extension. Il semblerait donc que l'adresse E-mail soit utilisée afin d'authentifier l'utilisateur "<strong>HealthMailbox<span style="color: #990000;"><guid></guid></span></strong>" sans se préoccuper de savoir si elle est bien différente de l'UPN (elle l'est, la plupart du temps :)).<br />
<br />
Bref, un coup de "<strong><em>domain.msc</em></strong>", et j'ajoute à ma forêt le suffixe UPN "<strong>@uc-previewlab.com</strong>". Je change l'UPN de la BàL HealthMailbox et quelques secondes après, les erreurs ont disparu!<br />
<br />
<strong>Moralité</strong>: il s'agit à mon humble avis d'un bug qui j'espère sera corrigé à la sortie du produit.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirClkvlI2Yz_AALUJOsncqhsih3GDtnHHbiGQ8vZeuVwB2n6gtgdu6hDtxS03ympUMRrk8hU35XDSul8EbJrnH2ajndvyRCzNtx1SeMwR-xweADPakzsa8_-6utJZ3FgZAUXKqTQ-xJbJP/s1600/2012-07-22_185553.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="443" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirClkvlI2Yz_AALUJOsncqhsih3GDtnHHbiGQ8vZeuVwB2n6gtgdu6hDtxS03ympUMRrk8hU35XDSul8EbJrnH2ajndvyRCzNtx1SeMwR-xweADPakzsa8_-6utJZ3FgZAUXKqTQ-xJbJP/s640/2012-07-22_185553.jpg" width="640" /></a></div>
<br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Log Name: Security<br />Source: Microsoft-Windows-Security-Auditing<br />Date: 7/22/2012 6:34:00 PM<br />Event ID: 4625<br />Task Category: Logon<br />Level: Information<br />Keywords: Audit Failure<br />User: N/A<br />Computer: sv-e15pr-1.uc-previewlab.org<br />Description:<br />An account failed to log on.</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Subject:<br /> Security ID: SYSTEM<br /> Account Name: SV-E15PR-1$<br /> Account Domain: PREVIEW<br /> Logon ID: 0x3E7</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Logon Type: 8</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Account For Which Logon Failed:<br /> Security ID: NULL SID<br /> Account Name: </span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">HealthMailbox4139e7ab8f1048e5a8bc51cca4ec531f@uc-previewlab.com</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;"> Account Domain: </span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Failure Information:<br /> Failure Reason: Unknown user name or bad password.<br /> Status: 0xC000006D<br /> Sub Status: 0xC0000064</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Process Information:<br /> Caller Process ID: 0xe68<br /> Caller Process Name: C:\Exchange\Bin\MSExchangeHMWorker.exe</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Network Information:<br /> Workstation Name: SV-E15PR-1<br /> Source Network Address: -<br /> Source Port: -</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Detailed Authentication Information:<br /> Logon Process: Advapi <br /> Authentication Package: Negotiate<br /> Transited Services: -<br /> Package Name (NTLM only): -<br /> Key Length: 0</span>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com2tag:blogger.com,1999:blog-4191071335435771394.post-56343035185576251152012-07-21T23:08:00.001+02:002012-07-23T09:37:12.173+02:00[INFO]: Quelques hotfixes recommandés sur vos serveurs s'exécutant sur Windows Server 2008 R2 (SP1)<span style="font-family: Arial, Helvetica, sans-serif;">... en attendant le Service Pack 2 de Windows Server 2008 R2, je vous conseille d'évaluer lap possibilité d'installer ces hotfixes sur vos serveurs (en particulier Exchange et Lync):</span><br />
<ul>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><a href="http://support.microsoft.com/kb/2401588/en-us">http://support.microsoft.com/kb/2401588/en-us</a> (mise à jour du Rpc Windows / problème de crashs sporadiques du service)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><a href="http://support.microsoft.com/kb/2619234/en-us">http://support.microsoft.com/kb/2619234/en-us</a> (mise à jour importante vis-à-vis du Rpc/Http, il s'agit d'ailleurs d'un pré-requis à Exchange 2013)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><a href="http://support.microsoft.com/kb/2675785/en-us">http://support.microsoft.com/kb/2675785/en-us</a> (correction d'un problème d'ajustement automatique de la taille des fenêtres TCP/IP)</span></li>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><a href="http://support.microsoft.com/kb/2699780/en-us">http://support.microsoft.com/kb/2699780/en-us</a> (correction d'une fuite mémoire dans le service Remote Registry)</span></li>
</ul>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com0tag:blogger.com,1999:blog-4191071335435771394.post-45926086346969450092012-07-21T22:19:00.000+02:002012-08-02T23:03:43.691+02:00[INFO]: Installation d'Exchange 2013 (Preview) et un avant goût d'Outlook Web App 2013 !<span style="font-family: Arial, Helvetica, sans-serif;">Après le "</span><a href="http://unifiees.blogspot.fr/2012/07/info-quoi-de-neuf-dans-exchange-2013.html" target="_blank"><strong><span style="color: #b45f06; font-family: Arial, Helvetica, sans-serif;">Quoi de neuf dans Exchange 2013</span></strong></a><span style="font-family: Arial, Helvetica, sans-serif;">" et une balade au parc avec ma femme et ma fille, il est temps de s'attarder sur l'installation d'Exchange 2013 (Preview) et avant de regarder ce qu'il a dans le ventre sur les aspects techniques, vous donner un avant goût d'Outlook Web App 2013.</span><br />
<h4>
<span style="font-family: Arial, Helvetica, sans-serif;">
Installation d'Exchange 2013</span></h4>
<span style="font-family: Arial, Helvetica, sans-serif;">Rassurez vous, rien de révolutionnaire ici. Tout d'abord, j'ai choisi la solution de facilité, à savoir installer Exchange 2013 Preview sur Windows Server 2012 RC. De facilité car les dépendances systèmes et fonctionnalités Windows sont déjà présentes... gain de temps. De plus il faut avouer que Windows Server 2012 RC est particulièrement stable pour une RC et surtout très rapide!</span><br />
<h4>
<span style="font-family: Arial, Helvetica, sans-serif;">
1) Préparation de l'AD</span></h4>
<span style="font-family: Arial, Helvetica, sans-serif;">Bref, on commence par une préparation de l'AD. Les principes sont strictement identiques à la version précédente. On peut préparer le Schema, tous les domaines, ou chacun indépendement, etc... Dans mon petit lab de preview j'ai choisi de faire l'intégrale, préparation AD et création de l'organisation en une seule étape:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH52XPII5wIcQn23lDAb1DiNr_FlZWtU4SsrmSYTCVuSmmClC5tot60n38UQTHyhjK1jr7iR7Ybu6F8AoCqkNpUq6mSqAUmAXTvhfgY_VLZzMyooJETXnf-b-R6vkBIUERWLKVWHAMS6LF/s1600/2012-07-21_114428.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH52XPII5wIcQn23lDAb1DiNr_FlZWtU4SsrmSYTCVuSmmClC5tot60n38UQTHyhjK1jr7iR7Ybu6F8AoCqkNpUq6mSqAUmAXTvhfgY_VLZzMyooJETXnf-b-R6vkBIUERWLKVWHAMS6LF/s640/2012-07-21_114428.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Fait rigolo, notez le switch "<strong>/IAcceptExchangeServerLicenseTerm</strong>" qui m'a fait sourire. Outre les aspects licence, il évite le temps de réflexion pénible introduit dans le setup d'Exchange 2010.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Notez aussi qu'il n'y a plus un "<strong>setup.exe</strong>" et un "<strong>setup.com</strong>", juste un "<strong>setup.exe</strong>" qui peut être utilisé en ligne de commande ou en graphique.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Voilà, c'était pour la partie Active Directory, exécutée sur mon contrôleur de domaine Windows Server 2012 RC... Passons maintenant au serveur membre Exchange!</span></div>
<h4 class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">
2) Installation des pré-requis</span></h4>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">J'ai pour habitude d'installer les pré-requis Windows à la main. L'équipe Exchange a conservé le switch /InstallWindowsComponents, mais ils n'installent évidemment pas les "autres" pré-requis, à savoir:</span></div>
<ul><span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><strong>L'Office FilterPack 2010 + son SP1</strong></span></li>
<span style="font-family: Arial, Helvetica, sans-serif;"><strong>
</strong></span>
<li><span style="font-family: Arial, Helvetica, sans-serif;"><strong>UCMA 4.0 (toujours en Beta/Preview)</strong></span></li>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span></ul>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Personnellement, j'installe aussi le iFilter Adobe v9.0 x64 afin d'indexer les documents PDF.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Du coup, j'ai adapté mon petit script d'installation des composants Windows, dont voici un exemple d'usage (ici rôles CAS et MBX) - il faut redémarrer avant de continuer le reste de l'installation des pré-requis et d'Exchange 2013:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHC2b6jp5ozGHEwhuOI9NRCTiFt4ohNi3khYklCe1aVTP7HgqowuI4FfHOt0ZyzgAAO474W7-_Dos7OsDa8019E30KHz3jhkWgZhCLCKyyo4ZorujKRprQPIXzxw_oogNw-T84b5Q24Eg_/s1600/2012-07-21_123552.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="356" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHC2b6jp5ozGHEwhuOI9NRCTiFt4ohNi3khYklCe1aVTP7HgqowuI4FfHOt0ZyzgAAO474W7-_Dos7OsDa8019E30KHz3jhkWgZhCLCKyyo4ZorujKRprQPIXzxw_oogNw-T84b5Q24Eg_/s640/2012-07-21_123552.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Puis j'ai ensuite installé l'UCMA 4.0 (rappel: Unified Communcations Managed API 4.0 est à la base un composant Communications Server / Lync) et les iFilters Office (+SP1) et Adobe. <strong><span style="color: red;">Il est important de désinstaller les composants Visual C++ 11 Beta qui sont installés en même temps que les composants UCMA 4.0</span></strong>:</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6d4UMHsaIRHjLKY0uYyCiuXkvhsgCpwJqEpM9xZlhapfRx8qDSd9LlzomvQbhj3Qn7VaYIas09TRygLDQF_OVmVCUCENdvXS5Jdu-iG2K1pI_7_AQZWvA7zMM1DlpIf2fAfNgWsopAlVl/s1600/2012-07-21_125348.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="324" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6d4UMHsaIRHjLKY0uYyCiuXkvhsgCpwJqEpM9xZlhapfRx8qDSd9LlzomvQbhj3Qn7VaYIas09TRygLDQF_OVmVCUCENdvXS5Jdu-iG2K1pI_7_AQZWvA7zMM1DlpIf2fAfNgWsopAlVl/s640/2012-07-21_125348.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Une fois tout ce petit monde sur mon serveur, un petit coup de Windows Update a fini d'installer les derniers correctifs disponibles. Dès lors, le serveur était désormais prêt pour accueillir Exchange 2013.</span></div>
<h4 class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">
3) Installation d'Exchange</span></h4>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">A des fins de tests, j'ai pris l'option d'installer les rôles Client Access et Mailbox Server conjointements sur le serveur. Dans le contexte cela n'a aucune importance et viendra le lab complexe lorsque l'on souhaitera explorer l'intégralité de la technique...</span></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4gZrB_XlADUTZWkBB-x43ddVtUbXoFy_7rPICaCSIn11LDRsiJ094enn3oQrt_8XiOWs2LcZAc3C-Y5jmizdhd6VqMep9C2PkMvMg8H_TqtdkHVgJvtSHuztkM7bnSAnQ2XOUxCoM-SQH/s1600/2012-07-21_130546.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="334" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4gZrB_XlADUTZWkBB-x43ddVtUbXoFy_7rPICaCSIn11LDRsiJ094enn3oQrt_8XiOWs2LcZAc3C-Y5jmizdhd6VqMep9C2PkMvMg8H_TqtdkHVgJvtSHuztkM7bnSAnQ2XOUxCoM-SQH/s640/2012-07-21_130546.jpg" width="640" /></span></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;">Aide du "Setup" - On voit ici très bien qu'il n'existe que deux rôles principaux...</span></td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Un petit coup de setup en ligne de commande:</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="color: #b45f06; font-family: Arial, Helvetica, sans-serif; font-size: x-small;"><strong>.\Setup.exe /mode:Install /role:CA,MB /IAcceptExchangeServerLicenseTerms /InstallWindowsComponents /TargetDir:C:\Exchange</strong></span></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4WZypjH1ZvZ70Jngzkfq9xRdiJiivwjuSu48whEPLm3Qk6Xnf5lY2joQHPeZdFy7lMAmU8OVU7HSIiRXGsTXmZ2vb3KsAIVq0u3f7Ygr6noByO_rfwMbRO4yTBOSOqUHDVAjMul-GLRIR/s1600/2012-07-21_140559.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="404" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4WZypjH1ZvZ70Jngzkfq9xRdiJiivwjuSu48whEPLm3Qk6Xnf5lY2joQHPeZdFy7lMAmU8OVU7HSIiRXGsTXmZ2vb3KsAIVq0u3f7Ygr6noByO_rfwMbRO4yTBOSOqUHDVAjMul-GLRIR/s640/2012-07-21_140559.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Une quinzaine de minutes après, nous y voilà, Exchange 2013 est installé! Un redémarrage étant requis, je m'exécute et après quelques sueurs froides (premier redémarrage assez long), le serveur est tout fraîchement installé.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Une ouverture de l'eventlog confirme que tout un tas de composants "MS Exchange quelque chose" ont démarré :) - de même un coup d'oeil à la console des Services confirme que tout a démarré!</span><br />
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Il suffit ensuite de regarder la console IIS, et là de constater que l'on a deux sites IIS. Un sur Default web Site, l'autre additionel, nommé "Exchange Back End".</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLZgRmMKd0u9skM4CkF29rWW1sfTE9-u2OOEpnpe8frZxaKbUCpN93Nd9Fo9MXK_jErn8dAeVM1Sia0Fvz1DaasowHOVv3Ur4qATWD6kSQ3TCXnkGBw53axAUfvXlovgMSBNcYHWR90zoy/s1600/2012-07-21_211919.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="322" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLZgRmMKd0u9skM4CkF29rWW1sfTE9-u2OOEpnpe8frZxaKbUCpN93Nd9Fo9MXK_jErn8dAeVM1Sia0Fvz1DaasowHOVv3Ur4qATWD6kSQ3TCXnkGBw53axAUfvXlovgMSBNcYHWR90zoy/s640/2012-07-21_211919.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-family: Arial, Helvetica, sans-serif;">Aller, sur ces observations, tentons de nous connecter à Outlook Web App... La page de connection est épurée, style Métro / Windows 8 / Office 2013... Notez le logo "Office" en bas à droite!</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPUiRqmOiJb9wAd0qs0-aMJ_PKL1p3rDY0U4uugFm100bJC_7DyvJ201w4mdbqzMljOSXGiNNSuMV3CSCTEX2x7oTAoDdc9pK4opNb95GVYYheQHW42_iT4-YtW7vszVHdy_D2TzBK_X5x/s1600/2012-07-21_164408.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="370" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPUiRqmOiJb9wAd0qs0-aMJ_PKL1p3rDY0U4uugFm100bJC_7DyvJ201w4mdbqzMljOSXGiNNSuMV3CSCTEX2x7oTAoDdc9pK4opNb95GVYYheQHW42_iT4-YtW7vszVHdy_D2TzBK_X5x/s640/2012-07-21_164408.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Le premier bon point est la rapidité de chargement de la Web App, là où Exchange 2010 peinait un peu parfois, le code se charge ici super vite! Nous voici donc connecté à notre boîte aux lettres en quelques secondes...</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW9lSeK__SG7jTBl7kpIjIJ18mrwIeuCk8ibCCFCCJo1XLbOV-vn_Lrgg1RXtR8vVpx_P9eYl1MBslnerSCB6xRULpqZO0ZnjfpUB_JK0MZqtgHWrM-UVZSkkbb0pKuy535IkTQLApZ65g/s1600/2012-07-21_164620.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW9lSeK__SG7jTBl7kpIjIJ18mrwIeuCk8ibCCFCCJo1XLbOV-vn_Lrgg1RXtR8vVpx_P9eYl1MBslnerSCB6xRULpqZO0ZnjfpUB_JK0MZqtgHWrM-UVZSkkbb0pKuy535IkTQLApZ65g/s640/2012-07-21_164620.jpg" width="640" /></span></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span><span style="font-family: Arial, Helvetica, sans-serif;">Encore une fois, style épuré non sans rappeler Office/Outlook 2013. On retourve le bandeau et un menu bandeau minimaliste. On remarque aussi qu'Outlook Web App remplace le concept de "<strong>Contacts</strong>" par le concept de "<strong>People</strong>". L'idée est de fournir ici une liste de contacts E-mail/Instant Messaging/Social Connector intégrée, tout comme le propose déjà Outlook 2013.</span><br />
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">On voit aussi que le menu "<strong>...</strong>" permet d'accéder à des actions supplémentaires, comme entre autres l'affichage dans une nouvelle fenêtre, ou même l'affichage des propriétés détaillés d'un message (pratique pour le troubleshooting...)</span></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQFjvi3MVa3IhJuGHWUT4zsctk5T8oNhII98R3ybpTEUAhYuwHMasUMjTzYHSiKmPmJi5DbGuO5LLx47R4gzRbKYeUBTMzEvpwT2PG1XvQU6i-DqyeXe55jG5O2VDb8Lh5WiH3_rVgyFQa/s1600/2012-07-21_164730.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQFjvi3MVa3IhJuGHWUT4zsctk5T8oNhII98R3ybpTEUAhYuwHMasUMjTzYHSiKmPmJi5DbGuO5LLx47R4gzRbKYeUBTMzEvpwT2PG1XvQU6i-DqyeXe55jG5O2VDb8Lh5WiH3_rVgyFQa/s200/2012-07-21_164730.jpg" width="200" /></span></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgD-4L_aQxZog8No6_paXQBQfsdxkvs9qWWnto2ViTt59nDiEwxiATPmxlOTRpA5hax4dtDyFxi7hmDRTpASbvwba-c4JuVm3wgtJ2y5bNP2Qzuik447xvwBbTfRUp5XMKmM_h-zo-HaIoM/s1600/2012-07-21_164809.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgD-4L_aQxZog8No6_paXQBQfsdxkvs9qWWnto2ViTt59nDiEwxiATPmxlOTRpA5hax4dtDyFxi7hmDRTpASbvwba-c4JuVm3wgtJ2y5bNP2Qzuik447xvwBbTfRUp5XMKmM_h-zo-HaIoM/s200/2012-07-21_164809.jpg" width="199" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Allons voir maintenant ce qui nous est proposé dans les vraies nouveautés...</span></div>
<h4 class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Mode Offline</span></h4>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Outlook Web App 2013 est désormais accessible en mode déconnecté dès lors que l'on utilise Internet Explorer 10, Chrome 17 (et +) ou Safari 5 (et +). Il n'est évidemment pas recommandé d'utiliser ce mode si l'on est pas sur un poste habituel / maîtrisé / "corp" et il sera intéressant de regarder s'il est possible de bloquer ce mode lors d'une connection au travers d'un poste considéré non securisé...</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUj5fJYU4gTSzvo8m90hI53vASoZvUriRsKIcNOAoy38dU43B98c9pFaIcMGrDbJEq8qbPxT54MABHD5fcxx1GI_n5nS8CMR_mG7j0k7Wx4eCtpqfkRWvHG-jkinfzjkvDh0NdXwjWiZhP/s1600/2012-07-21_164936.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUj5fJYU4gTSzvo8m90hI53vASoZvUriRsKIcNOAoy38dU43B98c9pFaIcMGrDbJEq8qbPxT54MABHD5fcxx1GI_n5nS8CMR_mG7j0k7Wx4eCtpqfkRWvHG-jkinfzjkvDh0NdXwjWiZhP/s400/2012-07-21_164936.jpg" width="400" /></span></a></div>
<h4 class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Web Apps Extensibility</span></h4>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Ensuite, regardons la ligne d'en dessous... "Manage apps..". Késako? C'est pour moi une innovation majeure d'Outlook Web App 2013, à savoir la possibilité d'intégrer d'autres Web Apps dans Owa, qu'elles soient "corporate" ou simplement grand public. Ici j'ai par exemple ajouté l'application Hertz, sachant que Microsoft fournit de base trois applications: Bing Maps et deux autres applications de productivité intégrées au calendrier.</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOkndbHuB_3dyEvWKwokdcCt6ZaIf9S4kHts64SNPb385QzM9epItXAk-AAvxpmADR8W4PMvCw1LSYfd-9aUVmsmxuK38evWdaNKUjTFieo3F76wfmtof-Sb2MGlJj2bTD8NM2Wl610735/s1600/2012-07-21_165104.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOkndbHuB_3dyEvWKwokdcCt6ZaIf9S4kHts64SNPb385QzM9epItXAk-AAvxpmADR8W4PMvCw1LSYfd-9aUVmsmxuK38evWdaNKUjTFieo3F76wfmtof-Sb2MGlJj2bTD8NM2Wl610735/s400/2012-07-21_165104.jpg" width="400" /></span></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBNfb9MjJkWDEUu6nwuHeychhyphenhyphenJl8-jYdDcGEydUOWlF0Wjd0lE1khOtPLqjuWbRJAOfXlliNuekwFwD4jcVgfZfWfKajtLUjLebJKGoodTyi6cG4iwkpgYgn1_9UTESNckcjzDceFQeXf/s1600/2012-07-21_165739.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="264" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBNfb9MjJkWDEUu6nwuHeychhyphenhyphenJl8-jYdDcGEydUOWlF0Wjd0lE1khOtPLqjuWbRJAOfXlliNuekwFwD4jcVgfZfWfKajtLUjLebJKGoodTyi6cG4iwkpgYgn1_9UTESNckcjzDceFQeXf/s640/2012-07-21_165739.jpg" width="640" /></span></a></div>
<h4 class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Exchange Administration Center</span></h4>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Après l'Exchange Control Panel, voici l'Exchange Administration Center ou "EAC". Il s'agit tout simplement d'une console Web (dans la lignée de l'ECP donc) mais qui a vocation à remplacer la MMC Exchange Management Console. Belle ambition! Il s'agissait d'un voeu pieu car on sentait clairement l'orientation prise par Microsoft déjà avec Exchange 2010 et poussée encore plus loin ici.</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">On se connecte d'ailleurs sur l'Url "/ecp". Ce qui est intéressant ici c'est que lorsque l'on accède à ses options on utilise la même Web App, mais que dans un nouveau contexte, on se voit proposer de se connecter à l'EAC. De la même manière que la connexion à Owa, on a un formulaire de connexion épuré et stylisé Windows 8 / Office 2013...</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRCNWREuwmmG-mUXHOxZKxdzxU-IEQ8v1jMtqI4PyGrtPSE-6vyHceCPjrqLB_cBu0BAE3FPNEPC_vsoZwukduljM2hWniiivfBNo5ZTRalI-phEOxJ6BY3sS5Z25hqxb8iiLyfHhrezra/s1600/2012-07-21_215831.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="278" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRCNWREuwmmG-mUXHOxZKxdzxU-IEQ8v1jMtqI4PyGrtPSE-6vyHceCPjrqLB_cBu0BAE3FPNEPC_vsoZwukduljM2hWniiivfBNo5ZTRalI-phEOxJ6BY3sS5Z25hqxb8iiLyfHhrezra/s640/2012-07-21_215831.jpg" width="640" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">On retrouve alors la plupart des prinpaux élements de configuration, quelques nouveautés à explorer (il y en aura surtout énormément dans les Cmdlets :)).</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">En voici quelques exemples:</span></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqbCgs0hIP3K9QRUBPPW854cryXZq9-eWDNuRm_blysh6WFsESlarTF9tcicTNeex57Zx7558dvszJ2fu9AHeZbYdrA5qHuIOHLUAnc_jVZaGiUsS7cjg98swLNSYa7j4AqKxm5X2KJCmu/s1600/2012-07-21_172624.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqbCgs0hIP3K9QRUBPPW854cryXZq9-eWDNuRm_blysh6WFsESlarTF9tcicTNeex57Zx7558dvszJ2fu9AHeZbYdrA5qHuIOHLUAnc_jVZaGiUsS7cjg98swLNSYa7j4AqKxm5X2KJCmu/s640/2012-07-21_172624.jpg" width="640" /></span></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;">Gestion des déstinataires (BàL, Grouptes, BàL de Ressources, Contacts, BàL Partagées et migration (Move Requests))</span></td></tr>
</tbody></table>
<div style="text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif;"></span></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi61WJH8rK_8QOx2kWIr1F5U5eghO2qsumiFv6bdUuh4prh89xqfPeceefTHmymTjNmE9D7-YwMqHJ2C8af88dIneghzkwWQGL6TA4gpwMHJAAG51Q95xIq45KiZsHoRMy8SXiHieGaw0hD/s1600/2012-07-21_172845.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi61WJH8rK_8QOx2kWIr1F5U5eghO2qsumiFv6bdUuh4prh89xqfPeceefTHmymTjNmE9D7-YwMqHJ2C8af88dIneghzkwWQGL6TA4gpwMHJAAG51Q95xIq45KiZsHoRMy8SXiHieGaw0hD/s640/2012-07-21_172845.jpg" width="640" /></span></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;">Gestion des "migrations" - il s'agit d'une console centralisant les Move Requests et permettant de gérer des comptes admin afin d'effectuer des migrations "inter-Org" et/ou entre Exchange et Office 365/Exchange Online.</span></td></tr>
</tbody></table>
<span style="font-family: Arial, Helvetica, sans-serif;"></span><br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH09OEfkj6pljrA94cQEx4CjEUjDlHixDKDN6GcwdVLNey8SVnVN3h1tR9TiW-haPn-pZ42wIhdgfxL_c0tUmdIwecXnO5gFdSpQnWcR1dmwJsGyDqaUfaomN0OTeRuwy1Y_xsmu9CLwmK/s1600/2012-07-21_173017.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" height="329" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhH09OEfkj6pljrA94cQEx4CjEUjDlHixDKDN6GcwdVLNey8SVnVN3h1tR9TiW-haPn-pZ42wIhdgfxL_c0tUmdIwecXnO5gFdSpQnWcR1dmwJsGyDqaUfaomN0OTeRuwy1Y_xsmu9CLwmK/s640/2012-07-21_173017.jpg" width="640" /></span></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-family: Arial, Helvetica, sans-serif;">On retrouve l'éditeur RBAC et des nouveaux Rôles, en particulier sur le DLP (Data Loss Prevention) sur lequel nous reviendons plus tard...</span></td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"> Voici donc un premier toucher à Exchange 2013, et surtout à Outlook Web App. Il convient de dire que la simplification des rôles va faciliter le déploiement, mais surtout... comme System Center, Windows Server, Office, etc etc le Cloud est omniprésent. On aime ou pas, en tout cas il est impossible d'y être indifférent!</span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="color: #990000; font-family: Arial, Helvetica, sans-serif;"><strong>A bientôt, et bonnes vacances à tous!</strong></span></div>Benoit Boudevillehttp://www.blogger.com/profile/04686411704172373483noreply@blogger.com1