• Serveurs
  • [Discussion] Installation automatisée d'un serveur de mail sous Debian

Peux-tu me donner le contenu des fichiers suivants :
- /etc/postfix/main.cf
- /etc/postfix/master.cf
- /etc/aliases
Merci de ta réponse !

/etc/postfix/main.cf
# Règles sur les adresses de destination                                                                             
# permit_sasl_authenticated : Accepter la connexion lorsque le client est authentifié                                
# reject_non_fqdn_recipient : Refuser les adresses de destinations invalides (non FQDN)                              
smtpd_recipient_restrictions =                                                                                       
        permit_mynetworks,                                                                                           
        permit_sasl_authenticated,                                                                                   
        reject_non_fqdn_recipient,                                                                                   
        reject_unauth_destination,                                                                                   
        reject_unknown_recipient_domain                                                                              
                                                                                                                     
# Règles sur l'échange HELO qui survient avant la connexion                                                          
# reject_invalid_helo_hostname : Refuser les échanges HELO invalides                                                 
# reject_non_fqdn_helo_hostname : Refuser les noms d'hôte invalides (non FQDN)                                       
# reject_unknown_helo_hostname : Refuser les noms d'hôte qui n'ont pas de champ DNS A ou MX dans leurs DNS.          
        smtpd_helo_restrictions =                                                                                    
        permit_mynetworks,                                                                                           
        permit_sasl_authenticated,                                                                                   
        reject_invalid_helo_hostname,                                                                                
        reject_non_fqdn_helo_hostname,                                                                               
        reject_unknown_helo_hostname                                                                                 
                                                                                                                     
# Règles de connexion des clients                                                                                    
# permit_sasl_authenticated : Accepter la connexion lorsque le client est authentifié                                
# reject_plaintext_session : Refuser les connexions non sécurisées                                                   
# reject_unauth_pipelining : Refuser les défauts lors de la connexion                                                
smtpd_client_restrictions =                                                                                          
        permit_mynetworks,                                                                                           
        permit_inet_interfaces,                                                                                      
        permit_sasl_authenticated,                                                                                   
        # reject_plaintext_session,                                                                                  
        # reject_unauth_pipelining                                                                                   
                                                                                                                     
# Règles sur les expéditeurs                                                                                         
# reject_non_fqdn_sender : Refuser les expéditeurs invalides (non FQDN)                                              
# reject_unknown_sender_domain : Refuser les expéditeurs qui n'ont pas de champ DNS A ou MX dans leurs DNS.          
smtpd_sender_restrictions =                                                                                          
        reject_non_fqdn_sender,                                                                                      
        reject_unknown_sender_domain                                                                                 
                                                                                                                     
# TLS                                                                                                                
smtpd_tls_auth_only = no                                                                                             
smtpd_tls_security_level = may                                                                                       
                                                                                                                     
# Paramètres de connexion SASL                                                                                       
# C'est ici que l'on déclare Dovecot comme une passerelle pour authentifier les utilisateurs.                        
# Postfix peut s'appuyer sur Dovecot pour identifier les connexions SMTP.                                            
smtpd_sasl_auth_enable = yes                                                                                         
smtpd_sasl_type = dovecot                                                                                            
smtpd_sasl_path = private/auth                                                                                       
smtpd_sasl_security_options = noanonymous                                                                            
smtpd_sasl_tls_security_options = $smtpd_sasl_security_options                                                       
smtpd_sasl_local_domain = $mydomain                                                                                  
smtpd_sasl_authenticated_header = yes

# Chemin vers votre certficat SSL                                                                          
smtpd_tls_cert_file = /etc/ssl/certs/server.crt                                                            
smtpd_tls_key_file = /etc/ssl/private/server.key                                                           
                                                                                                           
# vmail User                                                                                               
virtual_uid_maps = static:5000                                                                             
virtual_gid_maps = static:5000                                  
virtual_mailbox_base = /var/mail
                                                                                                           
# Comment se connecter pour récupérer les informations de la BDD                                           
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf                              
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf                                    
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf    

# Ou envoyer les email recu                                                                                                                                                       
virtual_transport = lmtp:unix:private/dovecot-lmtp                                                         
                                                                                                           
