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

la propagation sur arcenik.domain.tld est finie.
et comme tous les CNAME redirige vers cette adresse ça devrait être bon normalement.

Je dois taper quel ligne de commande pour voir les log de mail.log.1 ?
Il faut impérativement supprimer le MX définit par défaut par ton registrar, sinon tu risques d'avoir des surprises au niveau de la réception de tes emails.

Il faut mettre un enregistrement MX qui pointe vers ton serveur de mail pour que les autres serveurs de mail saches à qui adresser le message. Si tu as plusieurs entrées MX dans ton fichier de zone avec la même priorité, genre le MX par défaut et le MX qui pointe vers ton serveur, tu vas te retrouver dans un cas de Round-robin, un coup les mails vont être envoyés sur ton serveur, puis sur les serveur de ton registrar, puis de nouveau sur ton serveur...etc haha
Bon voilà, j'ai viré les infos de mon register.
Je suppose qu'il faut attendre les tout se mettent à jour ?

pour le moment j'ai toujours un message:
The account or domain may not exist, they may be blacklisted, or missing the proper dns entries.
Je suis largué là, je comprends pas trop d'où vient le problème.
voilà mes entrée chez mon register. Il me semble que tout est bon non ?


Et pour mon problème de sous domaine rainloop, tu as une idée hardware ?

en tout cas déjà merci beaucoup pour votre aide et encore bravo pour le tuto.
Toujours pas accès à rainloop.tondomaine.tld ?? Vérifie que la propagation soit ok (même si ton arcenik est bien propagé, par forcément le CNAME sur rainloop)
Ouep, tout est au vert sur whatsmydns pour rainloop et pour postfixadmin

Par contre le mail.domaine.tld est tout en rouge.
Pour rainloop tu dois avoir un problème au niveau de ton vhost, re-vérifie la config de nginx :
service nginx configtest
Dans l'interface de ton registrar, change le type de l'enregistrement du sous-domaine "mail" en passant de CNAME à A.

