Portál AbcLinuxu, 8. listopadu 2025 11:39
Ahoj,
používám postfix jako smtp relay (na různé smtp servery) a z nějakého důvodu se po připojení klienta objeví 8 sekund prodleva.
smtpd -v, loglevel 4:
Jan 05 21:24:56 tiger postfix/smtpd[36902]: auto_clnt_create: transport=local endpoint=private/anvil
Jan 05 21:24:56 tiger postfix/smtpd[36902]: connection established
Jan 05 21:24:56 tiger postfix/smtpd[36902]: master_notify: status 0
Jan 05 21:24:56 tiger postfix/smtpd[36902]: name_mask: resource
Jan 05 21:24:56 tiger postfix/smtpd[36902]: name_mask: software
Jan 05 21:25:04 tiger postfix/smtpd[36902]: connect from unknown[45.143.222.191]
Jan 05 21:25:04 tiger postfix/smtpd[36902]: match_list_match: unknown: no match
Dále už to běží jako po másle.
Netušíte někdo, v čem to vězí či kde hledat zdroj problému? Je jedno, jsetli se připojí lokální klient (Rainloop webmail) nebo vzdálený (Android FairMail).
Řešení dotazu:
drill 45.143.222.191 a whois 45.143.222.191 odpovídají v milisekundách.
Budu ještě hledat...
Nevím, co dělá drill, ale i neexistence DNS záznamu se kešuje, takže opakované dotazy jsou již rychlé. Mně první dotaz na PTR záznam k této adrese trval jedna a půl sekundy.
Postfix ve výchozím nastavení překládá adresy a zapisuje je to Received: hlavičky v e-mailu.
/etc/hosts a problém zmizel...
dig -x 45.143.222.191 ; <<>> DiG 9.14.8 <<>> -x 45.143.222.191 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 46888 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: 011f34c969658694090c5d415e150b0ca5320f2c75f5d981 (good) ;; QUESTION SECTION: ;191.222.143.45.in-addr.arpa. IN PTR ;; AUTHORITY SECTION: 45.in-addr.arpa. 10800 IN SOA z.arin.net. dns-ops.arin.net. 2017028592 1800 900 691200 10800 ;; Query time: 433 msec ;; SERVER: ::1#53(::1) ;; WHEN: Tue Jan 07 23:49:48 CET 2020 ;; MSG SIZE rcvd: 153Podruhy to nema smysl poustet, je to pod 1ms. BTW: presne takovyhle maily se rovnou odpojujou, nema reverz, neumi si zaridit za 10 minut nastaveni nebo ... nema IP pod kontrolou => nema narok provozovat mta.
To je mi jasné, že je vhodné to vyřešit 
Akorát budu muset ještě pohledat, proč s tím má postfix problém.
$ drill -x 45.143.222.191
;; ->>HEADER<<- opcode: QUERY, rcode: NXDOMAIN, id: 51848
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; 191.222.143.45.in-addr.arpa. IN PTR
;; ANSWER SECTION:
;; AUTHORITY SECTION:
;; ADDITIONAL SECTION:
;; Query time: 6 msec
;; SERVER: 10.11.13.1
;; WHEN: Wed Jan 8 18:18:01 2020
;; MSG SIZE rcvd: 45
První dotaz 6 ms (asi je to v cache na routeru) a další už jen 1 ms.... Postfix stále timeout na 8 sekundách.
postscreen? Používáte smtpd_ppoxy_filter, smtpd_client_restrictions?
#main.cf
compatibility_level = 2
queue_directory = /var/spool/postfix
command_directory = /usr/bin
daemon_directory = /usr/lib/postfix/bin
data_directory = /var/lib/postfix
mail_owner = postfix
myhostname = XXX.XXX.net
mydomain = XXX.net
myorigin = $mydomain
smtp_generic_maps = hash:/etc/postfix/mk_sender_generic_map
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 172.17.30.4
alias_maps = hash:/etc/postfix/aliases
alias_database = $alias_maps
debug_peer_level = 1
#debug_peer_list = 172.17.30.4
debugger_command =
<> PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
<> ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/bin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /etc/postfix
readme_directory = /usr/share/doc/postfix
inet_protocols = ipv4
meta_directory = /etc/postfix
shlib_directory = /usr/lib/postfix
smtpd_tls_cert_file=/etc/letsencrypt/live/XXX.XXX.net/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/XXX.XXX.net/privkey.pem
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CBC3-SHA, KRB5-DES, CBC3-SHA
smtpd_tls_dh1024_param_file = ${config_directory}/mk_dhparams.pem
smtp_tls_security_level = encrypt
smtp_tls_ciphers = high # or "export" to "medium" or "low"
smtp_tls_protocols = !SSLv2, !SSLv3
smtp_tls_policy_maps = hash:/etc/postfix/mk_smtp_tls_policy
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/mk_sender_relayhost_map
smtp_sasl_auth_enable = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/mk_sender_relayhost_map
smtp_sasl_password_maps = hash:/etc/postfix/mk_sasl_passwd
smtp_sasl_security_options = noanonymous
smtpd_peername_lookup = no
# master.cf # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (no) (never) (100) # ========================================================================== #smtp inet n - n - - smtpd #smtp inet n - n - 1 postscreen #smtpd pass - - n - - smtpd #dnsblog unix - - n - 0 dnsblog #tlsproxy unix - - n - 0 tlsproxy submission inet n - n - - smtpd -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_tls_auth_only=yes -o smtpd_sasl_type=dovecot -o smtpd_sasl_path=private/auth -o smtpd_sasl_security_options=noanonymous -o smtpd_sasl_local_domain=$myhostname -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o smtpd_recipient_restrictions=reject_non_fqdn_recipient,reject_unknown_recipient_domain,permit_sasl_authenticated,rejectPřidání
smtpd_peername_lookup = nodo main.cf vypne reverse lookup a je po timeoutu...
PřidáníJak máte nakonfigurovaný systémový DNS resolver? Když zkoušíte překlad přes DNS z příkazové řádky, překládá se podle dřívějších komentářů hned, ale systémový resolver může před tím zkoušet ještě něco jiného.smtpd_peername_lookup = nodo main.cf vypne reverse lookup a je po timeoutu...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.