Installation de paquets supplémentaires
Installation des paquets nécessaires :
apt-get install postfix postgrey dovecot-pop3d
Configuration de postgrey
La configuration par défaut convient bien… donc rien à faire.
Configuration de dovecot
La configuration par défaut convient globalement… mais on veut quand même que le POP3
passe par du SSL, pour cela éditer le fichier /etc/dovecot/conf.d/10-ssl.conf
et y mettre :
ssl = required
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
Je veux aussi stocker les mails dans le répertoire de l’utilisateur. Éditer
/etc/dovecot/conf.d/10-mail.conf
:
mail_location = maildir:~/Maildir
Pour activer SASL, éditer /etc/dovecot/conf.d/10-master.conf
pour y ajouter:
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
}
Il faut générer un certificat autosigné (si vous n’en avez pas un signé) :
openssl req -new -x509 -days 3650 -nodes -out /etc/dovecot/dovecot.pem -keyout /etc/dovecot/private/dovecot.pem
C’est généreux, il est valide une dizaine d’années…
Configuration de postfix
Édition de /etc/postfix/main.cf
:
myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
myhostname = raspi.xael.org
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = raspi.xael.org, raspi, localhost.localdomain, localhost, fl-organisation.com
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
home_mailbox = Maildir/
mailbox_command =
slow_destination_recipient_limit = 10
slow_destination_concurrency_limit = 2
virtual_alias_domains = xael.org
virtual_alias_maps = hash:/etc/postfix/virtual_alias
error_notice_recipient = postmaster@xael.org
# Postgrey
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
check_policy_service inet:127.0.0.1:10023
# Local sender auth
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination check_policy_service inet:127.0.0.1:10023
Ajout à la fin du fichier /etc/postfix/master.cf
:
slow unix - - n - 5 smtp
-o syslog_name=postfix-slow
-o smtp_destination_concurrency_limit=3
-o slow_destination_rate_delay=1
Édition de /etc/aliases
:
postmaster: root
patrick.dupond: pdupond, patrick.dupond@gmail.com
patrice.dupont: pdupont
admin:root
- Les mails adressés à Patrick seront stockés en local dans sa boîte et envoyé vers sa boîte gmail.
- Les mails adressés à Patrice seront uniquement stockés en local.
Ne pas oublier de leur créer des comptes locaux :
adduser pdupond
adduser pdupont
Édition de /etc/postfix/virtual_alias
:
moi@xael.org maboite@gmail.com
liste@xael.org mail1@gmail.com mail2@gmail.com mail3@gmail.com
@xael.org catchall@gmail.com
- Les mails envoyés à moi seront envoyés vers maboite@gmail.com.
- Les mails envoyés à liste seront envoyés à plusieurs destinataires.
- La dernière ligne est un catchall qui récupère tout ce qui n’est pas addressé à un destinataire en particulier.
et compilation par :
postalias /etc/aliases
postmap /etc/postfix/virtual_alias
Et hop, on redémarre tout
service dovecot restart
service postgrey restart
service postfix restart
Pour vérifier que cela fonctionne bien, jetter un œil dans /var/log/mail.log
.
La suite
C’est par là : configuration d’openvpn