Bien réussir son déploiement OCS 2007 R2


Ce billet reprend, en quelque sorte traduit, la session UCO202 présentée par Leonardo Wormull lors des journées Techdays de l’année 2010 à Paris.


Vous trouverez cette présentation à l’endroit suivant: http://www.microsoft.com/france/vision/mstechdays10/Webcast.aspx?EID=fa8e4a2b-c481-4f19-ac11-a44774b8d298


Il a été recensé 10 points principaux qu’il faudra bien comprendre et les procédures à respecter pour bien réussir le déploiement de la version OCS 2007 R2.


Ces points qui seront évoqués ( et éventuellement améliorés) par la suite représentent un résumé et un retour d’expérience des différents problèmes déjà rencontrés par les utilisateurs.


Pour bien illustrer ces différents points, il est nécessaire de présenter l’infrastructure d’une architecture globale OCS 2007 R2:


 


 image


Comme vous pouvez le constater au vu de cette architecture, plusieurs composants matériels et softwares sont impliqués. De ce fait plusieurs technologies sont mises en ouvre d’où une attention particulière lors de la configuration de ces dernières.


Les  principaux problèmes qu’un administrateur OCS peut rencontrer sont les suivants:


1-Préparation du  Schéma, forêt et domaine


2-Certificats


3-Sign-in (se loguer) en mode automatique (problème de DNS/Certificat)


4-Utilisateurs n’arrivent pas à se loguer (problème de DNS/Certificat DNS/Certificat)


5-Utilisateurs n’arrivent pas à récupérer le carnet d’adresses (problème UR/IIS)


6-Communication Audio/Vidéo entre les utilisateurs externes et internes ne fonctionne pas (paramétrage du composant Edge n’est pas bon)


7-Inviter/Joindre une conférence “Live Meeting conference” ne fonctionne pas


8-Sign-In avec le communicateur léger (CWA: Communicateur léger) renvoie l’erreur suivante: (0-1-492) “Votre horloge système n’est pas correcte”


9-Délégués n’arrivent pas à mettre en place (to Schedule) des  “Live Meetings”


10-Mauvaise qualité Audio/Vidéo (problème de réseaux/pare feux)


Nous passerons en revue chaque point et développer ainsi les vérifications à opérer et les actions nécessaires à entreprendre.


Préparation du  Schéma, forêt et domaine


L’outil “lcscmd.Exe” permet de configurer le produit sans utiliser le “wizard” OCS. A cet effet, certaines étapes comme les vérifications peuvent être faites via cet outil pour bien vérifier la configuration. cet outil se trouve sous le répertoire suivant:


C:\Program Files\Common Files\Microsoft Office Communications Server 2007 R2



  • Comment préparer le schéma pour  LCS\OCS?


==> LCScmd.exe /forest /action:Schemaprep



  • Comment vérifier si le schéma est bien préparé pour LCS\OCS?


==> LCScmd.exe /forest /action:checkschemaprepstate


Un exemple d’exécution correcte de cette commande indique ceci:


Microsoft Office Communications Server 2007 R2 Deployment Command Console


Copyright (c) Microsoft Corporation. All rights reserved.


Executing “Initialize Forest Object”


Executing “Initialize Active Directory Connections”


Executing “Check Schema Prep State”


Check the log file “C:\Users\ADMINI~1.JTE\AppData\Local\Temp\Forest_checkschemaprepstate[2010_02_05][09_23_27].html” for


details.


Action completed successfully


Execution time = 1172 ms


L’extension du schéma permet en fait d’ajouter plusieurs classes et d’attribut.


Utiliser l’outil “ADSIEDIT.msc” et choisissez l’option “Configuration” au niveau du nommage de contexte et vous obtiendrez toutes ces classes en question comme la figure suivante le montre:


image



  • Comment préparer la forêt pour LCS\OCS?


==> LCScmd.exe /forest /action:ForestPrep



  • Comment vérifier que la forêt est bien préparée pour LCS\OCS?


==> LCScmd.exe /forest /action:CheckForestPrepState



  • Comment préparer le domaine pour LCS\OCS?


==> LCScmd.exe /domain:myDom.com /action:DomainPrep



  • Comment vérifier que le domaine est bien préparé pour LCS\OCS?


==> LCScmd.exe /domain:myDom.com /action:CheckDomainPrepState


