NOQUEUE: rejeter: RCPT depuis sur freebsd et postfix

12

Je crée un serveur à l'aide de cette configuration -> http://www.purplehat.org/?page_id=4 et lorsque j'essaie de tester les capacités de base de la messagerie électronique, j'obtiens -> NOQUEUE: rejet: RCPT à partir de quand essayez d'envoyer un e-mail de test.

Ci-dessous mes configurations associées

Comment obtenir postfix pour envoyer des e-mails?

Sortie des journaux:

Feb 13 18:37:43 r2d2 dovecot: pop3-login: Login: user=<[email protected]>, method=PLAIN, rip=67.85.57.155, lip=107.191.60.48, mpid=13390, TLS, session=<QA0yiPwOiwBDVTmb>
Feb 13 18:37:43 r2d2 dovecot: pop3([email protected]): Disconnected: Logged out top=0/0, retr=0/0, del=0/4, size=68813
Feb 13 18:37:44 r2d2 postfix/smtpd[13391]: connect from ool-4355399b.dyn.optonline.net[67.85.57.155]
Feb 13 18:37:46 r2d2 postfix/smtpd[13391]: NOQUEUE: reject: RCPT from ool-4355399b.dyn.optonline.net[67.85.57.155]: 454 4.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<Bramini>
Feb 13 18:37:49 r2d2 postfix/smtpd[13391]: disconnect from ool-4355399b.dyn.optonline.net[67.85.57.155]

postconf -n

broken_sasl_auth_clients = yes
command_directory = /usr/local/sbin
config_directory = /usr/local/etc/postfix
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/db/postfix
debug_peer_level = 2
debug_peer_list = 127.0.0.1
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5
html_directory = /usr/local/share/doc/postfix
inet_protocols = ipv4
mail_owner = postfix
mailman_destination_recipient_limit = 1
mailq_path = /usr/local/bin/mailq
manpage_directory = /usr/local/man
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = ex-mailer.com
myhostname = r2d2.ex-mailer.com
mynetworks_style = host
newaliases_path = /usr/local/bin/newaliases
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
queue_directory = /var/spool/postfix
readme_directory = /usr/local/share/doc/postfix
relay_domains = proxy:mysql:/usr/local/etc/postfix/mysql_relay_domains_maps.cf list.ex-mailer.com
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/local/sbin/sendmail
setgid_group = maildrop
smtp_tls_note_starttls_offer = yes
smtp_use_tls = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname, reject_rbl_client list.dsbl.org, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl-xbl.spamhaus.org
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks
smtpd_tls_CAfile = /etc/ssl/postfix/smtpd.pem
smtpd_tls_cert_file = /etc/ssl/postfix/smtpd.pem
smtpd_tls_key_file = /etc/ssl/postfix/smtpd.pem
smtpd_tls_loglevel = 0
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
soft_bounce = no
tls_random_source = dev:/dev/urandom
transport_maps = hash:/usr/local/etc/postfix/transport
unknown_local_recipient_reject_code = 550
vacation_destination_recipient_limit = 1
virtual_alias_maps = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:125
virtual_mailbox_base = /usr/local/virtual
virtual_mailbox_domains = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_limit_maps = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_mailbox_maps = proxy:mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_maildir_limit_message = Sorry, this user has overdrawn their diskspace quota. Please try again later.
virtual_minimum_uid = 125
virtual_overquota_bounce = yes
virtual_transport = virtual
virtual_uid_maps = static:125
postconf: warning: /usr/local/etc/postfix/main.cf: unused parameter: contencontent_filter=smtp-amavis:[127.0.0.1]:10024
postconf: warning: /usr/local/etc/postfix/main.cf: unused parameter: virtual_create_maildirsize=yes
postconf: warning: /usr/local/etc/postfix/main.cf: unused parameter: virtual_mailbox_extended=yes

Le domaine a telecomm.comété défini en relay_domainsparamètre. Voici le contenu de/usr/local/etc/postfix/mysql_relay_domains_maps.cf

 user = doughnuts
 password = [redacted]
 hosts = localhost
 dbname = postfix
 query = SELECT domain FROM domain WHERE domain="%s" and backupmx ="0" and active ="1"

