wiki:MailsVirtuels

Version 5 (modified by xals, 2 years ago) (diff)

--

Cette page décrit les modifications du modèle pour la refonte des boîtes mail virtuelles.

But

Le but est d'arriver à modifier le modèle de données afin qu'il soit plus simple et plus flexible pour la gestion des boîtes mail virtuelles.

Analyse de l'existant

Fonctionnement

AlternC permet de gérer des domaines, puis dans ces domaines on peut avoir des utilisateurs.

Un utilisateur peut représenter une boîte mail hébergée, un alias mail, une liste de diffusion, un compte jabber...

Le modèle actuel comporte XX tables :
domaines : la table des domaines gérés par AlternC
mail_domain : cette table contient à la fois des domaines, et des adresses. Pour les adresses, elle contient l'alias local (remplacement du @ par _), le type (ml, boîte mail), s'il s'agit d'un compte local (pop)
mail_alias : la tables des alias mail. Permet de rediriger le mail vers différentes adresses, ou vers le répertoire de delivery local.

Le modèle actuel est basé sur des alias, par exemple la boîte toto@… est hébergée, voici les alias définis pour elle :

  • toto@…
    • table mail_domain -> toto_example.com
    • table mail_alias -> /var/alternc/mail/t/toto_example.com/Maildir/

Nota : AlternC permet d'avoir un mail qui est à la fois un compte pop, et une redirection vers d'autres adresses.

Modèle

Table domaines

Colonne Type Null Key Default
compte int(10) unsigned NO PRI 0
domaine varchar(64) NO PRI
mx varchar(64) YES NULL
gesdns int(1) NO 1
gesmx int(1) NO 1
noerase tinyint(4) NO 0

Table mail_domain

Colonne Type Null Key Default
mail varchar(255) NO PRI
alias text NO NULL
uid int(10) unsigned NO MUL 0
pop tinyint(4) NO MUL 0
type tinyint(4) NO 0

Table mail_alias

Colonne Type Null Key Default
mail varchar(255) NO PRI
alias varchar(255) NO

Expression de besoin

Mails dans alternc :

  • création/suppression de comptes mail qui peuvent être des comptes locaux, des alias, ou les deux. Les comptes nécessitent un mot de passe, les alias non.
  • on peut renseigner un quota sur les boîtes mails
  • les quota alternc des comptes pop et des redirections doivent être différencié
  • un flag permet de suspendre la boîte mail (actif true/false)
  • on doit pouvoir rattacher à ces "mails" des "propriétés". Certaines de ces propriétés necessitent qu'un mot de passe soit renseigné. Il peux y avoir des quota sur ces propriétés.
    • le mail est aussi un compte jabber
    • (d'autres choses seront possible dans le futur)

Modifications

Différence de fonctionnement

Le chemin absolu ne doit pas apparaître dans les données.

Une table qui définit les domaines : domaines (on garde l'existante)

Une table qui définit les boîtes mail locales : mailboxes

  • nom de la boîte
  • mot de passe
  • relation vers le domaine
  • type (ml, boîte locale)
  • flag actif
  • chemin *relatif* de la boîte mail
  • quota

Une table qui définit les alias : aliases

  • adresse originale
  • alias

Note importante :
UN ALIAS PAR LIGNE dans la table aliases, plus facile à gérer.

Modèle à mettre en place

Table domaines