[Obm] Installation Roundcube

Dominique Fournier dominique.fournier at grenoble.cnrs.fr
Tue Feb 5 12:52:55 CET 2013


Bonjour

Cela ne fonctionne pas encore. Par rapport à la doc, j'ai changé le 
filtre vérifié par LemonLDAP vers 
'(&(mailBox=$user)(objectClass=person))' car des utilisateurs peuvent 
exister mais sans boîte mail associée. J'ai remis la dernière version de 
ma doc en pièce jointe (avec le déploiement du plugin http_authentication)

Il est à noter qu'un nouveau plugin d'authentification a été fourni 
cette semaine, pour la branche OBMFULL-4198. Il n'utilise pas LemonLDAP 
(ouf !), mais l'authentification de base de OBM.
Je n'ai pas encore réussi à le faire fonctionner (en fait si, une fois, 
mais plus depuis), mais je n'y ai pas passé trop de temps. En effet, une 
mise à jour de la base est indispensable pour utiliser ce nouveau plugin.

J'ai hâte de voir OBM avec ce plugin par défaut et avec Roundcube 
installé par apt-get ! Il reste un certains nombres de bugs associés 
(http://ci-obm.linagora.com/jira/browse/OBMFULL-4198), mais j'espère que 
ceux-ci disparaîtront rapidement.

Merci d'avoir lu la doc !

Bonne journée

Dom

On 05/02/13 11:19, Vince wrote:
> Bonjour Dominique,
>
> J'ai suivi votre procédure (et merci beaucoup de votre partage) afin de
> connecter Roundcube et LemonLDAP mais sans succès.
> Même en modifiant le plugin http_authentication, cela ne marche toujours
> pas.
> Et j'ai bien $rcmail_config['default_host'] = 'localhost';
>
> J'espère que vous, vous y arriverez et que vous nous ferez partager
> votre retour !!!
>
> Cordialement
>
> Vincent.
>
> Le 30/01/2013 11:51, Dominique Fournier a écrit :
>> Bonjour,
>> J'ai un peu avancé :
>> si le plugin de roundcube http_authentication est modifié pour
>> utiliser HTTP_AUTH_USER à la place de PHP_AUTH_USER, le bon
>> utilisateur est envoyé à Roundcube, avec le mot de passe (je les vois
>> en mettant une trace de debug) mais l'authentification ne fonctionne
>> toujours pas.
>> Pour y arriver, il faut paramètrer Roundcube avec
>> $rcmail_config['default_host'] = 'localhost';
>>
>> Grrrrr !! Ce n'est pas marqué dans la doc !
>>
>> De plus ma question précédente est toujours valide :
>> - Une fois que LemonLDAP est actif, comment peut-on définir des
>> domaines puisque global.virt n'existe pas dans l'annuaire ?
>>
>> Merci beaucoup
>>
>> Dom
>>
>> On 29/01/13 16:48, Dominique Fournier wrote:
>>> Re - bonjour
>>>
>>> Vous trouverez en pièce jointe la procédure d'installation complète de
>>> OBM pour squeeze
>>> J'ai deux questions :
>>> - Une fois que LemonLDAP est actif, comment peut-on définir des domaines
>>> puisque global.virt n'existe pas dans l'annuaire ?
>>> - Il y a une erreur de configuration dans la doc de LemonLDAP car
>>> http_authentication reçoit l'UID sans le domaine, ce qui empêche les
>>> connexions.
>>>
>>> J'ai adapté la configuration de LemonLDAP pour ajouter la recherche sur
>>> le champ mail et pas sur le champ UID (sinon on n'a pas le support de
>>> multi-domaine).
>>>
>>> Avez-vous des idées ?
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Obm mailing list
>> Obm at list.obm.org
>> http://list.obm.org/mailman/listinfo/obm
>
>   * Français - détecté
>   * Français
>
>   * Français
>
> <javascript:void(0);><#>
>
>
> _______________________________________________
> Obm mailing list
> Obm at list.obm.org
> http://list.obm.org/mailman/listinfo/obm
>

-------------- next part --------------
Installation de OBM FULL

Partir de Debian Squeeze de base
Editer /etc/apt/sources.list et ajouter à chaque ligne 
  "non-free contrib"
Editer /etc/apt/sources.list.d/obm.list et ajouter :
  deb http://deb.obm.org/24/stable obm obm
Editer /etc/apt/sources.list.d/backports.list et ajouter :
  deb http://backports.debian.org/debian-backports squeeze-backports main
Editer /etc/apt/sources.list.d/lemonldap-ng.list
  deb http://lemonldap-ng.org/deb squeeze main
  deb-src http://lemonldap-ng.org/deb squeeze main
Ajouter la clé OBM :
  wget -q  http://deb.obm.org/obmgpg.pub -O - | apt-key  add -
Ajouter la clé Lemon-LDAP : 
  wget -q http://lemonldap-ng.org/_media/rpm-gpg-key-ow2 -O - | apt-key  add -
  apt-get update
Il ne doit pas y avoir d'erreur

Définir dans le DNS les machines :
auth.domaine.tld, manager.domaine.tld , reload.domaine.tld et obm.domaine.tld

== INSTALLATION DE OBM ==
  apt-get install obm-full
Répondre aux questions
  external url for OBM : obm.domaine.tld
  LDAP server : 127.0.0.1
  OBM database server : PGSQL
  IP OBM database server : 127.0.0.1
  OBM database name : obm
  OBM username : obm
  OBM user password : xxxxx
  OBM user password verify : xxxxx
  IP munin-node-master : 127.0.0.1
  admin LDAP password : yyyy
  admin LDAP password confirm : yyyy
  proxy : [vide]  
  SARE : Yes
  OBM VirtualHost : Yes
  OBM Tomcat : 127.0.0.1
  IP O-Push : 127.0.0.1
Valider la licence Sun Java
Un mail d'erreur arrive signalant que la base est injoignable : on l'ignore
Répondre aux questions
  OBM-Storage avec dbconfig-common : Yes

Correction de munin-master :
  mkdir /var/www/munin ; chown munin:munin /var/www/munin

Se connecter la première fois pour créer le compte d'administration
Annuaire / Hôtes : Nouveau 
   Nom : local / Adresse IP : 127.0.0.1 / Nom complet de la machine : local.global.virt
   Tout cocher sauf FTP de sauvegarde
Administration / Domaines : Nouveau
  Label : domaine.tld / Nom de domaine : domaine.tld
  Selectionner de partout le serveur local sauf sur FTP de dépot
Annuaire / utilisateurs : Nouveau
  Remplir les champs avec le domaine global.virt et en profil Admin

== INSTALLATION DE ROUNDCUBE ==
  apt-get -t squeeze-backports install roundcube roundcube-plugins
  apt-get install php-mdb2-driver-pgsql unzip
Répondre aux questions :
  Database Roundcube avec dbconfig-common : Yes
  Database Type : pgsql
  Password : zzzzz
  Password confirmation : zzzzz

Editer le fichier /etc/apache2/sites-available/obm.conf et ajouter dans le VirtualHost: 
  # Ajouter le Webmail
  Alias /webmail /usr/share/roundcube
    <Directory /usr/share/roundcube>
        Options +Indexes Includes FollowSymlinks
        Order Allow,Deny
        Allow from All
        PerlHeaderParserHandler My::Package->unprotect
        DirectoryIndex index.pl index.php
    </Directory>
Modifier la ligne :
php_value include_path  ".:/usr/share/obm/www:/usr/share/php"
service apache2 reload

Installation des plugins Roundcube
  wget https://www.std-soft.de/roundcube/plugins/logout_redirect_rc0.5_v1.2-MN.tar.gz -O /tmp/logout_redirect.tgz
  cd /tmp ; tar xzf /tmp/logout_redirect.tgz
  mv /tmp/logout_redirect/ /usr/share/roundcube/plugins
  mkdir -p /etc/roundcube/plugins/logout_redirect/config
  mv /usr/share/roundcube/plugins/logout_redirect/config/config.inc.php.dist /etc/roundcube/plugins/logout_redirect/config/config.inc.php
  ln -s /etc/roundcube/plugins/logout_redirect/config/config.inc.php /usr/share/roundcube/plugins/logout_redirect/config/config.inc.php
  ln -s /usr/share/roundcube/plugins/logout_redirect /var/lib/roundcube/plugins/logout_redirect
Editer /etc/roundcube/plugins/logout_redirect/config/config.inc.php et paramétrer :
  $rcmail_config['logout_redirect_url'] = 'https://obm.%d/'; // %d ~ users domain part  

  wget http://www.obm.org/lib/exe/fetch.php?media=downloads:roundcube-plugin.tar.gz -O /tmp/obm-roundcube-plugin.tar.gz
  cd /tmp ; tar xzf /tmp/obm-roundcube-plugin.tar.gz
  mv roundcube/plugins/obm_addressbook/ /usr/share/roundcube/plugins/
  mv roundcube/skins/OBM/ /usr/share/roundcube/skins/
  mkdir /etc/roundcube/plugins/obm_addressbook
  mv /usr/share/roundcube/plugins/obm_addressbook/config.inc.php /etc/roundcube/plugins/obm_addressbook/
  ln -s /etc/roundcube/plugins/obm_addressbook/config.inc.php /usr/share/roundcube/plugins/obm_addressbook/config.inc.php
  ln -s /usr/share/roundcube/plugins/obm_addressbook /var/lib/roundcube/plugins/obm_addressbook
Créer le fichier /tmp/obm_addressbook.patch contenant :
--- obm_addressbook/obm_addressbook_backend.php.ori	2013-01-30 12:27:02.963896557 +0100
+++ obm_addressbook/obm_addressbook_backend.php	2013-01-30 12:26:25.391357124 +0100
@@ -21,6 +21,10 @@
     $this->uid = $uid;
   }
 
