• Serveurs
  • [Discussion] Installer un serveur de mail avec Postfix et Dovecot

Solinvictus, perso sur Mail ça fonctionne chez moi > https://images.mondedie.fr/images/capturfsf.png
Bon la configuration n'est pas en STARTTLS je pense, mais ça fonctionne en réception et envoi !

Par contre, je n'y arrive toujours pas sur Thunderbird

@Gandalf: Ah bon ? Pourtant dans le tuto ça fonctionne sans soucis..
Joss47 wrote:Solinvictus, perso sur Mail ça fonctionne chez moi > https://images.mondedie.fr/images/capturfsf.png
Bon la configuration n'est pas en STARTTLS je pense, mais ça fonctionne en réception et envoi !

Par contre, je n'y arrive toujours pas sur Thunderbird

@Gandalf: Ah bon ? Pourtant dans le tuto ça fonctionne sans soucis..
Certainement ^^

Pour en revenir à Thunderbird, j'avais dû downgrader la dernière version pour une plus ancienne, pour que cela fonctionne. C'est mentionné quelque part dans la discussion, si je ne m'abuse.
Arf pas cool, je me vois mal dire à mes clients "Merci d'installer une vieille version de Thunderbird et paramétrer toutes vos boites mails" xD
Ennuyeux tout ça
Le solution est donnée dans ce fil de discussion, regarde quelques pages avant.
De toute façon si tu as un client faudra que tu mettes en place un veritable certificat provenant d'une autorité de certification. Un certificat auto-signé c'est bien pour faire des tests ou pour la famille/amis.
Hardware, je souhaiterais enlevé toute l'installation sur mon premier serveur car je vais le refaire sur mon deuxieme

il y a une commande miracle stp ?

merci
je réponds avec les infos :
wget https://raw.githubusercontent.com/hardware/mailserver-autoinstall/master/uninstall.sh && chmod +x uninstall.sh && ./uninstall.sh
Ou on a la regle des ban parce que pour me connecter avec mailbird je me fait ban a chaque fois quand mailbird veut se connecter automatiquement ??
5 jours plus tard
Le voici Hardware
Feb  8 12:01:53 monkim postfix/smtpd[13457]: disconnect from unknown[41.213.244.213]
Feb  8 12:01:53 monkim postfix/smtpd[13461]: disconnect from unknown[41.213.244.213]
Feb  8 12:01:53 monkim postfix/smtpd[13454]: disconnect from unknown[41.213.244.213]
Feb  8 12:01:53 monkim postfix/smtpd[13459]: improper command pipelining after EHLO from unknown[41.213.244.213]: QUIT\r\n
Feb  8 12:01:53 monkim postfix/smtpd[13459]: disconnect from unknown[41.213.244.213]
Feb  8 12:05:13 monkim postfix/anvil[13458]: statistics: max connection rate 4/60s for (smtp:41.213.244.213) at Feb  8 12:01:52
Feb  8 12:05:13 monkim postfix/anvil[13458]: statistics: max connection count 4 for (smtp:41.213.244.213) at Feb  8 12:01:52
Feb  8 12:05:13 monkim postfix/anvil[13458]: statistics: max cache size 1 at Feb  8 12:01:52
Feb  8 12:11:17 monkim postfix/master[19831]: terminating on signal 15
Feb  8 12:11:19 monkim postfix/master[15200]: daemon started -- version 2.9.6, configuration /etc/postfix
salut,

moi j'ai une confusion au niveau des enregistrements dns
HOSTNAME            CLASS             RECORD TYPE          VALUE
------------------------------------------------------------------------------------------------
@                   IN                A                    ipv4 du serveur
hostname            IN                A                    ipv4 du serveur
mail                IN                A                    ipv4 du serveur

postfixadmin        IN                CNAME                hostname  
rainloop            IN                CNAME                hostname

@                   IN                MX          10       mail.domain.tld.
par exemple à l'enregistrement postfixadmin la valeur c'est pas plutôt domain.tld. ?
et pour hostname on peut mettre n'importe quoi ou y a des conventions sur ça?
Par exemple, tu définis ton hostname sur :
machine1
Et ton postfixadmin pointe bien sur un CNAME, en l'occurence, ton hostname :
machine1
Dans un fichier de zone, les noms d'hôte / sous-domaines qui ne se terminent pas par un "." donc non qualifiés (chemin relatif) sont automatiquement préfixés par le nom domaine lié à la zone, je sais pas si c'est très clair dit comme ça..

