Retour tests de Bluemind 3.5 + problèmes de suppression utilisateur...

Bonjour,

Je suis nouveau sur Bluemind. Je teste actuellement cette solution depuis notre plateform Proxmox sur une VM de type KVM, Debian 8.1 (RAM 8Go / 4 CPU). Nous souhaitons effectivement remplacer notre serveur de mail Zarafa.
L’installation de BM c’est bien passée. J’ai pu faire la connexion en SSL avec un serveur LDAP et j’ai pu importer 2 utilisateurs pour tester. Cependant, j’ai utilisé imapcopy dans un premier temps pour migrer les mails vers mon nouveau serveur Bluemind.
J’ai eu des soucis d’import de dossiers et de mails avec imapcopy où j’ai essayé plusieurs options sans succès. J’ai ensuite abandonné imapcopy au profit de imapsync qui m’a permis d’accomplir la migration de la BAL de l’utilisateur en test.

Cependant, un de mes tests avec imapcopy a fait une mauvaise arborescence dans le dossier de stockage Cyrus de mon utilisateur de test (voir ci-dessous):

J’ai essayé de supprimer ce dossier étrange nommé d’un “.” mais il n’était pas visible dans l’arborescence des répertoires du compte depuis mon client Thunderbird.
J’ai donc décidé de supprimer cette arborescence manuellement dans les dossiers:

…et de faire la reconstruction de la boîte avec la commande “reconstruct” de Cyrus.

                  su - cyrus
                  /usr/lib/cyrus/bin/reconstruct -r -f user/monutilisateur@mondomaine.fr

La reconstruction indique les erreurs “failed to read index header” pour certains dossiers mais me refait les dossiers correspondant à l’utilisateur “monutilisateur” dans /var/spool/cyrus/data/mondomaine_fr/domain/c/mondomaine.fr/m/user/ et /var/spool/cyrus/meta/mondomaine_fr/domain/c/mondomaine.fr/m/user/

La BAL fonctionne, mais lorsque je test l’archivage d’un mail, celui-ci ne s’effectue pas !
J’ai l’erreur suivant:

… bref, je me dis tant pis, je vais supprimer complètement l’utilisateur et je vais recréer celui-ci dans Bluemind.
Je sélectionne donc cet utilisateur depuis l’interface de BM et je le supprime. Mais là…j’ai une autre erreur !

            container folders_34226d18-45c6-1036-8c41-890cd20bc1c7 not found

…écrit en rouge au sommet de l’interface. L’utilisateur de test ainsi que sa boîte n’est pas supprimé de Bluemind !

Je pense que ma suppression manuel du dossier nommé “.” dans la structure de Cyrus à généré un problème quelque part et BM refuse de passer outre pour supprimer l’utilisateur.
J’ai donc plusieurs questions suite à mes tests:

1) J’ai tenté de me connecter à cyradm pour vérifier les ACL et tenter de supprimer la BAL depuis là mais je ne sais pas quel est le mot de passe qui est utilisé par BM pour cela.

root@monserveur:/# cyradm -u cyrus localhost
Password: 
IMAP Password: 
               at /usr/share/perl/5.20/Cyrus/IMAP/Admin.pm line 120.
cyradm: cannot authenticate to server with  as cyrus
root@monserveur:/#

J’ai essayé avec le mot de passe de “admin0” et “admin@mondomaine.fr” mais sans succès !

Dans le cas d’une BAL corrompue, il peut être utile de passer par cyradm afin d’effectuer certaines vérifications (ACL, etc)

Quel est le mot de passe utilisé par BM pour cela ?

2) Je ne sais pas quoi faire pour supprimer mon utilisateur ? Est-ce que je peux le faire avec des lignes de commandes ?

3) J’ai remarqué aussi que la modification du mot de passe d’un utilisateur via BM ne le modifie pas dans LDAP. Est-ce que la config LDAP dans BM ne sert qu’à l’importation des comptes et qu’il faut faire les modifications telles que les mots de passes uniquement via LDAP ?

