Gestion de serveurs postfix

Postfix est un MTA très souple, qui peut être utilisé de beaucoup de façon différente. Il peut utiliser les données d'un annuaire LDAP pour beaucoup de choses. Dans cet exemple, nous allons configurer deux serveurs postfix:

Le premier sera installé sur un serveur nommé proxy. Il sera chargé d'accepter les mails qui arrivent de l'extérieur, de vérifier que le domaine est bien géré chez nous, que l'adresse du destinataire est valide, il passera le tout à un filtre antispam et antivirus (via amavis), et remettra ensuite le mail à un serveur interne

Le serveur interne sera installé sur un serveur nommé mail. Ce serveur ne sera pas joignable directement depuis l'extérieur. Il remettra les mails à dovecot via le protocole LMTP, pour que dovecot les remette ensuite dans la boite de destination

Installation des plugins

Il faut installer les plugin systems et mail:

yum install fusiondirectory-plugin-systems fusiondirectory-plugin-mail

Configuration OpenLDAP

Il faut charger les schémas mail-fd et mail-fd-conf.

Créez ensuite un compte mail dans la branche DSA, ajoutez quelques indexes, et des ACL à votre serveur OpenLDAP, par exemple

[...] include /etc/openldap/schema/fusiondirectory/mail-fd.schema include /etc/openldap/schema/fusiondirectory/mail-fd-conf.schema [...] index gosaMailAlternateAddress,gosaMailForwardingAddress eq index postfixTransportTable eq index postfixMyDomain,postfixMyDestinations eq [...] access to attrs=gidNumber,homeDirectory,uidNumber by dn=cn=samba,ou=DSA,dc=firewall-services,dc=com ssf=256 write by dn=cn=unix,ou=DSA,dc=firewall-services,dc=com peername.ip="127.0.0.1" read by dn=cn=unix,ou=DSA,dc=firewall-services,dc=com peername.ip="[::1]" read by dn=cn=unix,ou=DSA,dc=firewall-services,dc=com ssf=256 read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="127.0.0.1" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="[::1]" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com ssf=256 read by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="127.0.0.1" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="[::1]" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" ssf=256 write by self read by * none access to attrs=gosaMailQuota,gosaMailServer,gosaMailDeliveryMode,gosaMailAlternateAddress,postfixHeaderSizeLimit,postfixMailboxSizeLimit,postfixMessageSizeLimit,postfixMyDestinations,postfixMyDomain,postfixMyHostname,postfixMyNetworks,postfixRecipientRestrictions,postfixSenderRestrictions,postfixTransportTable by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="127.0.0.1" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="[::1]" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com ssf=256 read by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="127.0.0.1" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="[::1]" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" ssf=256 write by * none access to dn.subtree=ou=servers,ou=systems,dc=firewall-services,dc=com filter=(|(objectClass=fdImapServer)(objectClass=fdPostfixServer)) by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="127.0.0.1" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com peername.ip="[::1]" read by dn=cn=mail,ou=DSA,dc=firewall-services,dc=com ssf=256 read by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="127.0.0.1" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="[::1]" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" ssf=256 write by * none [...]

Configuration dans FusionDirectory

Dans l'interface de FusionDirectory, on ne va déclarer un service postfix que sur le serveur de mail interne. Le serveur proxy utilisera la même configuration.

Configuration du proxy

La p