On va prendre un enregistrement comme exemple. Donc pour une zone liée au domaine mondomaine.tld l'enregistrement :
postfixadmin    IN        CNAME        hostname
est strictement équivalent à celui-ci :
postfixadmin    IN        CNAME        hostname.mondomaine.tld.
Magicalex wrote:Pour hostname on peut mettre n'importe quoi ou y a des conventions sur ça?
Aucune convention, tu mets ce que tu veux.
Magicalex wrote:par exemple à l'enregistrement postfixadmin la valeur c'est pas plutôt domain.tld. ?
C'est possible mais ça veut dire que ton domaine est lié uniquement qu'avec un serveur, je préfère utiliser un domaine qualitifé pour faire pointer correctement l'enregistrement sur le bon serveur.
Ok merci, c'est clair maintenant ^^
Salut à tous,

J'ai réussi à résoudre mon problème de mail indésirable avec les serveurs de microsoft en ajoutant cette ligne dans la conf de postfix :

bounce_notice_recipient = bounced@domain.tld
Hum je comprends pas, tu peux donner un peu plus d'information s'il te plait. Je vois pas le rapport entre le fait d'ajouter une adresse de bounce et le problème de mail indésirable avec les serveurs de microsoft.

Ca fait quelques mois que j'en ai mis une dans ma config :
notify_classes = bounce, delay, resource, software

error_notice_recipient   = admin@domain.tld
delay_notice_recipient   = admin@domain.tld
bounce_notice_recipient  = admin@domain.tld
2bounce_notice_recipient = admin@domain.tld
J'ai toujours le même soucis pourtant...
Ba écoute je ne sais pas en tout cas pour moi si fonctionne désormais j'ai testé sur 3 adresses hotmails différentes et même sur une adresse que je viens de me créer ça fonctionne nikel les emails attérissent direct dans "Boîte de réception" alors qu'avant ça tombait direct dans "Courrier indésirable"
Oui effectivement j'ai tiré des conclusions un peu rapidement j'ai réessayer en commentant la ligne et redémarrant postfix je suis toujours dans la Boite de réception. Probalement autre chose qui n'a rien à voir. Alors après j'ai fais pas mal de demande pour apparaitre dans les whitelistes de microsoft comme tu m'avais conseillé peut etre que cela à fini par aboutir.
Ok donc ça semble variable, ton serveur est hébergé chez qui ?
J'ai une debian chez moi qui tourne derrière ma freebox v6 et j'ai un nom de domaine chez Gandi
Hardware j'ai refais ton tuto, mais le du déplacement du dossoer postfix, il déplace postfixadmin-2.92 et nons postfixadmin non?
En fait c'est ici :
cd /var/www
wget http://downloads.sourceforge.net/project/postfixadmin/postfixadmin/postfixadmin-2.92/postfixadmin-2.92.tar.gz
tar -xzf postfixadmin-2.92.tar.gz
mv postfixadmin-2.92.tar.gz postfixadmin
rm -rf postfixadmin-2.92.tar.gz
chown -R www-data:www-data postfixadmin
cd postfixadmin
Il crée un dossier postfixadmin-2.92 et non postfixadmin.

J'ai bidouillé et j'ai renommé le dossier, je suis arrivé à la page de configuration postfixadmin, j'ai crée mes mail par contre arrivé à main.cf, le dossier et le fichier n'existe pas dans /etc/.

J'accumule/
Voila c'est corrigé, merci pour ton retour.

SInon pour le main.cf qui existe pas ça veut tout simplement dire que tu n'as pas installé postfix.
Mais si je ne l'ai pas installé comment ça se fait que je peux aller sur postfixadmin.mondomain.com/setup.php puis login???
C'est à ne plus rien comprendre...
jgign wrote:J'ai bidouillé et j'ai renommé le dossier, je suis arrivé à la page de configuration postfixadmin,
Ça veut dire que tu as bien installé postfixadmin mais pas postfix, les fichiers de configuration par défaut sont fournis avec le paquet, donc le paquet postfix n'est pas installé sur ton serveur.
Ah ouai. Je crois que j'ai du sauter un truc la. Quel boulet dsl.