netstat -an | moins

Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address          Foreign Address        (state)
tcp4       0      0 *.587                  *.*                    LISTEN
tcp4       0      0 127.0.0.1.10025        *.*                    LISTEN
tcp4       0      0 *.465                  *.*                    LISTEN
tcp4       0      0 *.25                   *.*                    LISTEN
tcp4       0    128 107.191.60.48.2222     67.85.57.155.51823     ESTABLISHED
tcp4       0      0 127.0.0.1.953          *.*                    LISTEN
tcp4       0      0 127.0.0.1.53           *.*                    LISTEN
tcp6       0      0 ::1.53                 *.*                    LISTEN
tcp4       0      0 107.191.60.48.53       *.*                    LISTEN
tcp6       0      0 2001:19f0:7000:8.53    *.*                    LISTEN
tcp4       0      0 *.8282                 *.*                    LISTEN
tcp6       0      0 *.8282                 *.*                    LISTEN
tcp4       0      0 *.8181                 *.*                    LISTEN
tcp6       0      0 *.8181                 *.*                    LISTEN
tcp4       0      0 107.191.60.48.2222     67.85.57.155.57964     ESTABLISHED
tcp46      0      0 *.3306                 *.*                    LISTEN
tcp4       0      0 127.0.0.1.10024        *.*                    LISTEN
tcp6       0      0 *.993                  *.*                    LISTEN
tcp4       0      0 *.993                  *.*                    LISTEN
tcp6       0      0 *.143                  *.*                    LISTEN
tcp4       0      0 *.143                  *.*                    LISTEN

MISE À JOUR 14/02/2015 1430 EST

Sortie de journalisation détaillée:

https://bpaste.net/show/6a2a70cb2ab5

En définissant l'adresse IP de l'ordinateur de test sur mynetworks = IP, vous pouvez voir le courrier beaucoup plus loin dans le système, mais il étouffe ensuite les classes de correspondance. Comment forcer Postfix à faire correspondre 0.0.0.0 à n'importe quel domaine source / destination IP?

cat /usr/local/etc/postfix/master.cf

# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd
smtps     inet  n       -       n       -       -       smtpd
pickup    unix  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
#qmgr     unix  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache

vacation  unix  -       n       n       -       -       pipe
  flags=DRhu user=vacation argv=/var/spool/vacation/vacation.pl

smtp-amavis unix - - n - 2 smtp
  -o smtp_data_done_timeout=2400
  -o smtp_send_xforward_command=yes
  -o disable_dns_lookups=yes
  -o max_use=20
127.0.0.1:10025 inet n - n - - smtpd
  -o content_filter=
  -o local_recipient_maps=
  -o relay_recipient_maps=
  -o smtpd_restriction_classes=
  -o smtpd_delay_reject=no
  -o smtpd_client_restrictions=permit_mynetworks,reject
  -o smtpd_helo_restrictions=
  -o smtpd_sender_restrictions=
  -o smtpd_recipient_restrictions=permit_mynetworks,reject
  -o mynetworks_style=host
  -o mynetworks=127.0.0.0/8
  -o strict_rfc821_envelopes=yes
  -o smtpd_error_sleep_time=0
  -o smtpd_soft_error_limit=1001
  -o smtpd_hard_error_limit=1000
  -o smtpd_client_connection_count_limit=0
  -o smtpd_client_connection_rate_limit=0
  -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings

mailman unix - n n - - pipe
  flags=FR user=mailman:nobody
  argv=/usr/local/mailman/postfix-to-mailman.py ${nexthop} ${user}

submission inet n       -       n       -       -       smtpd
  -o smtpd_tls_security_level=may
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_delay_reject=yes
  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
  -o smtpd_data_restrictions=
  -o smtpd_sasl_authenticated_header=yes
  -o receive_override_options=no_address_mappings
  -o syslog_name=postfix/submission
mien
la source
Ni depuis ni vers les domaines ne sont locaux ou configurés en tant que domaines de relais, vous obtenez donc une erreur de relais refusé
Dan
@Dan, il est censé cartographier ces informations à partir de MySQL. mysql_relay_domains_maps.cf o.0
mine
@Dan et toutes les requêtes de base de données fonctionnent comme prévu bpaste.net/show/e9be64528685
mine le
nyctelecomm.com (comme dans votre base de données) et telecomm.com (comme dans vos journaux) ne sont pas le même domaine
Dan
@Dan car bpaste se supprime automatiquement après 14 jours. Je ne veux pas que mes données persistent pour toujours sur le www. L'un est édité, l'autre ne l'est pas :)
mien