4) Concernant la messagerie instantanée, dans Thunderbird, lorsque l’on clic sur :

      Edit->Preferences->Bluemind->Messagerie instantanée->Configurer           ...rien ne se passe !

Est-ce que cette fonctionnalité n’est pas encore disponible ?

5) Concernant l’archivage et les sauvegardes, j’aimerai pouvoir stocker ceux-ci dans un dossier monter localement sur mon serveur via ISCSI, NFS ou encore CIFS. Je n’ai pas vu dans l’interface la possibilité de spécifier localement ou via d’autres protocoles (SMB, NFS, ISCSI, etc) un dossier d’archivage ou de sauvegarde.

Est-ce que c’est une fonctionnalité qui pourrait-être intégrée à BM et gérée par celui-ci ?
Le problème d’un montage en local non géré par BM c’est que si celui-ci n’est plus disponible (serveur non accessible ou autre), BM va peut-être (et corrigez-moi si je me trompe) refaire directement l’arborescence sur le disque du serveur et stocker les archives ou les sauvegardes localement. On risque alors d’avoir des données sur un serveur et d’autres en local !

Avec mes remerciements et mes meilleures salutations.

Re,

Bon et bien j’ai trouvé un début de réponse pour supprimer la BAL depuis Cyrus.
Si vous cherchez les accès c’est dans “/etc/imapd.conf” et il faut utiliser l’utilisateur en face de l’option “proxy_authname” (pour moi c’est “admin0”) et pour le password c’est indiqué après l’option “proxy_password”.

root@monserveur:/# cyradm --user admin0 localhost
Password: 
localhost> dm user/monutilisateur@mondomaine.fr
localhost> exit
root@monserveur:/#

J’ai ensuite recréé la BAL via Cyrus…

root@monserveur:/# cyradm --user admin0 localhost
Password: 
localhost> cm user/monutilisateur@mondomaine.fr
localhost> exit
root@monserveur:/#

La BAL est bien accessible.
Cependant, lorsque je sélectionne l’utilisateur et que j’essaye de modifier les roles attribués à celui-ci, j’ai un message qui se rapporte aux ACLs qui s’affichent rapidement en rouge au sommet de l’interface !

                  Mailbox container ACL not found mailbox:acls-34226d18-45c6-1036-8c41-890cd20bc1c7

Aussi, lorsque je lance manuellement la tâche “importLDAPjob”, j’ai ce message d’erreur qui s’affiche en référence à mon utilisateur de test

Une autre erreur avec la tâche “ConsolidateMailspoolIndexJob”

Même erreur que ci-dessus avec la tâche “ReconstructMailspoolIndexJob”

J’ai l’impression que l’ID “34226d18-45c6-1036-8c41-890cd20bc1c7” est LE soucis qui empêche mon compte “test” de fonctionner comme il faut et qui bloque notamment l’archivage des mails pour ce compte.

Comment pourrais-je supprimer cet ID ou supprimer complètement mon compte “test” ?

Merci.

Bonjour,

Je reviens avec de nouveaux éléments piochés dans le fichier de logs “/var/log/bm/core.log”. J’ai beaucoup d’erreurs Java concernant plusieurs “container” avec l’identifiant “34226d18-45c6-1036-8c41-890cd20bc1c7”:

Quelqu’un aurai une idée car je ne peux pas supprimer mon utilisateur de test du système Bluemind à cause de ces erreurs Java.
Ça serait vraiment pénalisant si des erreurs Java empêchent de supprimer un utilisateur !
Il y a t’il un moyen de complètement “nettoyer” cet ID du système ?

Merci beaucoup.

Bonjour,

Pouvez-vous exécuter le script suivant en remplaçant les variables au début du script, cela devrait corriger les problèmes de droits.

Il faut installer sur le serveur BM les paquets python-requests et python-bm-client

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import uuid

import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