Bon je suis toujours bloquer lors du paramétrage de Thunderbird pour la vérification.
J'ai l'impression que j'ai un soucis avec la reconnaissance de mon compte cotnact@mondomain.tld et mon modt de passe.
Je crois que j'ai une couille sur mes DNS en fait, voilà ce que j'ai dans GANDI, est ce que ça te semble correct ?

@ 10800 IN A XXX.XXX.XXX.XXX
imap 10800 IN A XXX.XXX.XXX.XXX
mail 10800 IN A XXX.XXX.XXX.XXX
pop 10800 IN A XXX.XXX.XXX.XXX
smtp 10800 IN A XXX.XXX.XXX.XXX
SRV-NAME-DEBIAN 10800 IN A XXX.XXX.XXX.XXX
www 10800 IN A XXX.XXX.XXX.XXX
@ 28800 IN MX 10 smtp
@ 10800 IN TXT "v=spf1 a mx ip4:XXX.XXX.XXX.XXX ~all"
mail._domainkey 10800 IN TXT "o=-; r=contact@domain.tld"
mail._domainkey 10800 IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC+KBlTsx/9Ln6ujNBJExoS8utzo+pBz0cV/zafqwwtWmBTYeVmt24cOl23MN1/Q9sqLdkNZr8GIdiQiwoceARm+kKEYjcZMrhf1whB4GbY/cNMuQXAULQQ0vHj8L/Sa2mumyhtsAG7jCZoqilSSfb7PC2xQ6Hkkw0Pu6Vr4ie9LwIDAQAB"
Comme indiqué dans le tuto :
HOSTNAME            CLASS             RECORD TYPE          VALUE
------------------------------------------------------------------------------------------------
@                   IN                A                    ipv4 du serveur
hostname            IN                A                    ipv4 du serveur
mail                IN                A                    ipv4 du serveur

postfixadmin        IN                CNAME                hostname  
rainloop            IN                CNAME                hostname
smtp                IN                CNAME                hostname
imap                IN                CNAME                hostname 

@                   IN                MX          10       mail.domain.tld.

@                   IN                TXT                  "v=spf1 a mx ip4:IPv4 DU SERVEUR ~all"
mail._domainkey     IN                TXT                  "v=DKIM1; k=rsa; p=CLE PUBLIQUE DKIM"
_dmarc              IN                TXT                  "v=DMARC1; p=reject; rua=mailto:postmaster@domain.tld; ruf=mailto:admin@domain.tld; fo=0; adkim=s; aspf=s; pct=100; rf=afrf; sp=reject"
_domainkey          IN                TXT                  "o=-; r=postmaster@domain.tld"
Tu as juste à remplacer hostname par le nom d'hôte de ton serveur et domain.tld par ton nom de domaine.
@jgign : Il me faut plus d'informations sur tu veux que je t'aide.. Regarde dans /var/log/mail.log. Si tu as cette erreur :
dovecot: imap-login: Disconnected (no auth attempts in 0 secs): user=<>, rip=xxx, lip=xxx, TLS: SSL_read() failed: error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca: SSL alert number 48
==> http://mondedie.fr/d/5794/81
Alors j'ai ça :
tail -f /var/log/mail.log
Feb 17 05:02:38 monkim postfix/smtpd[26094]: error: unsupported dictionary type: mysql
Feb 17 05:02:39 monkim postfix/smtpd[26094]: warning: hostname hn.kd.ny.adsl does not resolve to address 182.118.XX.XX: Name or service not known
Feb 17 05:02:39 monkim postfix/smtpd[26094]: connect from unknown[182.118.XX.XX]
Feb 17 05:02:39 monkim postfix/smtpd[26094]: warning: connect to Milter service inet:localhost:12301: Connection refused
Feb 17 05:02:39 monkim postfix/smtpd[26094]: warning: connect to Milter service unix:/clamav/clamav-milter.ctl: No such file or directory
Feb 17 05:02:39 monkim postfix/smtpd[26094]: warning: non-SMTP command from unknown[182.118.60.45]: GET / HTTP/1.0
Feb 17 05:02:39 monkim postfix/smtpd[26094]: disconnect from unknown[182.118.XX.XX]
Feb 17 05:06:00 monkim postfix/anvil[26096]: statistics: max connection rate 1/60s for (smtp:182.118.XX.XX) at Feb 17 05:02:39
Feb 17 05:06:00 monkim postfix/anvil[26096]: statistics: max connection count 1 for (smtp:182.118.XX.XX) at Feb 17 05:02:39
Feb 17 05:06:00 monkim postfix/anvil[26096]: statistics: max cache size 1 at Feb 17 05:02:39
Plop Hard,