Pour plus d’information sur ce sujet, veuillez consulter le contenu du lien suivant: http://technet.microsoft.com/en-us/magazine/2009.03.commandline.aspx?pr=blog


Certificats


OCS exige une infrastructure de clés public (PKI) pour pouvoir assurer les connexions TLS (Transport Layer Security) et les connexions MTLS (Mutual TLS).


En clair, le protocole TLS est utilisé entre les communications Client-Serveur et le protocole MTLS est utilisé entre les communications Serveur-Serveur.


Par défaut, OCS est configuré pour utiliser le protocole TLS entre les communications Client-Serveur.


La figure suivante  montre ainsi ces protocoles d’encryptage dans une architecture OCS:



image


Les protocoles TLS et MTLS fournissent des services de communication encryptées et d’authentification sur internet.


OCS utilisent donc ces 2 protocoles pour encrypter les communications entre les différents composants.


OCS 2007 R2 utilise les certificats pour les raisons suivantes:



  • Connexions TLS  entre un  client and un serveur

  • Connexions MTLS entre les serveurs

  • Fédération utilisant un “automatic DNS discovery” pour les  partenaires

  • Accès aux utilisateurs distants pour la fonctionnalité: instant messaging (IM)

  • Accès aux utilisateurs externes pour les sessions  Audio/Vidéo, partage d’application , et les conférences sur le web

Pour la version Office Communications Server 2007 R2, les conditions suivantes doivent être remplies:



  • Tous les certificats de type serveur doivent supportés l’autorisation server (Server Enhanced Key Usage -1.3.6.1.5.5.7.3.1-).

  • Tous les certificats de type serveur doivent contenir un point de distribution CRL(Certificate Revocation List)

  • Support de Auto-Inscripotion pour les serveurs internes d’Office Communications Server servers.

  • Auto-Inscription n’est pas supporté pour les Serveurs (rôle) Edge

Assez souvent, Il arrive que vous puissiez voir les certificats via la console d’administration de certificats mais ces derniers n’apparaissent pas quand vous essayez de les assigner avec le wizard de configuration OCS.


==> Ce problème est généralement dû au fait que les certificats n’ont pas de valeur de serveur EKU ou la clé privée a été oubliée. Cela peut-être aussi les deux à la fois. Ce genre de problème arrive avec les clés publiques.


PS: Si votre architecture est configurée pour supporter la connectivité pour le portail AOL celui exige que le certificat dédié au rôle d’accès au Edge supporte l’autorisation ( Client EKU 1.3.6.1.5.5.7.3.2)


Sign-in automatique ne fonctionne pas


Le Sign-in automatique sous entend que le client communicateur doit pouvoir:


_ Chercher et trouver le  DNS adéquat


image


_ S’enregistrer et s’authentifier auprès du serveur retrouvé via le DNS


image


_


Ces étapes précédentes que le client cherche et doit résoudre peuvent présenter des problèmes liées soit  à la configuration DNS, problème de certificat ou de nommage de serveur.


Les pré-requis pour un sign-in automatique d’un client communicateur repose sur:


– Enregistrement de type SRV : _sipinternal._tcp._domain.com


– Enregistrement de type SRV: _sipinternaltls._tcp.domain.com


– Un enregistrement d’un nom de “pool” de votre configuration


Comment le client communicateur localise les services?


Durant la recherche DNS, les enregistrement de type SRV sont requêtés en parallèle et les réponses sont retournées au niveau client dans l’ordre suivant:


_sipinternaltls._tcp.<domain>  ==> pour les connexions internes TLS


_sipinternal._tcp. <domain>    ==> pour les connexions internes TCP


_sip._tls. <domain>                ==> pour les connexions externes TLS


_sip._tcp.<domain>                ==> pour les connexions externes TCP


où <domain> est le nom du domaine SIP utilisé pour les clients internes.


Les 2 dernières réponses concernent les clients connectés en dehors du votre périmètre interne réseau.


Quand vous créez les enregistrements de type SRV, il est important de se rappeler  ques ces enregistrements doivent tous pointer sur un record de type A se trouvant dans le domaine que ces derniers. Par exemple, si le type d’enregistrement SRV est crée avec le nom de domaine contoso.com, l’enregistrement de type A ne doit pointer vers un nom de domaine fabrikam.com. en revanche, il doit pointer vers contoso.com.