from netbluemind.domain.api.IDomains import IDomains
from netbluemind.domain.api.Domain import Domain
from netbluemind.user.api.User import User
from netbluemind.user.api.IUser import IUser

from netbluemind.core.api.Email import Email

from netbluemind.server.api.IServer import IServer

from netbluemind.python.client import BMClient
from netbluemind.calendar.api.ICalendar import ICalendar

# begin conf
URL = 'https://localhost/api'
DOMAIN = 'local.lan'
USER_LOGIN = 'test'
# end conf

f = open('/etc/bm/bm-core.tok', 'r')
password = f.readline()
f.close()

client = BMClient(URL, password)
iuser = client.instance(IUser, DOMAIN)
idomain = client.instance(IDomains)

domain = idomain.findByNameOrAliases(DOMAIN)
print domain
u = iuser.byLogin(USER_LOGIN)
if u != None:
  print ("User found")
  iuser.checkAndRepair(u.uid)

print "Done."

Bonjour,

Tout d’abord merci pour votre aide.
J’ai installé les paquets python-requests et python-bm-client puis j’ai adapté votre script à mon domaine. En exécutant celui-ci j’ai une erreur qui s’affiche:

root@monserveur:/opt# ./bm-cleanID 
Traceback (most recent call last):
  File "./bm-cleanID", line 7, in <module>
    from requests.packages.urllib3.exceptions import InsecureRequestWarning
ImportError: cannot import name InsecureRequestWarning
root@monserveur:/opt#

Avez-vous une idée ?
Merci

Re,

J’ai trouvé tout seul pour résoudre le problème d’import du script python mentionné dans le post ci-dessus :wink:
La solution est sur le site STACKOVERFLOW .

Voici ce qu’il faut faire (je rappel que je suis sous Debian 8.1 et que c’est peut-être différent pour d’autres OS):

root@monserveur:/opt# pip uninstall pyopenssl
Uninstalling pyOpenSSL-0.14:
  /usr/lib/python2.7/dist-packages/OpenSSL
  /usr/lib/python2.7/dist-packages/pyOpenSSL-0.14.egg-info
Proceed (y/n)? y
  Successfully uninstalled pyOpenSSL-0.14
root@monserveur:/opt#

Puis…

root@monserveur:/opt# pip install mozdownload
Collecting mozdownload
  Downloading mozdownload-1.21-py2-none-any.whl
Collecting treeherder-client==3.0.0 (from mozdownload)
  Downloading treeherder_client-3.0.0-py2-none-any.whl
Collecting mozinfo>=0.9 (from mozdownload)
  Downloading mozinfo-0.9.tar.gz
Collecting redo==1.5 (from mozdownload)
  Downloading redo-1.5-py2.py3-none-any.whl
Collecting progressbar==2.2 (from mozdownload)
  Downloading progressbar-2.2.tar.gz
Collecting requests==2.9.1 (from mozdownload)
  Downloading requests-2.9.1-py2.py3-none-any.whl (501kB)
    100% |████████████████████████████████| 501kB 2.4MB/s 
Collecting requests-hawk>=1.0.0 (from treeherder-client==3.0.0->mozdownload)
  Downloading requests_hawk-1.0.0-py2.py3-none-any.whl
Collecting mozfile>=0.12 (from mozinfo>=0.9->mozdownload)
  Downloading mozfile-1.2.tar.gz
Collecting mohawk (from requests-hawk>=1.0.0->treeherder-client==3.0.0->mozdownload)
  Downloading mohawk-0.3.3-py2-none-any.whl