EDIT : Ah oui aussi, il ne faut surtout pas oublier le point à la fin de l'enregistrement MX :
@                   IN                MX          10       mail.domain.tld.
pour rainloop:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Mon nginx.conf:
#Configuration générale
#Utilisateur
user www-data;
#Nombre de process
worker_processes auto;
#Fichier du processus
pid /var/run/nginx.pid;
#Gestion des connexions
events { worker_connections 1024; }
#Gestion du coeur http
http {

        #Options pour l'encoding et le type
        include /etc/nginx/mime.types;
        default_type  application/octet-stream;
        charset UTF-8;

        log_format vhosts '$host $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';

        access_log /var/log/nginx/access.log combined;
        error_log /var/log/nginx/error.log error;

        sendfile on;
        keepalive_timeout 20;
        keepalive_disable msie6;
        keepalive_requests 100;
        tcp_nopush on;
        tcp_nodelay off;
        server_tokens off;

        #Options pour la compression
        gzip on;
        gzip_buffers 16 8k;
        gzip_comp_level 5;
        gzip_disable "msie6";
        gzip_min_length 20;
        gzip_proxied any;
        gzip_types text/plain text/css application/json  application/x-javascript text/xml application/xml application/xml+rss  text/javascript;
        gzip_vary on;

        include /etc/nginx/sites-enabled/*.conf;
}
Et j'ai passé le mail en A.
et j'ai rajouté le . que bien sur je n'avais pas.

On va finir par y arriver.

MAJ: les mails fonctionnent en envoies et receptions, mais je n'ai que 7,6 /10
Hello, juste un petit souci: dans PostfixAdmin, les alias n'apparaissent pas alors que le compteur en haut est bon certains ont eu ce problème ?

Egalement, il y a un moyen de mettre les spams dans le dossier SPAM directement sans passer par un filtre dans Outlook ?
Problème résolu, il fallait mettre dans le fichier rainloop.conf:
   server_name     mail.domaine.tld;
   root            /var/www/rainloop;
et non pas
   server_name     rainloop.domaine.tld;
   root            /var/www/rainloop;
Ce qui permet d'y avoir accès via mail.domain.tld

Encore merci pour votre aide et bravo pour le tuto.
Comment récupérer le mdp administrateur de postfix admin ? Je suis perdu, je me rappelle même pas du mail.

Merci d'avance !
@Hank : Pour retrouver l'adresse email du compte administrateur, tu peux faire comme ça :
mysql -u root -p

mysql> connect postfix
mysql> SELECT username FROM admin WHERE superadmin=1 AND active=1;

+------------------+
| username         |
+------------------+
| admin@domain.tld |
+------------------+
1 row in set (0.00 sec)

mysql> quit
Ensuite pour modifier le mot passe, tu peux utiliser un outil fournit avec Dovecot, doveadm-pw :
# Cette commande te donne le HASH correspondant à ton nouveau mot de passe
doveadm pw -s MD5-CRYPT -p MOT_DE_PASSE | sed 's/{MD5-CRYPT}//'

mysql -u root -p

mysql> connect postfix
mysql> UPDATE admin SET password = 'HASH' WHERE username = 'admin@domain.tld';

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> quit
Slt,

Dites, je demande un petit conseil pour la partie 4 du tuto (configuration de PostFix).
J'ai déjà mon serveur de mail configuré et fonctionnel mais j'aimerais changer le certificat SSL (qui est un auto signé actuellement) par un certificat StartSSL.
Je vois donc qu'il faut indiquer le chemin d'accès dans le fichier /etc/postfix/main.cf :
# Chemin vers votre certficat SSL
smtpd_tls_cert_file = /etc/ssl/certs/server.crt
smtpd_tls_key_file  = /etc/ssl/private/server.key
Dans mon fichier de conf, les fichiers en question sont dovecot.pem.
J'ai donc un doute sur quoi mettre à ce niveau

Dois-je créer un fichier (par exemple) server.key (avec la clé générée par startSSL) puis un server.crt avec le certificat généré pour un sous domaine sur startssl ? Puis ensuite faire pointer sur ces deux fichiers ?

Merci de m'éclairer

Edit : Ce serait pour avoir un certificat signé mais surtout pour outlook qui m'embête avec le certificat auto signé et à chaque ouverture me demande d'enregistrer le certificat et si je veux poursuivre avec ce serveur ^^
Il faut modifier la configuration de Postfix et aussi celle de Dovecot :
# vim /etc/dovecot/conf.d/10-ssl.conf
ssl = required
ssl_cert = </etc/ssl/certs/startssl.crt (certificat)
ssl_key = </etc/ssl/private/startssl.key (clé privée)
# /etc/postfix/main.cf
smtpd_tls_cert_file = /etc/ssl/certs/startssl.crt  (certificat)
smtpd_tls_key_file  = /etc/ssl/private/startssl.key (clé privée)
Dans le fichier .crt, il faut que tu concatènes le certificat correspondant à ton domaine et les certificats racines de StartSSL :

https://www.startssl.com/certs/sub.class1.server.ca.pem
https://www.startssl.com/certs/ca.pem
ca change quelque chose de changer le certificat ??
ça n'a pas vraiment d'interêt si tu es le seul à utiliser ton serveur de mail, c'est juste une question de confiance. Un certificat valide devient obligatoire "moralement parlant" à partir du moment où tu as plusieurs utilisateurs à utiliser un service. Après ça change strictement rien au niveau du chiffrement de la transmission.
Le loglevel je le met bien dans le /etc/postfix/main.cf ? car je l'ai mis, restart postfix et je n'ai que ces lignes dans mail.log :
Oct 13 15:29:12 kimsufi postfix/master[25896]: daemon started -- version 2.9.6, configuration /etc/postfix
Oct 13 15:30:04 kimsufi dovecot: auth-worker(26180): mysql(127.0.0.1): Connected to database postfix
Oct 13 15:30:05 kimsufi dovecot: imap-login: Login: user=<user1@domaine2.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26183, TLS, session=<oUOG5U0FxwBRMoLR>
Oct 13 15:30:05 kimsufi dovecot: imap-login: Login: user=<user1@domaine2.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26334, TLS, session=<QeuM5U0FzwBRMoLR>
Oct 13 15:30:05 kimsufi dovecot: imap-login: Login: user=<user1@domaine1.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26336, TLS, session=<T7CO5U0FyABRMoLR>
Oct 13 15:30:05 kimsufi dovecot: imap-login: Login: user=<user1@domaine1.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26343, TLS, session=<+pGU5U0F0QBRMoLR>
Oct 13 15:30:06 kimsufi dovecot: imap-login: Login: user=<user2@domaine2.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26366, TLS, session=<GnmW5U0FxABRMoLR>
Oct 13 15:30:06 kimsufi dovecot: imap-login: Login: user=<user2@domaine2.tld>, method=PLAIN, rip=81.50.*.*, lip=176.31.*.*, mpid=26377, TLS, session=<Xbec5U0F1QBRMoLR>
Tu devrais avoir beaucoup, beaucoup plus de choses
Un peu plus tôt avant d'avoir mis le loglevel, j'ai eu ça dans mail.log :
Oct 13 15:22:53 kimsufi postfix/submission/smtpd[23218]: connect from ANantes-654-1-259-209.w81-50.abo.wanadoo.fr[81.50.*.*]
Oct 13 15:22:53 kimsufi postfix/submission/smtpd[23218]: improper command pipelining after EHLO from ANantes-654-1-259-209.w81-50.abo.wanadoo.fr[81.50.*.*]:
Oct 13 15:22:53 kimsufi postfix/submission/smtpd[23218]: disconnect from ANantes-654-1-259-209.w81-50.abo.wanadoo.fr[81.50.*.*]
Un rapport ?
@MonsterChips : Passe Postfix et dovecot en mode verbose.

Pour postfix, ajoute l'option -v à la ligne smtp :
# /etc/postfix/master.cf

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd -v
et laisse smtpd_tls_loglevel = 4 dans le fichier /etc/postfix/main.cf

Pour dovecot :
# /etc/dovecot/conf.d/10-logging.conf

log_path = /var/log/dovecot.log
auth_verbose = yes
mail_debug = yes
Puis redémarre les services :
service postfix restart
service dovecot restart
Fait un test de connexion et regarde si il y a des erreurs dans les fichiers /var/log/mail.log, /var/log/mail.err et /var/log/dovecot.log.