« Le système d'exploitation GNU-Linux/Le serveur de mails Postfix » : différence entre les versions

Contenu supprimé Contenu ajouté
accents
déplacement des erreurs connues
Ligne 410 :
 
Pour plus d'information sur les certificats .pem, voir [[Apache/HTTPS]].
 
== Problèmes connus ==
==== 421 Server Busy Error ====
Trouver le goulet d'étranglement avec <code>qshape</code>.
 
==== 451 4.3.0 Temporary lookup failure ====
Sinon, recopier le <code>main.cf</code> ci-dessus.
 
==== 454 4.7.1 Relay access denied / relaying denied ====
* Commenter le bridage par adresses réseaux dans <code>/etc/postfix/main.cf</code> :
mynetworks =
* Sinon, vérifier que le domaine du destinataire figure bien dans <code>/etc/postfix/main.cf</code> :
mydestination =
* Sinon, dans <code>/etc/postfix/main.cf</code>, le paramètre ''virtual_mailbox_domains'' est vide<ref>http://postfix.traduc.org/</ref>.
* Sinon, ajouter ou modifier les lignes suivantes à <code>/etc/postfix/main.cf</code> :
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
* Sinon, recopier le <code>main.cf</code> ci-dessus.
 
{{attention|1=Lors des tests, [[#Configuration_pour_des_envois_distants|ne pas commenter <code>relayhost =</code>]] pendant plus d'une heure sous peine de devenir spammeur à son insu.}}
 
==== 501 5.1.7 Bad sender address syntax ====
Modifier l'adresse de l'expéditeur (ex : dans les options Squirrel).
 
==== 550 relay not permitted / Sender verify failed ====
Vérifier le reverse DNS.
 
==== 550 unknown recipient / 550 5.1.1: Recipient address rejected: User unknown in local recipient table ====
Le domaine ou sa boite mail n'est pas installé sur le MX.
 
S'il s'agit bien d'un utilisateur local, créer [[#Alias|un alias d'une boite existante]].
 
Sinon, si le serveur MX distant fonctionne par ailleurs, commenter dans <code>/etc/postfix/main.cf</code> :
mydestination =
Et relancer postfix.
 
==== Connection closed by foreign host / ou aucune commande ne répond après la connexion au SMTP ====
Si le serveur s'arrête immédiatement après son lancement, certaines erreurs sont visibles dans les logs. Sinon, recopier le <code>main.cf</code> ci-dessus.
 
==== dsn=4.4.1, status=deferred ====
Si les emails fonctionnent en local, mais pas depuis l'extérieur (avec la même adresse d'expéditeur), et qu'ils ne sont pas visibles dans
tail -30 /var/log/mail.log
Retester en ouvrant le port SMTP du pare-feu :
<syntaxhighlight lang=bash>
iptables -A INPUT -i eth0 -p tcp --dport 25 -j ACCEPT
</syntaxhighlight>
Ou sinon en ouvrant tous les ports :
<syntaxhighlight lang=bash>
#!/bin/sh
echo "Flushing iptables rules..."
sleep 1
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
</syntaxhighlight>
 
==== dsn=5.4.6, status=bounced (mail for mail.mondomaine.fr loops back to myself) ====
* Le paramètre ''mydestination'' n'est pas bien définit.
* Le domaine est inactif dans la table MySQL<ref>http://unix.stackexchange.com/questions/128630/postfix-email-bounced-mail-for-domain-loops-back-to-myself</ref>
 
==== Erreurs Dovecot ====
===== Error: Invalid settings in userdb =====
Survient quand on se connecte par exemple au webmail en root. Cette protection incite à utiliser un autre compte, la solution la plus simples est de définir un alias dans pour root dans /etc/aliases.
 
Si cela survient alors qu'un alias existait déjà, il suffit de relancer <code>newaliases</code> pour réparer.
 
===== Error: stat(/home/postmaster/Maildir/tmp) failed: Permission denied =====
chmod -R 777 /home/postmaster/Maildir/
 
==== Erreurs fetchmail ====
Les symptômes suivants sont liés à la même erreur fetchmail :
* POP3 : Erreur de login ou d'identification inconnue / erreur socket durant la réception
* IMAP : Connexion refusée / Échec de l'autorisation
* SMTP : The recipient server did not accept our requests to connect. Socket error
 
Pour déboguer, utiliser la commande :
fetchmail -v
 
Sinon, bien vérifier que l'utilisation et le mot de passe sont entre guillemets dans :
vim ~/.fetchmailrc
Et le chemin vers le programme dans :
vim ~/.forward
 
Les retours de mails sont visibles dans :
ls -alh /var/lib/fetchmail/Maildir/new
ou :
ls -alh /home/user/Maildir/new
 
==== Erreurs procmail ====
===== Mails perdus / delivered to command: procmail -a "$EXTENSION" / delivered to command: IFS=' '&&exec /usr/bin/procmail -f-||exit 75 #user =====
Si les logs montrent que les mails sont bien envoyés, mais restent introuvables par ailleurs, vérifier la boite système via :
procmail -v
Si cela commence par ''/var/mail/'', les emails perdus sont probablement tous dans le fichiers :
cat /var/mail/nobody
 
Pour les router vers les boites des utilisateurs, revoir la configuration des <code>.forward</code> et <code>.procmailrc</code> ci-dessus, jusqu'à voir les nouveaux dans :
ls -alh /home/user/Maildir/new
 
==== Unable to connect to remote host: Connection refused ====
/etc/init.d/postfix start
ou si les logs donnent :
NO [AUTHENTICATIONFAILED] Authentication failed.
alors réinstaller.
 
==== unknown key version / dkim=temperror (no key for signature) ====
Lorsqu'on envoie par webmail, il faut qu'un logiciel insère automatiquement la signature DKIM dans chaque courrier sortant. C'est pourquoi il faut installer OpenDKIM<ref>https://sourceforge.net/projects/opendkim/files/</ref>.
 
Lorsqu'il redémarre, le syslog peut indiquer des erreurs de permissions sur la clé qu'il faut corriger :
<syntaxhighlight lang=bash>
/etc/init.d/opendkim restart
tail /var/log/syslog
chown opendkim /etc/ssl/private/dkim.key
chmod 700 /etc/ssl/private/dkim.key
</syntaxhighlight>
 
==== warning: cannot get RSA private key from file: nomdedomaine.fr.key disabling TLS support ====
Ceci apparait dans mail.log quand on chiffre la clef privée avec un mot de passe. Il ne faut donc pas en mettre.
 
==== warning: connect #1 to subsystem private/proxymap: Connection refused ====
Il manque la ligne dans master.cf :
proxymap unix - - n - - proxymap
 
 
<noinclude>[[Catégorie:Messages d'erreur]]</noinclude>
 
== Références ==