Requirement already satisfied: six in /usr/lib/python2.7/dist-packages (from mohawk->requests-hawk>=1.0.0->treeherder-client==3.0.0->mozdownload)
Building wheels for collected packages: mozinfo, progressbar, mozfile
  Running setup.py bdist_wheel for mozinfo ... done
  Stored in directory: /root/.cache/pip/wheels/e1/c6/4e/1b03fc2c512ff3a6ca1017eb8724f9e7ea93825efc9b1fdace
  Running setup.py bdist_wheel for progressbar ... done
  Stored in directory: /root/.cache/pip/wheels/fa/ca/6a/b81cb7cd47ef3826d43a1152662ebbf7f526e8bc8f86d11de5
  Running setup.py bdist_wheel for mozfile ... done
  Stored in directory: /root/.cache/pip/wheels/e8/14/fa/66d0fa61ec10568a714fcd3370d083161a0d5954928d8906a2
Successfully built mozinfo progressbar mozfile
Installing collected packages: mohawk, requests, requests-hawk, treeherder-client, mozfile, mozinfo, redo, progressbar, mozdownload
  Found existing installation: requests 2.4.3
    Uninstalling requests-2.4.3:
      Successfully uninstalled requests-2.4.3
Successfully installed mohawk-0.3.3 mozdownload-1.21 mozfile-1.2 mozinfo-0.9 progressbar-2.2 redo-1.5 requests-2.9.1 requests-hawk-1.0.0 treeherder-client-3.0.0
root@monserveur:/opt#

Et enfin je relance le script fournit par aaujon…

root@monserveur:/opt# ./bm-cleanID 
<netbluemind.core.container.model.ItemValue.ItemValue instance at 0x7f8dcd7a12d8>
User found
Done.
root@monserveur:/opt#

Je vérifie depuis l’interface…et là…cool…je peux supprimer mon utilisateur “test”…plus de problème avec l’ID

UN GRAND MERCI A AAUJON POUR SON SCRIPT !

Ce post peut-être marqué comme [Résolu] …en tout cas pour le problème principale car je n’ai pas eu de retour pour mes 3 autres questions (3 à 5 ci-dessus).

Merci à tous et continuez à partager !

Merci pour le retour,
Pour info un bouton permettant d’exécuter ce script sera disponible dans l’onglet maintenance de la fiche utilisateur dans la version 3.5.2

Bonjour à tous,

C’est une très bonne chose d’intégrer ce bouton pour nettoyer les IDs car je pense que je ne suis pas le seul à avoir eu ce soucis.

Bonne journée

Bonjour à tous,

Pour mes 3 autres questions…quelqu’un aurait une idée ?

Merci d’avance.

Bonjour,

Oui effectivement l’import LDAP sert uniquement à importer les utilisateurs et à valider les mots de passe lors de la connexion, BlueMind n’écrit pas dans le LDAP. Vous pouvez enlever le role ‘manage self password’ aux utilisateurs, ainsi ils n’auront plus l’interface pour modifier leur mot de passe depuis BlueMind

Pouvez-vous créer un nouveau sujet pour ce problème et joindre les logs du connecteur Thunderbird ?

BlueMind stocke les archives sous /var/spool/bm-hsm il est possible de faire n’importe quel type de montage.
Pour le risque d’indisponibilité du serveur de stockage, c’est vrai il vous faut vérifier que le montage soit toujours présent, sinon il vous faudra fusionner les archives sur le disque et sur le serveur en cas de problèmes.

Merci AAUJON pour toutes ces réponses.

  • Concernant Thunderbird je vais effectivement recréer un post sur ce forum concernant le problème dès que j’aurai un moment pour approfondir le sujet. Pour le moment j’ai des choses plus embêtantes avec BlueMind que la fonction messagerie instantanée à voir ( voir cet autre post ).

SUGGESTION: Au sujet des montages est-ce quelqu’un a déjà abordé le sujet auprès des développeurs ?
Ça serait cool que dans une prochaine release, une configuration via l’interface permette d’externaliser sur des partages type CIFS, NFS, SCSI, les sauvegardes et archives. Cela, afin qu’une vérification de leur disponibilité est effectué avant le démarrage des actions d’archivage et de sauvegarde (avec possibilité de mail à l’administrateur en cas d’erreur).

Merci encore.
Bonne journée