Une petite coquille s'est glissée dans un de tes fichiers de conf, sur github (https://gist.github.com/hardware/b26918353c6325c09310)
/etc/postfix/main.cf

Il faut remplacer les lignes suivantes :
virtual_mailbox_domains = mysql:/etc/postfix/mysql/mysql-virtual-mailbox-domains.cf
virtual_mailbox_maps    = mysql:/etc/postfix/mysql/mysql-virtual-mailbox-maps.cf
virtual_alias_maps      = mysql:/etc/postfix/mysql/mysql-virtual-alias-maps.cf
Par :
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
yep merci c'est corrigé, chez moi j'ai mis les scripts dans un sous répertoire.
Une erreur est apparue après la configuration d' OpenDKIM :
postfix/submission/smtpd[19206]: error: unsupported dictionary type: inet
Feb 17 11:55:50  postfix/submission/smtpd[19206]: warning: cannot load 1024-bit DH parameters from file /etc/postfix/dh1024.pem: No such file or directory -- using compiled-in defaults
postfix/submission/smtpd[19206]: warning: unknown smtpd restriction: "milter_protocol"
D'ailleurs, je ne comprends pas, puisque cette clé n'existe pas, puisque nous avons généré :
openssl dhparam -out /etc/postfix/dh2048.pem 2048
Je comprends l'erreur, il essaie de charger un paramètre qui n'existe pas, mais je ne vois pas où il serait mal renseigné.

D'ailleurs Hard, dans le master.cf, ne devrait-on pas remplacer :
 -o smtpd_tls_dh1024_param_file=${config_directory}/dh1024.pem
Par :
 -o smtpd_tls_dh1024_param_file=${config_directory}/dh2048.pem
Si je modifie le paramètre ci-dessus, l'erreur disparaît. Néanmoins, ça ne fonctionne pas :
error: unsupported dictionary type: inet
Feb 17 12:09:31  postfix/submission/smtpd[20404]: warning: hostname xx.xxx.xx does not resolve to address xx.xx.xx: Name or service not known
Feb 17 12:09:31 postfix/submission/smtpd[20404]: connect from unknown[xx.xx.xx]
Feb 17 12:09:31 postfix/submission/smtpd[20404]: Anonymous TLS connection established from unknown[xx.xx.xx]: TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)
Feb 17 12:09:31 dovecot: auth-worker(20410): mysql(127.0.0.1): Connected to database postfix
Feb 17 12:09:31 postfix/submission/smtpd[20404]: warning: unknown smtpd restriction: "milter_protocol"
Feb 17 12:09:31 postfix/submission/smtpd[20404]: NOQUEUE: reject: RCPT from unknown[xx.xx.xx.xx]: 451 4.3.5 Server configuration error; from=<aaa> to=<bbb> proto=ESMTP helo=<MBPRO.local>
Cà venait peut être pas de moi le problème alors...
Résolu !

J'ai laissé un espace avant :
milter_protocol
Toutefois, pourrais-tu me confirmer cette partie :
-o smtpd_tls_dh1024_param_file=${config_directory}/dh1024.pem
A modifier en :
-o smtpd_tls_dh1024_param_file=${config_directory}/dh2048.pem
Voila c'est corrigé, merci pour ce retour
Hardware wrote:Voila c'est corrigé, merci pour ce retour 😉
De rien !