+  public function get_name () {
+    $this->name = $name;
+  }
+
   public function set_search_set($filter) {
     $this->filter = $filter;
   }
  
  cd /usr/share/roundcube/plugins/ ; patch -p1 -s -N -E < /tmp/obm_addressbook.patch
Editer /etc/roundcube/plugins/obm_addressbook/config.inc.php [PARAMETRES A CONFIRMER]
  $rcmail_config['OBM_locator'] = "127.0.0.1:8084";
  $rcmail_config['obmSyncIp'] = "127.0.0.1";
  $rcmail_config['OBM_url'] = "https";
  $rcmail_config['OBM_SYNC_port'] = "";
  $rcmail_config['OBM_domain'] = '%d';
  $rcmail_config['OBMaddressbook_readonly'] = true;
  $rcmail_config['OBMaddressbook_name'] = 'Contacts Partag&eacute;s';
  $rcmail_config['OBMaddressbook_autocomplete'] = true;
  $rcmail_config['obmAuthType'] = "standalone";

  wget http://www.schwarz.de/remository/func-download/130/chk,169756b0667def93f5fb2c7d6fee8463/no_html,1/ -O /tmp/fileapi_attachments.zip
  cd /tmp ; unzip fileapi_attachments.zip
  mkdir /usr/share/roundcube/plugins/fileapi_attachments
  mv fileapi.js fileapi_attachments.php readme.md /usr/share/roundcube/plugins/fileapi_attachments/
  ln -s /usr/share/roundcube/plugins/fileapi_attachments /var/lib/roundcube/plugins/fileapi_attachments
  TODO : Ajouter les plugins "Compose New Window : Thunderbird like" et "Rcplugin checkbox : Thunderbird like"

