Postfix[mauvais port découte SMTP]

Bonjour à tous.

Je suis en train de configurer postfix sur mon dédié.

La réception et l’envoie des mail fonctionne parfaitement… ou presque!

Impossible d’envoyer un mail par thunderbird… Par contre en ligne de commande cela fonctionne parfaitement…

Après moult réflexion j’en suis parvenu au fait que le port d’écoute smtp n’était pas configuré…

Voilà pourquoi :

-Contenu du /etc/postfix/main :

[code]smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

appending .domain is the MUA’s job.

append_dot_mydomain = no

Uncomment the next line to generate “delayed mail” warnings

#delay_warning_time = 4h

TLS parameters

smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache

See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for

information on enabling SSL in the smtp client.

myhostname = sd-5671
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = stun.fr, sd-5671, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all[/code]

Résultat de la commande iptables -L -v -n :

Chain INPUT (policy ACCEPT 9362 packets, 575K bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 7750 packets, 3204K bytes)
 pkts bytes target     prot opt in     out     source               destination

Tout est donc ouvert…

Résultat de la commande : netstat -laptn | grep 25

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN     2125/mysqld
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN     20768/master
tcp        0     52 88.191.35.78:22         90.42.21.254:2586       ESTABLISHED21084/sshd: webmast
tcp        0      0 88.191.35.78:3306       213.251.169.108:1444    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1450    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1452    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1459    TIME_WAIT  -
tcp        0      0 88.191.35.78:22         90.42.21.254:2631       ESTABLISHED21160/sshd: root@no
tcp        0      0 88.191.35.78:3306       213.251.169.108:1412    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1427    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1429    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1436    TIME_WAIT  -
tcp        0      0 88.191.35.78:3306       213.251.169.108:1407    TIME_WAIT  -

Je pense que normallement je devrait avoir :

tcp 0 88.191.35.78:25 0.0.0.0:* LISTEN 20768/master

Enfin mon fichier de log : /var/log/ est infesté de :

Feb 10 06:47:55 sd-5671 postfix/smtpd[9748]: fatal: non-null host address bits in "88.191.35.78/25", perhaps you should use "88.191.35.0/25" instead Feb 10

Voila je pense donc que le port d’écoute du smtp est mal configuré mais la je ne sais pas quoi faire…

Si quelqu’un à une piste je serais intéressé.

Avertissement : je ne connais pas postfix.

[quote=“stun”]tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 20768/master
Je pense que normallement je devrait avoir :

Non, “0.0.0.0:25” c’est bien aussi. 0.0.0.0 signifie que la socket écoute sur toutes les adresses locales (88.191.35.78, 127.0.0.0/8…).

[quote]Enfin mon fichier de log : /var/log/ est infesté de :

Je ne sais pas d’où vient ni à quoi correspond ce “88.191.35.78/25”, mais manifestement postfix l’interprète comme un préfixe IPv4, où /25 représenterait non pas un numéro de port mais le masque 255.255.255.128. Il s’attend à ce que les bits de l’adresse correspondant aux bits à 0 dans le masque soient aussi à 0, ce qui n’est pas le cas ici (78 != 0). Je pense qu’il y a méprise quelque part, car ce préfixe n’a pas lieu d’être.

Quelle erreur Thunderbird signale-t-il ?

il ne peut simplement pas se connecter, cela ressemble a un timeout…

A savoir qu’au téléchargement de mail il fonctionne parfaitement…

De chez moi j’arrive très bien à me connecter à ton postfix sur le port 25 de ta dédibox. Tu es sûr que ton thunderbird est bien configuré, et que ce n’est pas ton FAI qui bloque le port 25 ? Si c’est Wanadoo/Orange (d’après l’adresse IP visible dans ton netstat), il me semble qu’il bloque les connexions TCP sortantes sur le port 25. Il faudrait alors configurer postfix pour qu’il écoute aussi sur le port 587 dédié à la soumission de courrier depuis un MUA comme thunderbird alors que stricto sensu le port 25 est dédié au transport entre MTA comme postfix.

