Travaux dirigés Oracle Unified Communication Suite • • • • • • • • • TD1 : Installation annuaire et serveur de messagerie TD2 : Installation de Calendar Server 7 TD3 : Installation de Convergence TD4 : Installation de Delegate Administrator TD5 : Administration de Directory Server TD6 : Administration des boites aux lettres TD7 : Administration du routage TD8 : Administration de Calendar Server 7 TD9 : Administration de convergence Compte : root MDP : password TD1 : Installation annuaire et serveur de messagerie Etapes de la procédure 1. Préparation unix 2. Installation Directory Server 3. Préparation Directory Server 4. Installation Oracle Communication Suite 5. Configuration Messaging Server 6. Création Utilisateur de messagerie 7. Configuration Client de messagerie 8. Test La distribution des produits et les fichiers de test sont dans le dossier : /dist Déroulement de la procédure 1. Préparation unix (action déjà réalisée sur la machine virtuelle) # groupadd mail # mkdir –p /export/home # useradd –u 1000 –g mail –d /export/home/mailsrv –m mailsrv # chkconfig -- list # service sendmail stop # chkconfig --del sendmail 2. Installation Directory Server # # # # # # # # # # mkdir –p /opt/sun cd /dist mkdir DS cd DS unzip ../ofm_odsee_linux_11.1.1.7.0_64_disk1_1of1.zip cd ODSEE_ZIP_Distribution unzip sun-dsee7.zip mv dsee7 /opt/sun/directory mkdir –p /var/opt/sun/directory cd /opt/sun/directory/bin #./dsadm create /var/opt/sun/directory/dsins1 Mot de passe : password # cd /opt/sun/directory/bin # ./dsadm start /var/opt/sun/directory/dsins1 # ./dsconf create-suffix « o=isp » Répondre : Y Mot de passe : password # cd /opt/sun/directory/dsrk/bin # ./ldapsearch –b « o=isp » -D « cn=Directory Manager » -w password « objectclass=* » 3. Installation Oracle Communication Suite # cd /dist # mkdir UCS # cd UCS # unzip ../V37042-01.zip # ./commpkg install Accepter le dossier d’installation : /opt/sun/comms Selectionnez les composants : 2,3,4,5,6,7,8 Les Warnings sont normals Confirmez : Yes Hit Return, to Continue 4. Préparation Directory Server # cd /opt/sun/comms/dssetup/sbin # ./comms_dssetup.pl Directory server root [/var/opt/sun/directory/dsins1] accept default Directory Manager DN [cn=Directory Manager] accept default Directory Manager Password - password Use directory server for users/groups [yes] accept default Users/Groups base suffix [o=isp] accept default Schema type? [1] 2 Confirm Schema Type? [n] y Update the schema files? [yes] accept default Configure new indexes? [yes] accept default Reindex new indexes? [yes] accept default … Do you want to continue : y … Do you want to continue : y 5. Configuration Messaging Server # cd /opt/sun/comms/messaging64/bin # ./configure Path for Data and Configuration Files [/var/opt/sun/comms/messaging64] accept default Messaging Server Unix user [mailsrv] accept default Messaging Server Unix group [mail] accept default Fully qualified local hostname [s1.demo.fr] accept default Default mail domain name [demo.fr] accept default Hostname for LDAP Directory Server [] s1.demo.Fr LDAP administrator login [cn=Directory Manager] accept default LDAP administrator password - password Mail address for postmaster notices [[email protected]] [email protected] Password for server administration – password # cd/opt/sun/comms/messaging64/bin # ./stop-msg # ./start-msg 6. Création Utilisateur de messagerie # vi /dist/jdoe.ldif Modifiez le mot de passe userpassword : password Sauvegardez # cd /opt/sun/directory/dsrk/bin # ./ldapmodify –D « cn=Directory Manager » -w password –a –f /dist/jdoe.ldif 7. Configuration Client de messagerie # # # # cd /opt tar -xvjpf /dist/thunderbird-17.0.5.tar.bz2 cd /opt/thundirbird ./thunderbird & Compte courrier électronique Configuration Manuelle Nom : John Doe Adresse de courrier : [email protected] IMAP → Nom du serveur : s1.demo.fr (143) SMTP → Nom du serveur : s1.demo.fr (587) Nom d'utilisateur entrant : jdoe Mot de passe : password 8. Test • Envoyez vous un mail • Répondez au mail TD2 : Installation de Calendar Server 7 Etapes de la procédure 1. Installation Java 2. Installation Glassfish 3. Installation et préparation Mysql 4. Configuration Calendar (davserver) 5. Configuration Client de Calendar Sunbird 6. Test La distribution des produits et les fichiers de test sont dans le dossier : /dist Déroulement de la procédure 1. Installation Java # # # # cd /opt/sun /dist/jdk-6u45-linux-x64-rpm.bin ln –s jdk1.6.0_45 jdk /opt/sun/jdk/bin/java –version … build 1.6.0_45-b06 2. Installation Glassfish # cd /dist # ./sges-2_1_1-linux-ml.bin –javahome /opt/sun/jdk Mode Graphique ou Mode Console Installation Directory [/opt/SUNWappserver] /opt/sun/appservercs Create Directory or Choose New Create Directory accept default Install Node Agent [yes] accept default Install High Availability Database Server [no] accept default Install Load Balancing Plugin [no] accept default Install Domain Administration Server [yes] accept default Install Sample Applications [yes] no Java Configuration [1. Install Java 2 SDK] 2. Reuse existing Java 2 SDK Existing JDK Location [/opt/sun/jdk] accept default Admin User [admin] accept default Admin User's Password – password Master Password for SSL Certificate — password Admin Port [4848] 8800 HTTP Port [8080] 8080 HTTPS Port [8181] 8181 Enable Updatecenter client [yes] no Upgrade from previous AS version [no] accept default Install Now # cd /opt/sun/appservercs/bin # /asadmin start-domain domain1 username : admin admin password : password master password : password # cd /opt/sun/appservercs/bin # ./asadmin login -–port 8800 Ouvrir le navigateur http://s1.demo.fr:8080/ http://s1.demo.fr:8800/ 3. Installation et préparation Mysql Mysql à déjà été installé avec les commandes • yum install mysql • yum install mysql-­‐server # /etc/init.d/mysqld start # /usr/bin/mysqladmin –u root password password # /usr/bin/mysql_secure_installation Mot de passe de root : password Répondre « yes » sauf au changement de mot de passe de root # /usr/bin/mysql –u root -p Enter password : password mysql>CREATE DATABASE caldav CHARACTER SET = UTF8; mysql>CREATE DATABASE ischedule CHARACTER SET = UTF8; mysql>CREATE USER 'caldav'@'localhost' IDENTIFIED BY 'password'; mysql>GRANT ALL ON caldav.* TO 'caldav'@'localhost'; mysql>GRANT ALL ON ischedule.* TO 'caldav'@'localhost'; mysql>exit # chkconfig --add mysqld 4. Configuration Calendar (davserver) -­‐-­‐-­‐-­‐ (Correction bug-­‐interface installation) # cd /opt/sun # ln –s directory/dsrk dsee6 ---- # cd /opt/sun/comms/davserver/sbin # export JAVA_HOME=/opt/sun/jdk # ./init-config -nodisplay Accept : /var/opt/sun/comms/davserver Components to be configured [Calendar Server] accept default Host Name [s1] accept default DNS Domain Name [demo.fr] accept default MySQL or Oracle Database [MySQL] accept default MySQL Server Host Name [localhost] accept default MySQL Server Port Number [3306] accept default Database User ID [caldav] accept default Database User Password - password Calendar Database Name [caldav] accept default iSchedule Database Name [ischedule] accept default Document Files Directory [/var/opt/sun/comms/davserver/db] accept default 1 Créer répertoire Application Server Install Directory [/opt/sun/appserver] /opt/sun/appservercs Application Server Domain Directory [/opt/sun/appservercs/domains/domain1] accept default Application Server Document Root Directory [/opt/sun/appservercs/domains/domain1/docroot] accept default Application Server Instance Name [server] accept default Virtual Server Identifier [server] accept default Application Server Instance HTTP Port [8080] 8080 Administration Server Port [4848] 8800 Administrator User ID [admin] accept default Administrator Password - password Administration Server instance running in the secure mode [yes] no URI Path for Sun Java Calendar Server 7 [/] /davserver Ldap URL [ldap://s1.demo.fr:389] accept default Bind DN [cn=Directory Manager] accept default Bind Password - password DC Tree Suffix [o=isp] accept default LDAP Unique ID Attribute [davuniqueid] accept default Default Domain Name [demo.fr] accept default Organization DN [o=demo.fr,o=isp] accept default SMTP Server Host Name [s1.demo.fr] accept default SMTP Server Port Number [25] accept default Administrator User ID [calmaster] calmaster Administrator Password – password Sélectionnez : Configure Now Attendre Sélectionnez : Done # cd /opt/sun/appservercs/bin # ./asadmin stop-domain domain1 # ./asadmin start-domain domain1 Test URL http://s1.demo.fr:8080/davserver/dav/home/jdoe/calendar/ 5. Configuration Client de Calendar Sunbird # cd /opt # tar -xvjpf /dist/sunbird-1.0b1.tar.bz2 # cd /opt/sunbird # ./sunbird & Fichier S’abonner à un agenda distant Sur le réseau Caldav Emplacement http://s1.demo.fr:8080/davserver/dav/home/jdoe/calendar/ User : jdoe MDP : password 6. Tests Utilisez votre Agenda TD3 : Installation de Convergence Etapes de la procédure 1. Installation Glassfish 2. Installation Convergence 3. Test La distribution des produits et les fichiers de test sont dans le dossier : /dist Déroulement de la procédure 1. Installation Glassfish # cd /dist # ./sges-2_1_1-linux-ml.bin –javahome /opt/sun/jdk Installation Directory [/opt/SUNWappserver] /opt/sun/appserver Create Directory or Choose New Create Directory accept default Install Node Agent [yes] accept default Install High Availability Database Server [no] accept default Install Load Balancing Plugin [no] accept default Install Domain Administration Server [yes] accept default Install Sample Applications [yes] no Java Configuration [1. Install Java 2 SDK] 2. Reuse existing Java 2 SDK Existing JDK Location [/usr/java/jdk1.7.0_11] accept default Admin User [admin] accept default Admin User's Password – password Master Password for SSL Certificate — password Admin Port [4848] accept default HTTP Port [8080] 80 HTTPS Port [8181] 443 Enable Updatecenter client [yes] no Upgrade from previous AS version [no] accept default # cd /opt/sun/appserver/bin # ./asadmin start-domain domain1 # cd /opt/sun/appserver/bin # ./asadmin login admin/password 2. Installation Convergence # export JAVA_HOME=/opt/sun/jdk # cd /opt/sun/comms/iwc/sbin # ./init-config Next/Enter Accept /var/opt/sun/comms/iwc Configure : Mail,Calendar Host Name [s1] accept default DNS Domain Name [demo.fr] accept default Application Server Install Directory [/opt/sun/appserver] accept default Domain Directory [/opt/sun/appserver/domains/domain1] accept default Document Root Directory [/opt/sun/appserver/domains/domain1/docroot] accept default Application Server Instance Name [server] accept default Virtual Server Identifier [server] accept default Server Instance HTTP Port [8080] 80 Administration Server Port [4848] accept default Administrator User ID [admin] accept default Administrator Password - password Secure Administration Server Instance [yes] no URI Path [/iwc] accept default Enable Hosted Domain Support [yes] accept default Directory Server LDAP URL [ldap://s1.demo.fr:389/] accept default Bind DN [cn=Directory Manager] accept default Bind Password - password DC Tree suffix [o=isp] accept default Default Domain Name [demo.fr] accept default Webmail Server Host Name [s1.demo.fr] accept default Webmail Server Port Number [8990] accept default Webmail Server Running In Secure Mode? [no] accept default Webmail Server Admin User ID [admin] accept default Webmail Server Admin Password - password Calendar Server Version [7] accept default Calendar Server Host Name [s1.demo.fr] accept default Calendar Server Port Number [80] 8080 Calendar Server Running In Secure Mode? [no] accept default Calendar Server Service URI [/davserver/wcap] accept default Calendar Server Admin User ID [calmaster] accept default Calendar Server Admin Password - password Convergence Administrator Username [admin] accept default Password – password # /opt/sun/appserver/bin/asadmin stop-domain domain1 # /opt/sun/appserver/bin/asadmin start-domain domain1 3. Test http://s1.demo.fr/iwc Login : jdoe Mot de passe : password Vous devriez retrouvez vos messages et vos RDVs. TD4 : Installation de Delegate Administrator Etapes de la procédure 1. Installation Delegate Administrator 2. Tests Déroulement de la procédure 1. Installation Delegate Administrator # export JAVA_HOME=/opt/sun/jdk # cd /opt/sun/comms/da/sbin # ./config-commda -nodisplay Selectionnez : Entter Acceptez : /var/opt/sun/comms/da Installez : Delegated Administrator Utility, Console et Server DA Web-Container Hostname [s1.demo.fr] accept default DA Web-Container Port [8080] 80 Default Domain [demo.fr] accept default Default SSL Port [443] accept default Web Container [Web Server 6.x/WEB] APP8 Install Directory (for DA Console) [/opt/sun] /opt/sun/appserver Domain Directory [/opt/sun/appserver/domains/domain1] accept default Doc Root Directory [/opt/sun/appserver/domains/domain1/docroot] accept default Server Target Name [server] accept default Virtual Server Identifier [server] accept default Server Instance HTTP Port [80] accept default Administration Server Port [4849] 4848 Administrator User ID [admin] accept default Administrator Password - password Secure Administration Server Instance? [yes] non Default Domain Separator [@] accept default Directory Server Interface [DL] accept default Web Container [Web Server 6.x/WEB] APP8 Install Directory (for DA Server) [/opt/sun] /opt/sun/appserver Domain Directory [/opt/sun/appserver/domains/domain1] accept default Doc Root Directory [/opt/sun/appserver/domains/domain1/docroot] accept default Server Target Name [server] accept default Virtual Server Identifier [server] accept default Server Instance HTTP Port [80] accept default Administration Server Port [4849] 4848 Administrator User ID [admin] accept default Administrator Password - password Secure Administration Server Instance? [yes] non URL of Directory Server [ldap://s1.demo.fr:389] accept default Bind As [cn=Directory Manager] accept default Password - password Internal LDAP user (daAdmin) Password - password Organization DN [o=demo.fr,o=isp] accept default Top Level Admin for Default Organization [admin] accept default Password - password Load Sample Service Packages [Y] accept default Load Sample Organizations [Y] n Configure Now Enter Enter # cd /opt/sun/appserver/bin # ./asadmin stop-domain domain1 # ./asadmin start-domain domain1 2. Tests Testez l’url suivante dans votre navigateur : http://s1.demo.fr/da Login :admin Mot de passe : password Pour l’organisation demo.fr ajouter le package de service « earth » Créer un utilisateur en ligne de commande # cd /opt/sun/comms/da/bin # ./commadmin user create –D admin –d demo.fr –S mail,cal –H s1.demo.fr –B s1.demo.fr –F Anna –L Rivet –l anna.rivet –W password –E [email protected] Mot de passe : password Testez l’utilisateur avec Convergence TD5 : Administration de Directory Server 1. Consultation Annuaire avec Apache Directory Studio Sur la droite du l'écran double-­‐cliquez sur ApacheDirectoryStudio Dans la barre de menu LDAP → Nouvelle Connexion Nom de connexion : Annuaire demo.fr Nom d'hôte : s1.demo.fr Port: 389 Méthode d'encryption: Pas d'encryption Suivant Authentification Simple Bind DN ou nom d'utilisateur (SASL): cn=Directory Manager Mot de passe : password Suivant → Terminer Retrouvez dans Navigateur LDAP vos entrées LDAP 2. Présence du processus slapd # ps -ef | grep slapd … # netstat -an | grep 389 ... 3. Non présence du processus slapd # cd /opt/sun/directory/bin # ./dsadm stop /var/ opt/sun/directory/dsins1 # ps -ef | grep slapd … # netstat -an | grep 389 .. # ./dsadm start /var/opt/sun/directory/dsins1 4. Test des commandes d’administration # ./dsconf --help # ./dsadm --help 5. Consultation des paramètres de l'instance # ./dsconf get-server-prop Mot de passe: password … 6. Consultation des paramètres d'un suffixe # ./dsconf get-suffix-prop ‘o=isp’ Mot de passe: password … 7. Consultation des paramètres des fichiers journaux # ./dsconf get-log-prop access Mot de passe: password … 8. Modification d'un paramètre de configuration # ./dsconf set-server-prop dn-cache-size:20M Mot de passe: password … # ./dsadm restart /var/opt/sun/directory/dsins1 9. Backup de l'annuaire # ./dsadm stop /var/opt/sun/directory/dsins1 # ./dsadm backup /var/opt/sun/directory/dsins1/tmp/backup # ls /tmp/backup # ./dsadm start /var/opt/sun/directory/dsins1 10. Restore de l'annuaire # ./dsadm stop /var/opt/sun/directory/dsins1 # ./dsadm restore /var/opt/sun/directory/dsins1 /tmp/backup # ./dsadm start /var/opt/sun/directory/dsins1 TD : Administration Messaging Server 1. Non présence des processus messagerie # # … # … # … cd /opt/sun/comms/messaging64/bin ./stop-msg ps -ef | grep mailsrv netstat -an | grep 25 # netstat -an | grep 587 … # netstat -an | grep 143 … # netstat -an | grep 8990 … # ./start-msg 2. Présence des processus messagerie # ps -ef | grep mailsrv … # netstat -an | grep 25 … # netstat -an | grep 587 … # netstat -an | grep 143 … # netstat -an | grep 8990 … 3. Arrêt et démarrage des services # # # # # # # ./stop-msg store ./start msg store ./start msg imap ./start-msg mmp ./start-msg http ./stop-msg smtp ./start-msg smtp 4. Test des commandes ./configutil -h # ./configutil # ./showlog # ./hashdir anna.rivet # (Notez le résultat) # ./imcheck -h # ./imcheck # ./imcheck -m anna.rivet # ./mboxutil # ./imsimta TD6 : Administration des boites aux lettres 1. Consultation de l'arborescence d'installation # cd /opt/sun/comms/messaging64 # ls -R 2. Consultation de l'arborescence datas # cd /var/opt/sun/comms/messaging64 # ls -R Repérez l'arborescence de mail de anna.rivet (voir commande hashdir de la page précédente) Observez le contenu d'un mail : # cd /var/opt/sun/comms/messaging64/store/partition/ primary/=user/04/26/=anna%rivet/00 # more 1.msg 3. Consultation des boites aux lettres Liste de boites aux lettres # ./mboxutil -l Liste des boites au lettres de anna.rivet # ./mboxutil -l -p user/anna.rivet/* Liste des dossiers partagés par les utilisateurs # ./imcheck -d lright.db Liste des dossiers souscrits par les utilisateurs # ./imcheck -d subscr.db 4. Corruption d'un dossier Supprimez les fichiers de gestion d'un dossier # cd /var/opt/sun/comms/messaging64/store/.../.../.../../ # rm store* Accédez au dossier par Convergence Constatez le résultat dans le dossier ou les fichiers ont été supprimés Testez la commande reconstruct # cd /opt/sun/comms/messaging54/bin # ./reconstruct # ./reconstruct -help 5. Corruption du store Réalisez une corruption faible du store # cd /var/opt/sun/comms/messaging64/store/mboxlist # rm peruser.db subscr.db Testez la commande mboxutil # cd /opt/sun/comms/messaging64/bin # ./mboxutil -l … Réalisez une corruption forte du store # cd /var/opt/sun/comms/messaging64/store/mboxlist # echo '''' > lright.db # echo '''' > peruser.db Testez la commande mboxutil # cd /opt/comms/messaging/bin # ./mboxutil -l … Redémarrez le serveur et constatez le message d'erreur Consultez le fichier de log default Allez dans le denier répertoire de snapshot (/var/opt/sun/comms/messaging64/store/dbdata/..) , récupérez les deux fichiers supprimés et copiez les dans le dossier mboxlist et redémarrez le serveur. 6. Création d'une nouvelle partition Choisir une partition (dossier) # mkdir /part2 # chown mailsrv:mail /part2 # chmod 700 /part2 Définir la partition # cd /opt/sun/comms/messaging64/bin # ./configutil -o store.partition.part2.path -v /part2 Déplacement d'un utilisateur # ./mboxutil -r user/anna.rivet/INBOX user/anna.rivet/INBOX part2 Testez Convergence avec anna.rivet, observez le dossier /part2 et l'entrée ldap de cet utilisateur Déplacement sur un autre serveur La procédure ne peut être testé dans l'environnement de formation. Elle est décrite à l'URL suivante : http://wikis.sun.com/display/CommSuite/rehostuser 7. Gestion de la suppression des messages Supprimez sur le compte anna.rivet deux messages de la INBOX via Convergence. Restaurez les fichiers marqués comme supprimés # ./mboxutil -R user/anna.rivet/INBOX Testez Réalisez une sauvegarde globale # mkdir /sauvegarde # ./imsbackup -f /sauvegarde/sauve-20091011 / Consultation de la sauvegarde # ./imsrestore -t -f /sauvegarde/sauve-20091011 Restauration de la INBOX # ./imsrestore -n -f /sauvegarde/sauve-20091011 user/anna.rivet/INBOX Envoie d'un message par deliver # ./deliver anna.rivet < 9.msg 8. Modification des quotas Vérifiez les quotas pour anna.rivet # ./imquotacheck -u anna.rivet Modification de l'entrée ldap utilisateur avec : mailquota: 500M Initialisation des nouveaux quotas : # ./iminitquota -u anna.rivet Vérification # ./imquotacheck -u anna.rivet # ./mboxutil -l -p *anna* 9. Suppression des boites aux lettres orphelines Supprimez dans LDAP un utilisateur ayant utilisé la messagerie Supprimez les boites aux lettre de cet utilisateur # ./mboxutil -o # ./mboxutil -o -w /tmp/orphelins.cmd # ./mboxutil -d -f /tmp/orphelins.cmd TD7 : Administration du routage 1. Tests et contrôle des attributs LDAP L'environnement de test et de contrôle consiste à : • • • • • Avoir un terminal d'ouvert avec un tail -f access de l'annuaire LDAP Avoir un terminal d'ouvert avec la commande imsimta test -rewrite prête à être lancer Avoir un terminal d'ouvert avec la commande telnet serveur 25 et telnet serveur 143 prête à être lancer Avoir une session Convergence ouverte pour tester à partir de l'application cliente Avoir Apache Directory Studio connecter en ''cn=Directory Manager' pour pouvoir changer la valeur des attributs LDAP 2. Analyse des logs Modifiez les paramètres logs des différents services en réalisant les opérations suivantes: Dans le fichier de configuration imta.cnf ajouter l'option logging au channel defaults defaults logging notices 1 2 4 7 … Modifier le fichier dispatcher.cnf pour avoir les deux lignes en gras ci-dessous: MAX_IDLE_TIME=600 HISTORICAL_TIME=5 DEBUG=-1 Observez dans le fichier option.dat les valeurs de paramétrage des logs. Retrouvez dans la documentation ces différents paramètres Recompilez et redémarrez les services # cd /opt/comms/messaging/bin # ./imsimta cnbuild # ./imsimta restart Ouvrir en tail -f dans différents terminaux les fichiers de log mail.log_current et dispatcher.log.XXX (le dernier en terme de date) Observer les différents logs en envoyant des messages 3. Test de paramètre du fichier mapppings Le test consiste à, suite aux modifications demandées, recompiler la configuration, redémarrer le mta puis tester avec un telnet sur le port 25 Modification 1 - Commentez la ligne 127.0.0.1 ce qui équivaut à considérer 127.0.0.1 comme une adresse extérieure PORT_ACCESS *|*|*|*|* $C$|INTERNAL_IP;$3|$Y$E * $YEXTERNAL INTERNAL_IP $(10.0.0.2/24) $Y ! 127.0.0.1 $Y * $N Modification 2 – Remplacer dans la table PORT_ACCESS $YEXTERNAL par $N ce qui équivaut à refuser les connexions externes. PORT_ACCESS *|*|*|*|* $C$|INTERNAL_IP;$3|$Y$E * $N INTERNAL_IP $(10.0.0.2/24) $Y 127.0.0.1 $Y * $N