Créer le plugin obmhttp_authentication à partir de http_authentication :
  cp -pr /usr/share/roundcube/plugins/http_authentication/ /usr/share/roundcube/plugins/obmhttp_authentication/
  mv /usr/share/roundcube/plugins/obmhttp_authentication/http_authentication.php /usr/share/roundcube/plugins/obmhttp_authentication/obmhttp_authentication.php
  sed -i 's/PHP_AUTH_USER/HTTP_AUTH_USER/g' /usr/share/roundcube/plugins/obmhttp_authentication/obmhttp_authentication.php
  sed -i 's/http_authentication/obmhttp_authentication/g' /usr/share/roundcube/plugins/obmhttp_authentication/obmhttp_authentication.php
  ln -s /usr/share/roundcube/plugins/obmhttp_authentication  /var/lib/roundcube/plugins/obmhttp_authentication

cp /usr/share/roundcube/plugins/managesieve/config.inc.php.dist /etc/roundcube/plugins/managesieve/config.inc.php
Editer /etc/roundcube/plugins/managesieve/config.inc.php [PARAMETRES A CONFIRMER]
  $rcmail_config['managesieve_port'] = 4190;
  $rcmail_config['managesieve_host'] = 'localhost';
  $rcmail_config['managesieve_auth_type'] = null;
  $rcmail_config['managesieve_auth_cid'] = null;
  $rcmail_config['managesieve_auth_pw'] = null;
  $rcmail_config['managesieve_usetls'] = false;
  $rcmail_config['managesieve_default'] = '/etc/dovecot/sieve/global'; <<<<---- DOVECOT !!!??? CYRUS !
  $rcmail_config['managesieve_script_name'] = 'managesieve';
  $rcmail_config['managesieve_mbox_encoding'] = 'UTF-8';
  $rcmail_config['managesieve_replace_delimiter'] = '';
  $rcmail_config['managesieve_disabled_extensions'] = array();
  $rcmail_config['managesieve_debug'] = false;
  $rcmail_config['managesieve_kolab_master'] = false;
  $rcmail_config['managesieve_filename_extension'] = '.sieve';
  $rcmail_config['managesieve_filename_exceptions'] = array();