# Parametres generaux            
myhostname = nosdef.fr                                                                                     
alias_maps = hash:/etc/aliases                                                                             
alias_database = hash:/etc/aliases                                                                         
myorigin = /etc/mailname                                                                                   
mydestination = localhosons = noanonymous                                                                  
relayhost =                                                                                                
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128                                                  
mailbox_command = procmail -a "$EXTENSION"                                                                 
mailbox_size_limit = 0                                                                                     
recipient_delimiter = +                                                                                    
inet_interfaces = all /etc/ssl/certs/server.crt                                                            
inet_protocols = ipv4                                                                                      
/etc/postfix/master.cf
#                                                                            
# Postfix master process configuration file.  For details on the format      
# of the file, see the master(5) manual page (command: "man 5 master" or     
# on-line: http://www.postfix.org/master.5.html).                            
#                                                                            
# Do not forget to execute "postfix reload" after editing this file.         
#                                                                            
# ========================================================================== 
# service type  private unpriv  chroot  wakeup  maxproc command + args       
#               (yes)   (yes)   (yes)   (never) (100)                        
# ========================================================================== 
smtp      inet  n       -       -       -       -       smtpd                
#smtp      inet  n       -       -       -       1       postscreen          
#smtpd     pass  -       -       -       -       -       smtpd               
#dnsblog   unix  -       -       -       -       0       dnsblog             
#tlsproxy  unix  -       -       -       -       0       tlsproxy            
submission inet n       -       -       -       -       smtpd                
  -o syslog_name=postfix/submission                                          
  -o smtpd_tls_security_level=encrypt                                        
  -o smtpd_sasl_auth_enable=yes                                              
#  -o smtpd_reject_unlisted_recipient=no                                     
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject              
#  -o smtpd_client_restrictions=$mua_client_restrictions                     
#  -o smtpd_helo_restrictions=$mua_helo_restrictions                         
#  -o smtpd_sender_restrictions=$mua_sender_restrictions                     
#  -o smtpd_recipient_restrictions=                                          
#  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject              
#  -o milter_macro_daemon_name=ORIGINATING                                   
#smtps     inet  n       -       -       -       -       smtpd               
#  -o syslog_name=postfix/smtps                                              
#  -o smtpd_tls_wrappermode=yes                                              
#  -o smtpd_sasl_auth_enable=yes                                             
#  -o smtpd_reject_unlisted_recipient=no                                     
#  -o smtpd_client_restrictions=$mua_client_restrictions                     
#  -o smtpd_helo_restrictions=$mua_helo_restrictions                         
#  -o smtpd_sender_restrictions=$mua_sender_restrictions                     
#  -o smtpd_recipient_restrictions=                                          
#  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject              
#  -o milter_macro_daemon_name=ORIGINATING                                   
#628       inet  n       -       -       -       -       qmqpd               
pickup    unix  n       -       -       60      1       pickup               
cleanup   unix  n       -       -       -       0       cleanup              
qmgr      unix  n       -       n       300     1       qmgr                 
#qmgr     unix  n       -       n       300     1       oqmgr                
tlsmgr    unix  -       -       -       1000?   1       tlsmgr               
rewrite   unix  -       -       -       -       -       trivial-rewrite      
bounce    unix  -       -       -       -       0       bounce               
defer     unix  -       -       -       -       0       bounce               
trace     unix  -       -       -       -       0       bounce               
verify    unix  -       -       -       -       1       verify               
flush     unix  n       -       -       1000?   0       flush                
proxymap  unix  -       -       n       -       -       proxymap             
proxywrite unix -       -       n       -       1       proxymap             
smtp      unix  -       -       -       -       -       smtp                 
relay     unix  -       -       -       -       -       smtp                 
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       -       -       -       showq         
error     unix  -       -       -       -       -       error         
retry     unix  -       -       -       -       -       error         
discard   unix  -       -       -       -       -       discard       
local     unix  -       n       n       -       -       local         
virtual   unix  -       n       n       -       -       virtual       
lmtp      unix  -       -       -       -       -       lmtp          
anvil     unix  -       -       -       -       1       anvil         
scache    unix  -       -       -       -       1       scache        
#                                                                     
# ====================================================================
# Interfaces to non-Postfix software. Be sure to examine the manual   
# pages of the non-Postfix software to find out what options it wants.
#                                                                     
# Many of the following services use the Postfix pipe(8) delivery     
# agent.  See the pipe(8) man page for information about ${recipient} 
# and other message envelope options.                                 
# ====================================================================
#                                                                     
# maildrop. See the Postfix MAILDROP_README file for details.         
# Also specify in main.cf: maildrop_destination_recipient_limit=1     
#                                                                     
maildrop  unix  -       n       n       -       -       pipe          
  flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}ap      
#                                                                     
# ====================================================================
#                                                                     
# Recent Cyrus versions can use the existing "lmtp" master.cf entry.  
#                                                                               
# Specify in cyrus.conf:                                                        
#   lmtp    cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4                   
#                                                                               
# Specify in main.cf one or more of the following:                              
#  mailbox_transport = lmtp:inet:localhost                                      
#  virtual_transport = lmtp:inet:localhost                                      
#                                                                               
# ====================================================================          
#                                                                               
# Cyrus 2.1.5 (Amos Gouaux)                                                     
# Also specify in main.cf: cyrus_destination_recipient_limit=1                  
#                                                                               
#cyrus     unix  -       n       n       -       -       pipe                   
#  user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}   
#                                                                               
# ====================================================================          
# Old example of delivery via Cyrus.                                            
#                                                                               
#old-cyrus unix  -       n       n       -       -       pipe                   
#  flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}        
#                                                                               
# ====================================================================          
#                                                                               
# See the Postfix UUCP_README file for configuration details.                   
#                                                                               
uucp      unix  -       n       n       -       -       pipe                    
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
#                                                                               
# Other external delivery methods.                                              
#
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix  -       n       n       -       2       pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}
/etc/aliases
# See man 5 aliases for format
postmaster:    root
L'erreur se trouve dans le fichier /etc/postfix/main.cf, la directive "smtpd_helo_restrictions" doit se trouver en début de ligne sinon elle est mal interprétée lors de l'initialisation de postfix.