Réponses:

9

FYI, 454 4.7.1 <[email protected]: Relay access denied; était le résultat de defer_unauth_destination . C'est légèrement différent avec rejet_unauth_destination , avec rejet signifie une erreur permanente avec le code 550 et différer signifie une erreur temporaire avec le code 450.

Mais attendez ..., je n'ai aucun paramètre qui utilise defer_unauth_destination. D'où vient cette restriction étrange?

En fait, postfix a un paramètre de restriction caché appelé smtpd_relay_restriction. Il s'agit d'une nouvelle fonctionnalité, donc un ancien didacticiel peut ne pas le couvrir. Par défaut, smtpd_relay_restriction a une valeur

# postconf smtpd_relay_restriction
permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination

Donc, cela explique où la defer_unauth_destination

Mais cela n'a pas répondu à ma question sur le rejet de mon client :(

Le comportement de (différer | rejeter) _unauth_destination était une documentation dans les pages de manuel de postfix .

rejette_unauth_destination

Rejetez la demande, sauf si l'une des conditions suivantes est remplie:

  • Postfix est un transitaire de messagerie: le domaine RCPT TO résolu correspond à $ relay_domains ou à un sous-domaine de celui-ci, et ne contient aucun routage spécifié par l'expéditeur (utilisateur @ ailleurs @ domaine),
  • Postfix est la destination finale: le domaine RCPT TO résolu correspond à $ mydestination, $ inet_interfaces, $ proxy_interfaces, $ virtual_alias_domains ou $ virtual_mailbox_domains et ne contient aucun routage spécifié par l'expéditeur (utilisateur @ ailleurs @ domaine).

En termes simples: postfix vérifiera l'adresse du destinataire . Si la partie de domaine n'a pas été définie dans relay_domains(ou son sous-domaine), $ mydestination, $ inet_interfaces, $ proxy_interfaces, $ virtual_alias_domains ou $ virtual_mailbox_domains, alors postfix la rejettera .

Dans vos journaux ci-dessus, le destinataire était quelqu'[email protected], il est donc évident pourquoi postfix le rejette.

masegaloeh
la source
Honnêtement, je pensais que vous avez cloué. J'ai rencontré un problème similaire il y a quelque temps. Je fais le changement, j'ai essayé de définir mynetworks sur 0.0.0.0 et j'ai même copié une configuration qui résout le problème exact que vous avez mis en évidence. Même erreur :( bpaste.net/show/a26076c941b4 bpaste.net/show/6def40226cea
mien
Ne définissez pas mynetworks sur 0.0.0.0/0. Votre serveur se transformera en openrelay
masegaloeh
Pourtant, je ne sais vraiment pas ce que vous essayez de faire ... Votre déclaration sur "tester les capacités de messagerie de base" était encore vague. Cette réponse explique uniquement pourquoi vous obtenez l'erreur. Pas encore de solution donnée ici ...
masegaloeh
c'est un serveur de messagerie standard sur une IP publique. Tous les clients sont dynamiques et routables. J'ai juste besoin de trouver le bouton «envoyer tout» (pas le relais ouvert). c'est-à-dire l'authentification sasl. Il frappe bien la base de données.
mien
1
Bien. Maintenant, nous devons vérifier que l'authentification SASL a été correctement configurée sur le serveur et le client. Pourriez-vous le vérifier en suivant [cette documentation] (www.postfix.org/SASL_README.html#server_test)?
masegaloeh
1

J'utilise THUNDERBIRD comme MUA et j'ai les mêmes problèmes. J'ai résolu d'ajouter l'adresse IP de mon PC à la maison sur le paramètre mynetworks sur main.cf

mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 MyIpAddress

PS Je n'ai pas d'IP statique pour mon PC à la maison, donc quand mon FAI le change, je dois m'adapter à chaque fois.

Mauro Ferro
la source
0

FWIW ajoutant ce qui suit a fonctionné pour moi. J'utilise un vérificateur spf qui est le besoin de check_policy_service. Mon client est squirrelmail et mon serveur postfix.

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_policy_service unix:private/policyd-spf

dhromyk
la source