L’utilisation de TLS est une bonne pratique car les tables contenant les valeurs de DNS et de certificats ne vont pas énumérer les enregistrement _siptinernal._tcp et _sip._tcp .


Le client communicateur essaiera les enregistrement de type SRV dans l’ordre où iles a reçu et choisira ainsi le premier qui a réussi.


En fait, Comme mentionné plus haut ( Découvrir DNS), le client communicateur utilise une partie du nom de domaine (SIP URI) pour pouvoir rechercher le DNS pour ensuite découvrir le nom du serveur où sont configurés les utilisateurs OCS (client communicateurs): En d’autres termes, retrouver le nom du “pool”.


Si pour une raison ou une autre, le sign-in automatique ne fonctionne pas, les composants incriminés sont représentés dans l’architecture suivante:


image


Ci-après un résumé succinct des requêtes générées par le client communicateur en vue d’aboutir au sign-in automatique:


image


Si par exemple, le nom de DNS  demandé ne correspond pas au nom contenu dans l’enregistrement de type SRV retourné lors des vérifications effectuées par le protocole TLS, cela se traduira par un échec de la connexion et du sign-in  donc


image


 


Les clients communicateurs n’arrivent pas à se connecter


Il faut distinguer deux situations différentes entre le client communicateur ( MOC) et le client léger via le web ( CWA).


Pour le client communicateur (MOC), ce genre de problème est souvent dû à un problème DNS ou de certificat.


image


Un autre type de problème peut survenir pour le client communicateur via le web ( CWA ) et que la station de travail n’est pas membre de la forêt.


Assez souvent, vous aurez l’erreur suivante:


0-1-492 Une erreur serveur s’est produite lors de l’envoi de la demande contactCard4Info. Réessayez.


<contactCard4Info rid=”1″ ucEnabled=”false”>  </contactCard4Info>   


De manière générale, le sign-in est refusé en raison d’informations d’identification non valide


Pour cela, il faudra désactiver l’authentification Windows comme suit:


1. Ouvrir la console d’administration CWA


image


 


2. Dans les propriétés  de “Communicator Web Access”,  désactiver l’authentification Windows:


image


Problèmes de carnet d’adresses


Cette problématique peut être générée par plusieurs facteurs.


Assez souvent, cela peut être dû au User Replicator, IIS, Installation des rôles “Front End” et “CWA” sur le même serveur, …


Nous passerons en revue le rôle de “User Replicator” et l’interaction avec les autres composants.


_ User Replicator: Ce composant utilise l’interface LDAP pour lire des informations sur l”annuaire global ( Active Directory) pour le compte de l’utilisateur. Les informations que ce processus lit concerne les objets: Utilisateurs et contacts.  La lecture des objets ne concerne que les nouveaux objets ajoutés ou/et les objets effacés. Les informations lues sont écrites dans la base de données (RTCAB). Ce processus se déclenche toutes les 60 secondes.


image


Les objets au sens Active Directory ( Utilisateur et contacts) et l’un de leurs attributs suivants sont synchronisés par le “User Replicator”:


– msRTCSIP-PrimaryUserAddress
– telephoneNumber
– homePhone
– Mobile


Ensuite, le processus ABServer.exe, lit le informations relatives au carnet d’adresses et génèrent 2 fichiers pour être utilisé par le client communicateur ( *.lsabs  “l” comme local) et la fonctionnalité téléphone via le communicateur ( *.dsabs “d” comme device).  Dans le cadre d’une installation de type standard, ces fichiers se trouvent dans le répertoire suivant: %ProgramFiles%/Office Communications Server 2007/Web Components/Address Book Files/Files.


Dans le cas d’une installation de type Entreprise,  les fichiers se trouve dans un partage NTFS que l’administrateur a défini lors de la configuration d’OCS.


Ce partage, en l’occurrence


image


est pointé par un répertoire virtuel défini au niveau IIS comme suit:


image


Convention de nommage des fichiers


F-xxxx.lsabs – fichier complets


xxxx représente la date de création du fichier complet


C-xxxx-yyyy.lsabs –Delta des fichiers compactés


xxxx Création du fichier complet


yyyy Date de création du fichier delta


xxxx: en jours depuis  1er Janvier  2001


