Forum général.général Dovecot et utilisateurs virtuels

Posté par  .
Étiquettes : aucune
0
29
juin
2006
Salut à tous !

Bon, je lance un appel à l'aide à toute personne qui aurait l'expérience de ce serveur de boite mail.

Je viens de passer une journée à chercher dans tous les sens comment configurer des utilisateurs virtuels, simplement en statique.

Résultat, j'ai maintenant la certitude que je n'y arriverai jamais seul.
La doc de Dovecot est succinte et les retours d'expérience peu nombreux sur le net, ce qui me fait penser que cet excellent soft n'est pas encore très répandu.

Alors voilà, il doit y avoir quelque chose d'essentiel qui m'échappe, sur Dovecot ou la messagerie en général.

J'ai renseigné dans le fichier de conf la ligne suivante :
auth_userdb = passwd static uid=8 gid=8 home=/var/mail/virtual/%d/%u

Je veux donc utiliser comme utilisateurs ceux du système puis ces fameux utilisateurs virtuels.

J'ai donc créé le répertoire :
/var/mail/virtual/<mon_domaine>.fr/toto/
avec les droits qui vont bien (ceux du compte mail).

Quand j'essaye d'ouvrir le compte toto (avec evolution), l'authentification se déroule à priori bien mais j'obtiens très vite "Erreur inconnue, le serveur a fermé la connexion".
Rien en log sur le serveur.

Bref j'ai le sentiment qu'il y a quelque chose de foireux avec le répertoire de l'utilisateur.
Mais que dois-je faire ?