Incorrect :
        smtpd_helo_restrictions =                                                                                    
        permit_mynetworks,                                                                                           
        ...
Correct :
smtpd_helo_restrictions =                                                                                    
        permit_mynetworks,                                                                                           
        ...
Mille merci, le problème venait effectivement de la.
Tout marche désormais
2 mois plus tard
Snif,

J'ai pourtant bien supprimer dovecot, pourtant j'ai ceci :
root@ns316675:/tmp/mailserver-autoinstall# chmod +x install.sh && ./install.sh

/!\ ERREUR: Dovecot est déjà installé sur le serveur.
Et quand je tente d'installer Dovecot à la mano
root@ns316675:/# apt-get install dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
dovecot-core est déjà la plus récente version disponible.
dovecot-imapd est déjà la plus récente version disponible.
dovecot-lmtpd est déjà la plus récente version disponible.
dovecot-mysql est déjà la plus récente version disponible.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
root@ns316675:/#
apt-get remove --purge dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql
ou
./uninstall.sh
6 jours plus tard
Bonjour à tous,

Après 2 nuits et 5 ou 6 réinstallations complètes du script, j'ai enfin réussi à avoir 10/10 sur mail-tester et ce n'est pas la gestion des DNS d'OVH qui m'a aidée. Cependant j'ai encore un problème dans le résultat de mail-tester.
Votre reverse DNS ne correspond pas avec votre domaine d'envoi.

La recherche ou la résolution de la reverse DNS (rDNS) permet de déterminer si un nom de domaine est associé à l'adresse IP donnée.
Quelques entreprises comme AOL rejetteront tout message envoyé d'un serveur sans rDNS, vous devez vous assurer d'en avoir une.
Vous ne pouvez pas associer plus d'un nom de domaine à une adresse IP unique.

Votre adresse IP XXX.XXX.XXX.XXX est associée au nom de domaine nsXXXXXX.ip-XXX-XXX-XXX.eu.
Néanmoins votre message semble être envoyé de hostname.domain.tld.

Vous devriez modifier l'enregistrement du pointeur DNS (Type PTR) et le nom d'hôte (host name) de votre serveur avec la même valeur

Voici les valeurs testées pour cette vérification:

IP: XXX.XXX.XXX.XXX
HELO: hostname.domain.tld
rDNS: nsXXXXXX.ip-XXX-XXX-XXX.eu
Quelqu’un c'est il comment corrigé ce problème ?

Merci
Il faut que tu fasses correspondre ton IP à ton FQDN,soit :
XX.XX.XX.XX= hostname.mondomain.tld
Tu trouveras cette option sur la page d'administration de ton fournisseur. Regarde le début du tutoriel.
Merci beaucoup Solinvictus, j'ai enfin réussi. Il fallait juste édité le reverse dans le panel Soyoustart de mon serveur.
Bon fausse joie, je pensais que changer le reverse dans le panel SoyouStart corrigerait le problème mais non donc je sais pas quoi faire.
Dans le panel OVH de mon NDD, mon hostname.mondomain.tld pointe bien sûr mon IP.
Ce n'est pas vraiment grave car tous fonctionne correctement, mais je préférerais corriger le problème.
Merci à vous ça fonctionne, fallait juste patienter. Aujourd'hui j'ai refait un test avec mail-tester et je n'ai plus d'erreur.

Bonjour,

J'ai cette erreur qui ne me permet pas de continuer le script ?

Un grand merci a ce super site et sa communauté.

@Jgign : enlève dans postfix.conf les lignes relatives à l'authentification "seedbox" et restart nginx
ps : à chaque fois que j'ai fait le script j'ai enlevé ces deux lignes après coup sinon impossible de faire le truc jusqu'au bout.
Bon ben le boulet de service est de retour. Je n'y arrive toujours pas même avec le script auto. Impossible à accéder au setup de postfixadmin.
J'ai pourtant nettoyer mon cache internet, fait la méthode de corentin mais rien.
Je n'y comprend plus rien.
Le pire c'est que c'est un script auto, et donc on devrait rien y faire au moins jusqu'au setup, les autres ont du réussir mais moi pas.
C'est normal il y a un problème avec wget depuis une récente mise à jour, je vais corriger ça au plus vite.