Bonjour à tous,
Je débute dans le monde de linux et je voudrais monter mon propre serveur.
J'ai pour cela téléchargé une copie ISO d'ubuntu pour sa popularité version server LTS 12.04.
Ensuite j'ai voulu installer samba => aucun problème et j'en suis pour le moment au serveur courriel.
La configuration retenue est donnée par le fait que ma connexion à Internet n'est pas persistante (même si elle le devrait d'après le FAI : orange). Nous avons de temps en temps des déconnexions PPP et suite à cette obligation j'ai retenu un mode de courriel bien connu :
- Réception : fetchmail -> postfix -> procmail
- émission : postfix via relay smtp avec authentification obligatoire (j'utilise OVH ave clogin + mot de passe en SSL sur port 587)
Le tout en SSL 3/TLS.
Côté réception cela fonctionne parfaitement (même si j'ai passé trois jours à comprendre ).
Côté émission : je cale. J'ai lu beaucoup de tutos mais je bute sur un problème de base de données "canonical"
Pour envoyer sur le port 587 au lieu de 25 qui est bloqué par OVH, j'ai décommenté
submission inet n - - - - smtpd
dans /etc/postfix/master.cf
Ma configuration postfix :
########### See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# envoyer vers le domaines loacl réduit
####################
append_dot_mydomain = no
readme_directory = no
#Propriétaire et processus de la file d'attente
#####################
mail_owner = postfix
mail_spool_directory = /var/spool/mail
#myhostname est le nom Internet de la machine
#####################
myhostname = neo.monDomaine.fr
#mydomaine est le nom du domaine local
#####################
mydomain = monDomaine.fr
#masquerade_domains = $mydomain
#mydestination definit la liste de domaines ou nom de machine pour laquelle la machine
#se considérera comme destination finale des messages.
#################
mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost
#myorigine spécifie le nom du domaine local
#la valeur par défaut est $mydomain
########################
myorigin = $mydomain
#Internet versus INtranet
#########################
relayhost = [ssl0.ovh.net]
defer_transports = smtp
default_transport = smtp
#Ré-écriture d'adresse
#######################
sender_canonical_maps = hash:/etc/postfix/send_canonical
recipient_canonical_maps = hash:/etc/postfix/recipient_canonical
#Alias
######################
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
#Distribution des messages locaux
######################
mailbox_command = /usr/bin/procmail
#liste des adresses considérées comem locales
#######################
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
#Boite des utilisateur
######################
home_mailbox = Maildir/
#Distribution parallèle à une même destination
######################
local_destination_concurrency_limit = 2
default_destination_concurrency_limit = 5
#paramètre de limites de boites et de messages
#####################
mailbox_size_limit = 0
delay_warning_time = 4h
message_size_limit = 2621440
#séparateur entre utilisateur et extention d'adresse
#####################
recipient_delimiter = +
#Réception des messages
#inet_interfaces définit quels sont les interfaces de la amichine qui sont suceptibles de recevoir du courrier
#inet_rpotocole définit les protocoles de la machine par lequel postfix peut recevoir des messages
inet_interfaces = all
inet_protocols = all
setgid_group = postdrop
# Paramètres TLS
####################
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_auth_only = no
smtp_tls_note_starttls_offer = yes
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
#Autentification SASL
###################
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sender_sasl_passwd
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
###############
Le problème vu dans /var/log/syslog est le suivant :
Dec 28 11:22:34 SYMATEC-NEO postfix/pickup[5159]: 684D013814C2: uid=1000 from=
Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: hash:/etc/postfix/send_canonical is unavailable. open database /etc/postfix/send_canonical.db: No such file or directory
Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: hash:/etc/postfix/send_canonical lookup error for "monLogin@monDomain.fr"
Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: 684D013814C2: sender_canonical_maps map lookup problem for monLogin@monDomain.fr
Dec 28 11:22:34 SYMATEC-NEO postfix/pickup[5159]: warning: maildrop/018F713814E8: error writing 684D013814C2: queue file write error
J'ai généré la base de donnée canonical à partir du fichier : /etc/postfix/send_canonical qui contient :
root prenom.nom@monDomain.fr
monLogin prenom.nom@monDomain.fr
en faisant sudo postmap /etc/postfix/send_canonical ce qui m'a généré un fichier /etc/postfix/send_canonical.db.
J'ai d'abord pensé à un problème de droit mais un **ls -l /etc/postfix/send_canonical.db me donne un
-rw-r--r-- 1 root root 12288 dec 27 23:09 /etc/postfix/send_canonical.db
Bref! Je suis perdu.
# plusieurs problemes indiqués dans les logs
Posté par NeoX . Évalué à 2.
il cherche monLogin@monDomain.fr dans /etc/postfix/send_canonical ou send_canonical.db
les fichiers n'existant pas ou ne contenant pas l'info il t'en avertit
là il n'arrive pas à ecrire l'email dans un dossier de travail
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par aureusms . Évalué à 0.
Merci NeoX de ta réponse
Tu as mis le doigt sur le premier problème : dans le recopiage des tutos, j'avais généré des sender_canonical.db mais indiqué send_canonical dans main.cf.
Ce problème est résolu en modifiant le /etc/postfix/main.cf et en redémarrant le service par sudo /etc/init.d/postfix restart (je marque en même temps ce que j'ai fais pour les autres au cas où je me trompe)
Mon second problème est toujours d'actualité : pas d'envoi de messages vers l'extérieur en utilisant le relai smtp d'OVH
Toujours en analysant les logs de /var/log/syslog, je suis tombé la dessus :
Je ne pense pas que cela soit lié mais bon au cas où…
Ensuite, j'ai généré des adresses vers des courriels persos et inexistant (pour tester les valeurs de retours).
J'ai généré ces courriels avec mail nom.prenom@free.fr.
Ces courriels sont bien présents dans la queue : mailq mais ne veulent pas partir vers l'extérieur
Le fichiers /var/log/syslog me donne :
Je ne comprends pas car dans /etc/postfix/main.cf j'ai bien indiqué :
et
J'ai vérifié cette fois que le fichier sender_sasl_passwd possédé bien le bon nom pour ne pas répéter l'erreur précédente. Le fichier sender_sasl_passwd contient une ligne :
J'ai vérifié ce couple login/mot de passe d'OVH via leur webmail et via Thunderbird en POP SSL et IMAP SSL.
Cette fois on avance mais c'est pas facile quand même… Que puis-je vérifier pour avancer le shmimblick ?
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par ashgan . Évalué à 1.
pour ta ligne:
un sudo newaliases devrait faire la blague.
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par ashgan . Évalué à 1.
rahh j'peux plus éditer mon message précédent! tant pis.
tu as aussi ton antispam qui bloque, cf les lignes avec "connexion refused".
l'antispam se rajoute très bien après coup, une fois que tout roule, mais c'est pas encore la prochaine étape :)
tu devrais retrouver le branchement vers spamd dans ton master.cf, a la ligne smtp avec un truc du genre:
au lieu de ne rien filtrer avec un bete:
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par aureusms . Évalué à 0.
Bonjour Ashgan,
Je viens de regarder dans master.cf pas de
uniquement
Ensuite j'ai pensé que le problème pouvait provenir de Procmail où un filtre spam est activé, j'ai commenté dans /home/login/.procmail tout le bloc pour qu'il ne soit pas pris en compte.
J'ai relancé l'envoi des courriels en attente avec un "flush" (j'en apprends des trucs aujourd'hui…) et mes 4 courriels tests en attente ont bien sûr retourné une erreur mais le problème a bien avancé :
Ce que j'ai compris est que la première phase :
1. pickup
2. cleanup
3. qmgr
se déroule bien pour tout les messages mais, malheureusement l'erreur apparait au moment de l'envoi et envoi les messages en "deferred".
Est ce normal d'avoir relay=none alors que j'ai stipulé un relayhost=[ssl0.ovh.net] dans main.cf ?
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par NeoX . Évalué à 2.
d'ou parte les emails ? du serveur ou d'un poste client ?
si c'est du serveur, je ne vois pas,
si c'est d'un poste client c'est à cause de
qui te jete car seul localhost a le droit d'envoyer des emails et donc que le relais est interdit (relay none)
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par aureusms . Évalué à 1.
Bonjour(re),
C'est là où je cale : je voudrais qu'ils partent du serveur mais ils ne le veulent pas les gredins !!!
Vois-tu où je me suis trompé ou quel fichier je pourrais apporter pour tenter de résoudre le problème ?
Si je te comprends bien :
indique au serveur qu'il est le seul à envoyer des courriels (ce que je recherche) sans relais (ce que je recherche aussi ^ en passant par ovh).
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par Axone . Évalué à 2.
Attention, avec :
Alors les autres machines de ton réseau local ne peuvent utiliser ton serveur postfix. Je ne pense pas que ce soit cela que tu veux, non ?
[^] # Re: plusieurs problemes indiqués dans les logs
Posté par ashgan . Évalué à 1. Dernière modification le 28 décembre 2012 à 20:44.
de retour a la maison, j'ai remis la main sur un main.cf qui devrait t'aiguiller.
c'est une conf postfix+dovecot avec amavis/spamassin que j'utilise pour relayer vers un dédié, comme toi. certainement pas la meilleure conf, mais ça marche.
j'ai normalement gardé que la partie qui va bien, a adapter avec l'environnement réel, notamment les domaines et adresses IP (celle du réseau local et celle du relai):
# Port 25
Posté par Kerro . Évalué à 2.
C'est Orange qui bloque le port 25.
Mais cela ne change rien, il faut sortir vers le 587, qui est de toutes manière le port correct pour le SMTP avec authentification.
[^] # Re: Port 25
Posté par aureusms . Évalué à 0.
Bonjour,
J'espère que j'utilise bien le bon port …
J'ai dé-commenté dans le fichier /etc/postfix/master.cf
et tester par telnet ssl0.ovh.net 587
qui me retourne :
Je pense ainsi que le port est bien ouvert que je peux passer par là. Mais pourquoi postfix refuse d'envoyer les courriels par ce port (ou d'envoyer les courriels tout court) ?
[^] # Re: Port 25
Posté par NeoX . Évalué à 2.
t'aurait pas oublié de dire quel login/pass il doit utiliser ton postfix pour envoyer sur ton relay (ssl0.ovh.net:587)
[^] # Re: Port 25
Posté par aureusms . Évalué à 0.
Bonjour à tous,
Peut-être bien… Mais je ne sais pas comment faire. (je débute)
Voilà ce que j'ai compris pour utiliser postfix en utilisant un relai (dans mon cas ssl0.ovh.com) via ssl sur le port 587 :
Dans /etc/postfix/main.cf
où sender_sasl_passwd est un fichier créé par l'utilisateur et qui contient le nom de la machine (myhostname = nomMachine sous forme nomMachine.monDomaine.fr) et qui fait référence à un couple login/mot de passe ce qui donne :
Ensuite ce même fichier sender_sasl_passwd doit être généré en fichier base de donnée par
Dans /etc/postfix/master.cf
Décommenter la ligne
pour utiliser le port 587
Concernant la ré-ecriture d'adresse, deux fichiers sont demandés qui suivent la même procédure de création que sender_sasl_passwd décrite précédemment. Dans /etc/postfix/main.cf
send_canonical sert à ré-écrire les courriels sortants pour afficher un "from" du type : nom@monDomaine.fr au lieu de login@nomMachine.monDomaine.fr et où send_canonical contient le(s) couple(s) :
recipient_canonical sert à éviter que les messages destinés au réseau local ne partent vers l'extérieur et d'être rapatrié par la suite. Ainsi un message nom@monDomaine.fr partant du serveur restera sur le serveur et sera distribué en local. Le fichier send_canonical contient le(s) couple(s) :
Voilà ce que je sais à l'heure actuelle.
Ensuite je viens de lire la réponse de ashgan et je vais voir ce qu'il y a qui pourrait résoudre mon problème.
Mais pour le moment suis-je ou non dans le vrai ?
# configuration PostFix pour envoyer des courriels via SMTP où comment s'arracher les cheveux...
Posté par aureusms . Évalué à 0.
Bon déjà un merci à tous ceux qui ont pris le temps de m'aider et de me lire.
J'y suis arrivé par l'utilisation dans /etc/postfix/main.cf de
Et… en commentant mailbox_command = /usr/bin/procmail
Avant de commenter la commande mailbox_command, je m'étais aperçu dans les logs /var/log/syslog que, suite aux dernières modification, les courriels pour les adresses locales étaient bien renommées et partaient. Alors j'ai fais un petit tour via Imap dans /home/login/Maildir et.. Pas de courriels. En regardant le log de procmail que j'avais stipulé : il me copiait tout mes courriels dans le dossier /home/login/Maildir/.Trash et effectivement ils étaient bien là mais pas dans le dossier /home/login/Maildir/.Trash/cur. J'ai donc ré-envoyé de nouveaux courriels en local mais en commentant auparavent mailbox_command dans /etc/postfix/main.cf et en redémmarrant le service postfix par sudo /etc/init.d/postfix restart.
Effectivement cette fois les courriels se mettaient directement (avec ré-écriture selon send_canonical et recipient_canonical) dans le dossier "Inbox".
J'ai donc fais un postqueue -f sans trop y croire et finalement les courriels en "queue" prévu pour l'extérieur sont partis via le relais ovh… et bien arrivés…
Dernière petite question : comme j'ai suivi des tutos j'ai indiqué defer_transports = smtp et tous les courriels sont indiqué comme deferred (reporté si j'ai bien compris). Je comprends que cette commande est nécessaire en cas de connexion à Internet non persistante mais sous quel délai les courriels partent-ils tout seul? Et, partent-ils tout seul ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.