Merci d'avance pour votre aide.
  • # Plus d'informations

    Posté par  (site web personnel) . Évalué à 1.

    Je viens de mettre en production un cluster (>14'000 utilisateurs) Dovecot 1.0beta9 avec des utilisateurs virtuelle qui fonctionne à merveille c'est un excellent serveur POP/IMAP

    Quelle version de Dovecot utilises tu ?

    Peut tu poster tout ton ficher de configuration (sans les commentaires, ligne vide pour gagner de la place) ?

    Quel MTA utilise tu pour la récéption des mails (nous, Postfix) ?

    J'utilise la dernière version beta, on devrait passer en RC1 ce week end sur un partie du cluster. Les utilisateurs sont stocké dans un base de donnée PostgreSQL (on y accéde via un pool de connexion pgpool pour faire du load balancing sur deux serveurs postgres)

    La mailing list officielle est très active mais en anglais.
    • [^] # Re: Plus d'informations

      Posté par  . Évalué à 1.

      J'utilise aussi Dovecot (version dovecot 0.99) sur plusieurs serveurs avec des utilisateurs virtuelle qui fonctionne à merveille c'est un excellent serveur POP/IMAP (je pense la même chose, alors pourquoi changer).

      Les utilisateurs (virtuals) sont stockés dans un base de donnée MySQL (pour des raisons historiques).

      La documentation (http://wiki.dovecot.org/FrontPage?action=show&redirect=P(...) est bien fournie et est à jour (presque trop d'ailleurs car je n'utilise pas la dernière version).
      • [^] # Re: Plus d'informations

        Posté par  . Évalué à 1.

        Je ne veux pas changer et j'adore Dovecot pour tout ce que j'arrive à faire jusqu'à présent (pop, imap, chiffrage md5 et SSL).

        Quand je dis que la doc est succinte, c'est pour mon cas particulier :
        http://wiki.dovecot.org/VirtualUsers

        Avec ça je ne comprends pas quel est le processus par lequel les utilisateurs statiques se montent.

        Je ne souhaite pas utiliser Mysql pour l'usage que je veux en faire.
    • [^] # Re: Plus d'informations

      Posté par  . Évalué à 1.

      La version sur laquelle je veux mettre en place les utilisateurs virutels est la 0.99.14, mais je viens d'essayer sur la version 1.0.beta8 à partir d'un autre serveur et j'ai le même problème.

      J'ai certainement mal compris quelque chose.

      J'utilise également Postfix.

      Mon fichier de config :

      <<
      base_dir = /var/run/dovecot/
      protocols = pop3s imaps
      imap_listen = *:143
      pop3_listen = *
      ssl_cert_file = /etc/ssl/certs/dovecot.pem
      ssl_key_file = /etc/ssl/private/dovecot.pem
      disable_plaintext_auth = yes
      log_path = /var/log/dovecot.log
      log_timestamp = "%b %d %H:%M:%S "
      login_dir = /var/run/dovecot/login
      login_chroot = yes
      login = imap
      login_executable = /usr/lib/dovecot/imap-login
      login_user = dovecot
      login_process_size = 32
      login_process_per_connection = yes
      login_processes_count = 3
      login_max_processes_count = 128
      login_max_logging_users = 256
      login = pop3
      login_executable = /usr/lib/dovecot/pop3-login
      max_mail_processes = 1024
      verbose_proctitle = yes
      first_valid_uid = 8
      last_valid_uid = 0
      first_valid_gid = 1
      last_valid_gid = 0
      mail_extra_groups = mail
      client_workarounds = outlook-idle outlook-pop3-no-nuls
      mailbox_check_interval = 0
      mailbox_idle_check_interval = 30
      mail_full_filesystem_access = no
      mail_max_flag_length = 50
      mail_save_crlf = no
      mail_read_mmaped = no
      maildir_stat_dirs = no
      maildir_copy_with_hardlinks = no
      maildir_check_content_changes = no
      mbox_lock_timeout = 300
      mbox_dotlock_change_timeout = 30
      umask = 0077
      imap_executable = /usr/lib/dovecot/imap
      imap_process_size = 256
      imap_use_modules = no
      imap_modules = /usr/lib/dovecot/imap
      pop3_executable = /usr/lib/dovecot/pop3
      pop3_process_size = 256
      pop3_use_modules = no
      pop3_modules = /usr/lib/dovecot/pop3
      auth = cram-md5
      auth_mechanisms = cram-md5
      auth_realms =
      auth_userdb = passwd static uid=8 gid=8 home=/var/mail/virtual/%d/%u
      auth_passdb = passwd-file /etc/dovecot/cram-md5.pwd
      auth_user = dovecot
      auth_chroot =
      auth_executable = /usr/lib/dovecot/dovecot-auth
      auth_process_size = 256
      auth_count = 1
      auth_username_chars = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@
      >>
      • [^] # Re: Plus d'informations

        Posté par  (site web personnel) . Évalué à 1.

        Premier truc n'utilise pas la version 0.99 elle n'est plus maintenu. Avec les version 1.0beta1-9 ou la RC1, il y une nouvelle structure dans le fichier de configuration.

        Donc aucune correction de bug pour la 0.99 et si tu demandes de l'aide sur la mailing list il te demanderont certainement de mettre à jour vers 1.0 RC1

        Comme c'est toujours plus simple de mettre en place un nouveau fichier de conf avant de mettre en production. Je te conseille de partir direct sur la 1.0

        Maintenant pour ton cas particulier pourquoi ne pas mettre les utilisateurs virtuel dans une DB c'est quand même plus souple ?

        Dans ta config:

        first_valid_uid = 8
        last_valid_uid = 0
        first_valid_gid = 1
        last_valid_gid = 0

        Je te conseille de commencer la numérotation de tes utilisateurs depuis 500 (sur redhat) ou 1000 (sur debian)

        Les UID/GID en dessus peut déjà être utilisé par ta distribution ce qui peut poser des problème de sécurité.

        Autre conseil, fait tourner dovecot-auth avec une utilisateur spéfique (auth_user, ex: dovecot-auth) et utilise un autre utilisateur pour login_user (ex: dovecot-login) de cette manière tu n'as pas besoin de chrooter tes services (login_chroot) et t'a un maximum de sécurité.

        Si je comprends bien ce que tu veux faire, c'est avoir tous tes mails avec le même utilisateur virtuel. Avec le nouveau format du fichier de configuration (version 1.0)

        userdb static {
        args = uid=500 gid=500 home=/var/mail/%d/%u
        }
        passdb passwd-file {
        args = /etc/dovecot/cram-md5.pwd
        }

        Maintenant au niveau sécurité c'est vraiment pas le top, s'il y a un bug dans dovecot-login, tout tes mails sont potentiellement "en danger".

        Pour notre configuration on a choisi un UID/GID par domain, ça permet une certaine souplesse et surtout ça cloisonne mieux les processus.

        Il manque aussi la config du type de boîte au lettre que tu veux utiliser:

        default_mail_env = maildir:/var/mail/%d/%u/

        Dans ce cas tu utilises le format MailDir plus souple que Mbox et surtout comporte presque aucun bug contrairement au Mbox qui peut encore poser des problèmes.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.