frangipane - email (discussion)
Cette page contient des discussions/réflexions à propos de
Email.
Virtual Hosting
On a des comptes mails "virtuels", càd ne correspondant pas tous à un user Unix ; c'est ça, du "Virtual Hosting".
La référence :
Postfix Virtual Domain Hosting Howto.
Pour ce qui est de la gestion centralisée de ces boîtes "virtuelles", y'a un machin nommé
Postfix Admin qui a l'air de faire des trucs chouettes.
L'astuce pour faire cohabiter, sur un même domaine, users Unix & virtuels :
local_recipient_maps = proxy:unix:passwd.byname $alias_maps hash:/var/cache/umm/poivron.org.mailboxes
fallback_transport = virtual:
Des tonnes de HOWTOs :
Quotas des boîtes virtuelles
Vu qu'on va avoir des comptes mails "virtuels", càd ne correspondant pas tous à un user unix, on ne peut pas confier au système de fichiers la gestion des quotas des boîtes mail ; or, d'après le man (
virtual(8)), Postfix ne sait que gérer une taille limite
commune à tous les mails virtuels, avec le variable
virtual_mailbox_limit ; comme nous voulons des quotas définissables boîte par boîte... il nous faut utiliser un système permettant ceci, et supporté par Postfix & par le serveur IMAP...
Côté Postfix, nous utilisons le MDA (mail delivery agent)
maildrop, livré avec courier :
- sait taper dans une base SQL et dans des fichiers plats
- s'interface merveilleusement avec courier-IMAP pour la gestion des quotas (utilise le même fichier
maildirsize pour lire rapidement l'état d'un quota)
Dovecot
En fait, dovecot supporte maintenant les quotas Maildir++, cf
http://wiki.dovecot.org/Quota/Maildir. Il pourrait donc p't'être remplacer courier-imap ; reste toutefois la question du transport local de Postfix.
Le wiki de Dovecot contient un exemple de comment ces deux là peuvent se mettre avec Postgre (
http://wiki.dovecot.org/moin.cgi/DovecotPostgresql).
Postfix
Les "maps"
Par exemple, dans les
virtual_mailbox_maps, vu qu'on utilise mailbox, le 2nd champ est
ignoré, seule compte l'existence (ou pas) de l'adresse dans la map.
Coopération avec libnss-pgsql
TODO Ça implique quoi pour Postfix, que les comptes FTP soient vus comme des comptes
locaux ?
Lorsque local_recipient_maps = proxy:unix:passwd.byname $alias_maps
Avec un user non-root, qu'il puisse lire /etc/nss-pgsql.conf ou non :
$ postmap -q wmblaracine1 proxy:unix:passwd.byname
postmap: warning: connect #1 to subsystem /var/spool/postfix/private/proxymap: Permission denied
Et en root :
$ postmap -q wmblaracine1 proxy:unix:passwd.byname
wmblaracine1:$1$YUTDfrwT$X5TiPsiG2EDkhiSe93Xhy/:3001:3001:wmblaracine1:/var/www/franGiPane/bla.org/racine/:/bin/false
Côté Postfix :
$ mail wmblaracine1
Le transport local dit "unknown user", et bounce.
Lorsque local_recipient_maps = unix:passwd.byname $alias_maps
Avec un user non-root pouvant lire /etc/nss-pgsql.conf :
$ postmap -q wmblaracine1 unix:passwd.byname
wmblaracine1:$1$YUTDfrwT$X5TiPsiG2EDkhiSe93Xhy/:3001:3001:wmblaracine1:/var/www/franGiPane/bla.org/racine/:/bin/false
Avec un user non-root ne pouvant pas lire /etc/nss-pgsql.conf :
$ postmap -q wmblaracine1 unix:passwd.byname
could not open config file /etc/nss-pgsql.conf
Côté Postfix :
$ mail wmblaracine1
Le transport local dit "unknown user", et bounce.
Pourquoi bounce-t-il dans tous les cas ?
/bin/false ?