Editer /etc/roundcube/main.inc.php et ajouter les plugins et la skin
  $rcmail_config['plugins'] = array("fileapi_attachments","obmhttp_authentication","obm_addressbook","managesieve","logout_redirect");
  $rcmail_config['skin'] = 'OBM';
  $rcmail_config['default_host'] = 'localhost'; 

== INSTALLATION DE LEMON-LDAP ==
Documentation : http://lemonldap-ng.org/documentation/latest/applications/obm
  apt-get install lemonldap-ng
  sed -i 's/example\.com/mondomaine.com/g' /etc/lemonldap-ng/* /var/lib/lemonldap-ng/conf/lmConf-1 /var/lib/lemonldap-ng/test/index.pl

Configuration de Apache2 :
  a2ensite default
 Editer /etc/apache2/sites-enabled/000-default et ajouter dans la section VirtualHost :
     Options +FollowSymLinks
     RewriteEngine On
     RewriteCond %{HTTP_HOST} ^manager\.mondomaine\.com$
     RewriteRule . https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
     RewriteCond %{HTTP_HOST} ^auth\.mondomaine\.com$
     RewriteRule . https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
     RewriteCond %{HTTP_HOST} mondomaine\.com$
     RewriteRule . https://obm.mondomaine.com%{REQUEST_URI} [L,R=301]
     RewriteCond %{HTTP_HOST} !^localhost$
     RewriteCond %{HTTP_HOST} !^127.0.0.1$
     RewriteCond %{HTTPS} !=on
     RewriteRule . https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

 Editer /etc/apache2/sites-enabled/obm.conf et ajouter dans la section VirtualHost :
    PerlOptions +GlobalRequest
    PerlRequire /var/lib/lemonldap-ng/handler/MyHandler.pm
    PerlHeaderParserHandler My::Package
 Commenter avec un dièse en début de ligne :
ProxyPass /obm-sync http://localhost:8080/obm-sync
ProxyPassReverse /obm-sync http://localhost:8080/obm-sync
ProxyPass /funambol http://localhost:8080/funambol
ProxyPassReverse /funambol http://localhost:8080/funambol
<Location /minig>
ProxyPass ajp://localhost:8009/minig
</Location>
ProxyPass /Microsoft-Server-ActiveSync http://localhost:8082/Microsoft-Server-ActiveSync
ProxyPassReverse /Microsoft-Server-ActiveSync http://localhost:8082/Microsoft-Server-ActiveSync
<IfModule mod_rewrite.c>
    <IfModule mod_ssl.c>
        RewriteEngine On
        RewriteCond %{HTTPS} !=on
        RewriteRule . https://%{SERVER_NAME}%{REQUEST_URI} [L]
    </IfModule>
</IfModule>

Ajouter dans la section VirtualHost :
    <Location /obm-sync>
        Order Allow,Deny
        Allow from All
        ProxyPass http://127.0.0.1:8080/obm-sync
        ProxyPassReverse http://127.0.0.1:8080/obm-sync
        PerlHeaderParserHandler My::Package->unprotect
    </Location>

    <Location /funambol>
        Order Allow,Deny
        Allow from All
        ProxyPass http://127.0.0.1:8080/funambol
        ProxyPassReverse http://127.0.0.1:8080/funambol
        PerlHeaderParserHandler My::Package->unprotect
    </Location>

    <Location /Microsoft-Server-ActiveSync>
        Order Allow,Deny
        Allow from All
        ProxyPass http://127.0.0.1:8082/Microsoft-Server-ActiveSync
        ProxyPassReverse http://127.0.0.1:8082/Microsoft-Server-ActiveSync
        PerlHeaderParserHandler My::Package->unprotect
    </Location>

    <Location /images>
        Order Allow,Deny
        Allow from All
        PerlHeaderParserHandler My::Package->unprotect
    </Location>

    <Location /sso>
        Order Allow,Deny
        Allow from All
        PerlHeaderParserHandler My::Package->unprotect
    </Location>                                              

#_LEMON_BEGIN_

## Rewrite rules ##

RewriteEngine On
RewriteCond %{HTTP_HOST} ^manager\.mondomaine\.com$
RewriteRule . https://obm.mondomaine.com/sso/manager%{REQUEST_URL} [L,R=301]
RewriteCond %{HTTP_HOST} ^auth\.mondomaine\.com$
RewriteRule . https://obm.mondomaine.com/sso/portal%{REQUEST_URL} [L,R=301]

## Prise en charge des fichiers Perl ##

<Files *.pl>
    SetHandler perl-script
    PerlResponseHandler ModPerl::Registry
</Files>

## Directory index ##

<IfModule mod_dir.c>
    DirectoryIndex index.pl index.html
</IfModule>


## Configuration portail ##

Alias /sso/portal /var/lib/lemonldap-ng/portal/
<Directory /var/lib/lemonldap-ng/portal/>
    Order allow,deny
    Allow from all
    Options +ExecCGI Includes FollowSymlinks
    PerlHeaderParserHandler My::Package->unprotect
</Directory>
<Location /sso/portal>
    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript text/css
        SetOutputFilter DEFLATE
        BrowserMatch ^Mozilla/4 gzip-only-text/html
        BrowserMatch ^Mozilla/4\.0[678] no-gzip
        BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
        SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
    </IfModule>
    <IfModule mod_headers.c>
        Header append Vary User-Agent env=!dont-vary
    </IfModule>
</Location>
<Location /sso/portal/skins/>
    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresDefault "access plus 1 month"
    </IfModule>
</Location>

# SOAP functions for configuration access (disabled by default)
<Location /sso/portal/index.pl/config>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/8
</Location>

<Perl>
    require Lemonldap::NG::Portal::SharedConf;
    Lemonldap::NG::Portal::SharedConf->compile(
    qw(delete header cache read_from_client cookie redirect unescapeHTML));
    # Uncomment this line if you use Lemonldap::NG menu
    require Lemonldap::NG::Portal::Menu;
    # Uncomment this line if you use portal SOAP capabilities
    #require SOAP::Lite;
</Perl>

## Configuration manager ##

Alias /sso/manager /var/lib/lemonldap-ng/manager/
<Directory /var/lib/lemonldap-ng/manager>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/8
    #Order allow,deny
    #Allow from all
    Options +ExecCGI
    PerlHeaderParserHandler My::Package->unprotect
</Directory>

# Alias vers la documentation pour RedHat / CentOS

#Alias /doc /var/lib/lemonldap-ng/doc/
#<Directory /var/lib/lemonldap-ng/doc>

# Alias vers la documentation pour Debian Lenny

Alias /doc/css /usr/share/doc/lemonldap-ng-doc/css/
Alias /doc /usr/share/doc/lemonldap-ng-doc/
<Directory /usr/share/doc/lemonldap-ng-doc>

# Partie commune aux deux distributions

    Order allow,deny
    Allow from all
    Options +ExecCGI
   PerlHeaderParserHandler My::Package->unprotect
</Directory>

Alias /lib /usr/share/doc/lemonldap-ng-doc/lib/
<Directory /usr/share/doc/lemonldap-ng-doc/lib>
    Order allow,deny
    Allow from all
    Options +ExecCGI
    PerlHeaderParserHandler My::Package->unprotect
</Directory>

Alias /javascript /usr/share/javascript/
<Directory /usr/share/javascript>
    Order allow,deny
    Allow from all
    PerlHeaderParserHandler My::Package->unprotect
</Directory>

## Configuration handler ##

<Location /reload>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/8
    PerlHeaderParserHandler My::Package->refresh
</Location>

#_LEMON_END_

Adapter les lignes contenant mondomaine
Ajouter dans la section <Directory /var/lib/lemonldap-ng/manager>, l'IP du réseau de management
Ajouter dans la section <Location /reload>, l'IP du réseau de management
  
Redémarrer Apache2

Editer  /etc/obm/obm_conf.inc  et ajouter les lignes :
$auth_kind = 'LemonLDAP';

$lemonldap_config = Array(
                "auto_update"           => false,
                "auto_update_force_user" => true,
                "auto_update_force_group" => true,
                "url_logout"            => "https://obm.mondomaine.com/logout",      <<<<<<<<<<---- CHANGER !!!
                "server_ip_address"     => "localhost",
                "server_ip_check"       => false,
                "debug_level"           => "debug",
//                "debug_header_name"     => "HTTP_OBM_UID",
//                "group_header_name"     => "HTTP_OBM_GROUPS",
                "headers_map"           => Array(
                        //"userobm_gid"                   => "HTTP_OBM_GID",
                        //"userobm_domain_id"           => ,
                        "userobm_login"                 => "HTTP_AUTH_USER",
                        //"userobm_password"              => "HTTP_OBM_USERPASSWORD",
                        //"userobm_password_type"       => ,
                        //"userobm_perms"                 => "HTTP_OBM_PERMS",
                        //"userobm_kind"                => ,
                        //"userobm_lastname"              => "HTTP_OBM_SN",
                        //"userobm_firstname"             => "HTTP_OBM_GIVENNAME",
                        //"userobm_title"                 => "HTTP_OBM_TITLE",
                        //"userobm_email"                 => "HTTP_OBM_MAIL",
                        //"userobm_datebegin"             => "HTTP_OBM_DATEBEGIN",
                        //"userobm_account_dateexp"     => ,
                        //"userobm_delegation_target"   => ,
                        //"userobm_delegation"          => ,
                        //"userobm_description"           => "HTTP_OBM_DESCRIPTION",
                        //"userobm_archive"             => ,
                        //"userobm_hidden"              => ,
                        //"userobm_status"              => ,
                        //"userobm_local"               => ,
                        //"userobm_photo_id"            => ,
                        //"userobm_phone"                 => "HTTP_OBM_TELEPHONENUMBER",
                        //"userobom_phone2"             => ,
                        //"userobm_mobile"              => ,
                        //"userobm_fax"                   => "HTTP_OBM_FACSIMILETELEPHONENUMBER",
                        //"userobm_fax2"                => ,
                        //"userobm_company"               => "HTTP_OBM_O",
                        //"userobm_direction"           => ,
                        //"userobm_service"               => "HTTP_OBM_OU",
                        //"userobm_address1"              => "HTTP_OBM_POSTALADDRESS",
                        //"userobm_address2"            => ,
                        //"userobm_address3"            => ,
                        //"userobm_zipcode"               => "HTTP_OBM_POSTALCODE",
                        //"userobm_town"                  => "HTTP_OBM_L",
                        //"userobm_zipcode"               => "HTTP_OBM_POSTALCODE",
                        //"userobm_town"                  => "HTTP_OBM_L",
                        //"userobm_expresspostal"       => ,
                        //"userobm_host_id"             => ,
                        //"userobm_web_perms"           => ,
                        //"userobm_web_list"            => ,
                        //"userobm_web_all"             => ,
                        //"userobm_mail_perms"          => ,
                        //"userobm_mail_ext_perms"      => ,
                        //"userobm_mail_server_id"      => ,
                        //"userobm_mail_server_hostname" => ,
                        //"userobm_mail_quota"            => "HTTP_OBM_MAILQUOTA",
                        //"userobm_nomade_perms"        => ,
                        //"userobm_nomade_enable"       => ,
                        //"userobm_nomade_local_copy"   => ,
                        //"userobm_email_nomade"        => ,
                        //"userobm_vacation_enable"     => ,
                        //"userobm_vacation_datebegin"  => ,
                        //"userobm_vacation_dateend"    => ,
                        //"userobm_vacation_message"    => ,
                        //"userobm_samba_perms"         => ,
                        //"userobm_samba_home"          => ,
                        //"userobm_samba_home_drive"    => ,
                        //"userobm_samba_logon_script"  => ,
                        // ---- Unused values ? ----
                        //"userobm_ext_id"                => "HTTP_OBM_SERIALNUMBER",
                        //"userobm_system"              => ,
                        //"userobm_nomade_datebegin"    => ,
                        //"userobm_nomade_dateend"      => ,
                        //"userobm_location"            => ,
                        //"userobm_education"           => ,
                        ),
        );

Editer le fichier /etc/lemonldap-ng/lemonldap-ng.ini et dans la section [manager],
mettre un point-virgule devant la ligne protection

Ensuite on paramètre le manager :  https://yourdomain.com/sso/manager
[Commentaire : Pourquoi ce n'est pas directement fait par le fichier !!! :-(]
1) Paramètres Généraux ? Portail
URL : https://obm.mondomaine.com/sso/portal/ puis Appliquer (Bien mettre le / final !!)
Menu -> Modules -> Changement de mot de passe : désactivé puis Appliquer
Menu -> Catégories et applications : Supprimer toutes les catégories
Menu -> Catégories et applications : Nouvelle Catégorie - identifiant de la catégorie : 1OBM - nom à afficher : OBM puis Appliquer
Menu -> Catégories et applications -> 1OBM : Nouvelle application - identifiant de l'application : 11OBM - nom à afficher : OBM - adresse : https://obm.mondomaine.com - logo : bookmark.png (étoile) - Description : Calendrier et contacts - Mode d'affichage : Automatic et Appliquer
Menu -> Catégories et applications -> 1OBM : Nouvelle application - identifiant de l'application : 12WEBMAIL - nom à afficher : Webmail - adresse : https://obm.mondomaine.com/webmail - logo : mailappt.png (envellope) - Description : Accès aux mails - Mode d'affichage : Automatic et Appliquer
Personnalisation -> Réinitialisation de mot de passe : désactivé
Personnalisation -> Autocomplétion : activé
Personnalisation -> Protection anti-frame : désactivé

2) Paramètres Généraux ? Modules d'authentification
Module d'authentification : LDAP puis Appliquer
Module d'utilisateurs : LDAP puis Appliquer
Module de mot de passe : LDAP puis Appliquer
Paramètres LDAP -> Connexion -> Hôte : spécifier l'hôte ou l'ip du serveur ldap (localhost ?) puis Appliquer
Paramètres LDAP -> Connexion -> Port : spécifier le port puis Appliquer
Paramètres LDAP -> Connexion -> Base de recherche des utilisateurs : même paramètre que dans le script obm-admin (dc=local) puis Appliquer 
Paramètres LDAP -> Filtres -> Filtre par défaut : (&(mailBox=$user)(objectClass=person))

3) Paramètres Généraux ? Cookies
Domaine : mondomaine.com et Appliquer
Cookie sécurisé (SSL) : Cookie sécurisé (HTTPS)

4) Paramètres Généraux ? Sessions
Stocke le mot de passe de l'utilisateur en session : Activé
Délai d'expiration des sessions : 15 min

5) Paramètres Généraux ? Mise à jour de la configuration
Effacer la clef
Nouvelle clef : obm.mondomaine.com - https://obm.mondomaine.com/reload

6) Paramètres Généraux ? Paramètres avancés
Transfert de déconnexion : Nouvelle Clef - OBM - https://obm.mondomaine.com/obm.php?action=logout et Appliquer
Transfert de déconnexion : Nouvelle Clef - Roundcube - https://obm.mondomaine.com/webmail/?_task=logout et Appliquer

7) Variables
Attributs à exporter : Effacer les clefs mail et cn (reste uid)
Attributs à exporter -> Nouvelle clef : obmDomain  -  obmDomain et Appliquer  # seulement en cas de multi-domaines
Attributs à exporter -> Nouvelle clef : login  -  login et Appliquer  # seulement en cas de multi-domaines
Macros : Supprimer la macro par défaut
Macros -> Nouvelle clef : login  -  "$uid\@$obmDomain" et Appliquer  # seulement en cas de multi-domaines
Macros -> Nouvelle clef : uidR  -  ($uid =~ /^admin0/i)[0] ? "admin0\@global.virt" : $uid  et Appliquer  # seulement en cas de multi-domaines

8) Hôtes virtuels
Supprimer les hôtes par défaut (test1 et test2)
Nouvel hôte virtuel : obm.mondomaine.com et Appliquer

9) Hôtes virtuels ? Règles
Editer la règles par defaut (default) : Remplacer deny par accept puis Appliquer
Nouvelle règle : commentaire : logout - Règle : logout_sso https://obm.mondomaine.com/sso/portal/?logout=1 - Expression : ^/logout puis Appliquer
Nouvelle règle : commentaire : unprotect_obm - Règle : unprotect - Expression : ^/obm.php?action=logout puis Appliquer
Nouvelle règle : commentaire : unprotect_roundcube - Règle : unprotect - Expression : ^/webmail/?_task=logout puis Appliquer

10) Hôtes virtuels ? En-têtes HTTP
Editer la clef Auth-User : Remplacer $uid par $login et Appliquer
Nouvelle Clef : Authorization - "Basic ".encode_base64("$uid:$_password") et Appliquer

11) Hôtes virtuels ? Options
HTTPS : activé

12) Sauvegarde de la configuration
Cliquer sur sauver

-------------- next part --------------
A non-text attachment was scrubbed...
Name: dominique_fournier.vcf
Type: text/x-vcard
Size: 174 bytes
Desc: not available
Url : http://list.obm.org/pipermail/obm/attachments/20130205/d5e989f9/attachment.vcf 


More information about the Obm mailing list