Quant à la relève du courrier en POP3 ou IMAP, ça n’a rien à voir avec postfix qui ne s’occupe que du SMTP ; apparemment sur ta dédibox c’est qpopper qui s’occupe du POP3 et courier-imap de l’IMAP.

Tout a fait…

Je regarde sa de suite, je suis évidement chez orange/wanadoo :slightly_smiling:

Je suis bète, j’avais lu un article la dessus justement… j’éditerais pour vous tenir au courant.

Me revoila,

J’ai encore un petit problème.

Grace à la ligne de configuration dans le master.cf j’écoute sur le port 587.

Le problème étant que lorsque je tente d’envoyer un mail par icedove, il me donne une charmante erreur comme quoi le smtp n’est pas un relai ouvert…

Comment le configurer pour qu’il me demande de m’authentifier…

Merci

Salut,
remplace

par:

Et rajoute:

ici aussi:

J’ai ajouté cette petite modification, merci.

Malheureusement, cela ne change pas la charmante erreur que j’ai :

erreur 5.7.1 : Relay acces denied…

Comment faire pour m’authentifier?

Ben postfix n’autorise pas le relay via l’adresse 88.191.35.78 ce qui est une bonne chose.
Il faudrait pourvoir dire a postfix d’autoriser le relais via 127.0.0.1 seulement, mais là je bloque.

J’essaireais ceci:
relayhost = localhost

C’est au pif.

Non, mets
mynetworks = 127.0.0.0/8 88.191.35.78/32

Toujours exactement la même erreur…

A quoi sers 88.191.35.78/32 le port 32 est utilisé dans quel but?

Edit : si quelqu’un est d’accord : voila mon jabber : stun@jabber.org.
Quoi qu’il en soit je rédigerais la solution (si je la trouve :p) ici…

Comme je l’ai déjà expliqué plus haut, la notation /n dite “notation CIDR” ne représente pas un numéro de port mais une longueur de préfixe (ou de masque) de n bits. /32 équivaut au masque 255.255.255.255.

Ici 88.191.35.78/32 représente donc l’adresse unique 88.191.35.78 (les 32 bits sont pris en compte), alors que 127.0.0.0/8 représente toutes les adresses 127.x.y.z (seuls les 8 premiers bits sont pris en compte).

Pour le reste, comme je l’ai déjà dit je ne connais pas postfix, alors je ne peux rien pour toi.

Bon, essaye peut être
mynetworks = 127.0.0.0/8, 88.191.35.78/32

C’est pour accepter ta machine seule avec son IP publique également. Théoriquement si je me souviens bien (je n’utilise pas postfix) mynetworks désigne les machine à relayer. Tu peux éventuellement mettre à la place

mynetworks_style = host

(Ça ne déclare que la machine locale) et vérifier ton fichier /etc/hosts.

fais voir ton master.cf et un postconf -n a jour

fais egalement voir les logs du probleme (pas juste une ligne)

Alors voila ce que vous m’aviez demandé :

[code]sd-5671:/etc/postfix# cat 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”).

==========================================================================

service type private unpriv chroot wakeup maxproc command + args

(yes) (yes) (yes) (never) (100)

==========================================================================

smtp inet n - - - - smtpd
#587 inet n - - - - smtpd
submission inet n - - - - smtpd

-o smtpd_enforce_tls=yes

-o smtpd_sasl_auth_enable=yes

-o smtpd_client_restrictions=permit_sasl_authenticated,reject

#smtps inet n - - - - smtpd

-o smtpd_tls_wrappermode=yes

-o smtpd_sasl_auth_enable=yes

-o smtpd_client_restrictions=permit_sasl_authenticated,reject

#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
#qmgr fifo 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
smtp unix - - - - - smtp