xxxx et yyyy sont exprimés en hexadécimal.


Comment le client communicateur retrouve l’adresse de l’URL pour télécharger le carnet d’adresse?


Le client communicateur utilise  IIS pour télécharger les fichiers contenant le carnet d’adresse. Pour connaitre le lien, procéder ainsi:


_ Appuyer sur “CRTL” + click droit sur l’icone du communicateur se trouvant sur la barre des taches


_ Click sur “Configuration information” et vous aurez ceci


image


Une fois téléchargée, les informations sont stockées soule répertoire:


%userprofile%\AppData\Local\Microsoft\Communicator\sip_username@yourdomain.com


Ce répertoire contient les fichiers suivants:


GalContacts.db
GalContacts.db.idx


Si l’entrée de la liste d’adresse globale est supérieure à 50 Kilo octets, vous trouverez aussi les fichiers suivants: GalContactsDelta.db et GalContactsDelta.db.idx



Pour résumer, voici donc les différentes requêtes échangées:


image


Communication Audio/Vidéo entre les utilisateurs externes et internes ne fonctionne pas (Revoir le paramétrage du composant Edge)


Une configuration type peut être représentée par la figure suivante:


image


Voyons d’abord comment les différents composants ( services ) du rôle Edge fournit les informations nécessaires à la connexion.


Le composant “Access Edge” permet l’accès de l’utilisateur externe comme le montre la figure suivante:


image


 


 


ensuite l’appel audio est relayé par le  rôle “Front End” de la façon suivante:


image


Inviter/Joindre une conférence “Live Meeting conference” ne fonctionne pas


Supposant que 2 utilisateurs ont du mal à établir/joindre une conférence


image


Pour vous permettre de résoudre un tel problème, passant en revue les différents composants et voir comment précisément établir ou se joindre   à une conférence.


Voyons voir d’abord quels sont les différents composants qu’implique une conférence?


image


Comment crée-t-on une une conférence?


image


Comment se joindre à une conférence?


image


 


Comment les différents services du rôle “Edge” fournissent l’accès et l’audio/vidéo?


image


Sign-In avec le communicateur léger (CWA: Communicateur léger) renvoie l’erreur suivante: (0-1-492) “Votre horloge système n’est pas correcte”


Consulter l’article http://support.microsoft.com/kb/968978/EN-US et le blog http://unifiees.blogspot.com/search/label/0-1-492


Délégués n’arrivent pas à mettre en place (to Schedule) des  “Live Meetings”


Si vous avez l’erreur suivante:


[ (  50) 10:08:31:275 <RTL> ] [ PID: 0908 TID: 0304 ] Displaying error message “An error occurred while executing this command. If this error persists, please contact your Live Meeting administrator.” for HRESULT 0x80070057


et l’erreur  0x80070057 signifie:


0x80070057 -> (E_INVALIDARG)  (kernel32.dll) One or more arguments are invalid


Avec la version de Juillet 2009 ( Cumulatif pour Office Communications Server 2007 R2) il est maintenant possible de permettre cette délégation.


==> Voir les articles suivants:



  http://support.microsoft.com/kb/971845/



 http://support.microsoft.com/kb/969695


Sur la machine “Boss”, valider l’une des clés suivantes:


Windows Registry Editor Version 5.00


[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Communicator]


“EnableExchangeDelegateSyncUp”=dword:00000001


Ou bien


[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Communicator]


“EnableExchangeDelegateSyncUp”=dword:00000001


Mauvaise qualité Audio/Vidéo (problème de réseaux/pare feux)


image


 


Voir l’article


http://support.microsoft.com/default.aspx?scid=kb;EN-US;946091


Ce problème peut arriver dans un environnement tel que:


•  Configuration consolidée d’OCS 2007 R2 déployée derrière un répartiteur de charge hardware.


• Le répartiteur de charge fonctionne avec une configuration DNAT.


Il y a deux façons de contourner le problème:


Méthode 1: Ajouter une entrée dans le fichier “hosts”


Modifier le fichier “hosts” de chaque serveur (font end) pour établir la correspondance entre le nom “FQDN” du pool OCS 2007 R2 et  l’adresse IP du serveur front end.


Méthode 2: Changer la configuration du répartiteur de charge hardware et utiliser le protocole SNAT ( au lien de DNAT)


Comments (0)

Skip to main content