When relaying mail as backup MX, disable fallback_relay to avoid MX loops

relay unix - - - - - smtp
-o fallback_relay=

-o smtp_helo_timeout=5 -o smtp_connect_timeout=5

showq unix n - - - - showq
error 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}

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}
[/code]

sd-5671:/etc/postfix# postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = no biff = no config_directory = /etc/postfix inet_interfaces = all inet_protocols = ipv4 mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 mydestination = stun.fr, sd-5671.dedibox.fr, localhost.localdomain.dedibox.fr, localhost myhostname = sd-5671 mynetworks = 127.0.0.0/8 88.191.35.78/32 myorigin = /etc/mailname recipient_delimiter = + relayhost = smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache smtpd_use_tls = yes

Pour le log d’erreur je suis étonné mais depuis vos précédents posts plus rien… Donc j’avais déjà mal configuré le mynetwork :stuck_out_tongue: merci beaucoup.

Donc sinon Thunderbird/Icedove me dis toujours que mon serveur n’est pas un relay acces ouvert mais il ne me demande pas de m’identifier…


Pour être honnête je commence à me poser des questions…
Ma démarche est elle correcte? Je voulais créer un serveur mail principalement pour moi (peut être pour des amis a terme) utilisant donc mon nom de domaine. Postfix est-il la bonne solution ou je suis en train de me compliquer la vie?

En tout cas merci pour vos réponses.

Personne ne sais? :cry:

En attendant je test des webmail en solution de secours… Mais ce n’est pas mon but, j’aimerais juste y accéder par Icedove ^^.

fais voir le message d’erreur et les logs postfix associés

Désolé pour l’attente je tente de remonter un gars qui s’amuse a me bruteforcer…

Alors voici le log que post-fix me renvoi :

Feb 20 18:30:40 sd-5671 postfix/smtpd[9373]: connect from ALyon-157-1-105-90.w90-41.abo.wanadoo.fr[90.41.96.90] Feb 20 18:30:43 sd-5671 postfix/smtpd[9373]: NOQUEUE: reject: RCPT from ALyon-157-1-105-90.w90-41.abo.wanadoo.fr[90.41.96.90]: 554 5.7.1 <stun43@no-log.org>: Relay access denied; from=<email@stun.fr> to=<stun43@no-log.org> proto=ESMTP helo=<[192.168.0.33]> Feb 20 18:31:45 sd-5671 postfix/smtpd[9373]: lost connection after RCPT from ALyon-157-1-105-90.w90-41.abo.wanadoo.fr[90.41.96.90] Feb 20 18:31:45 sd-5671 postfix/smtpd[9373]: disconnect from ALyon-157-1-105-90.w90-41.abo.wanadoo.fr[90.41.96.90]

Quand à thunderbird :

Voila… Si tu souhaitais un log que je ne t’est pas montré, n’hésite pas (mais dis moi vaguement où le trouver je ne suis pas encore vraiment à l’aise avec les logs sous deb).

Merci,
Stun

tout est normal la
tu envoies un mail a stun43@no-log.org depuis l’ip 90.41.96.90

ton serveur de mail d’apres ta conf est configuré pour gerer les domaines:
stun.fr et sd-5671.dedibox.fr

==>

pour pouvoir envoyer vers stun43@no-log.org, donc en dehors des domaines gérés, c’est a dire faire du realying, tu dois etre autorisé a le faire .
Dans ta conf qui est celle par defaut de postfix, seul les réseaux dans le parametre mynetwork seront autorisés a relayer

ton parametre c’est:
mynetworks = 127.0.0.0/8 88.191.35.78/32

donc 90.41.96.90 n’est pas autorisé a relayer

Tout a fais logique… Je me renseigne pour faire du relaying sécurisé…

Si tu as un petit tuto qui va bien ou la commande magique je ne suis pas contre…

Merci beaucoup, :blush: