Încerc să configurez trimiterea de e-mailuri cu SMTP pe VPS-ul meu care rulează Ubuntu 18.04.
Folosesc postfix, nodemailer.
Când trimit de la o adresă@mydomain.com, la un cont gmail, acesta rămâne blocat în dosarul de spam gmail.Am un scor de 6,8 www.mail-tester.com, cu aceste deduceri:
-1.274 RDNS_NONE Livrat în rețeaua internă de către o gazdă fără rDNS
Acest lucru poate indica că nu aveți un rDNS configurat pentru numele dvs. de gazdă sau rDNS-ul nu se potrivește cu IP-ul dvs. de trimitere
-0,896 SPF_HELO_SOFTFAIL SPF: HELO nu se potrivește cu înregistrarea SPF (softfail)
softfail
Mesajul dvs. nu este semnat cu DKIM
Cred că înregistrarea mea TXT este corectă:
„v=spf1 ip4:[removed-server-ip] include:_spf.mail.hostinger.com ~all”
/etc/postfix/main.cf:
# Consultați /usr/share/postfix/main.cf.dist pentru o versiune comentată, mai completă
# Specific Debian: Specificarea unui nume de fișier va provoca primul
# rând din acel fișier care va fi folosit ca nume. Valoarea implicită Debian
# este /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = nu
# atașarea domeniului .este treaba MUA.
append_dot_mydomain = nr
# Anulați comentariile următoarei rânduri pentru a genera avertismente „e-mail întârziat”.
#delay_warning_time = 4h
readme_directory = nr
# Consultați http://www.postfix.org/COMPATIBILITY_README.html -- implicit la 2 pe
# instalări noi.
compatibility_level = 2
# Parametri TLS
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=da
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# Consultați /usr/share/doc/postfix/TLS_README.gz în pachetul postfix-doc pentru
# informații despre activarea SSL în clientul smtp.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = [removed-domain-name].com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, localhost.$mydomain, localhost.[removed-domain-name].com, [removed-domain-name].com, [removed-domain-name]$
relayhost =
rețelele mele = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a „$EXTENSION”
cutie_poștală_size_limit = 0
destinatar_delimiter = +
inet_interfaces = doar loopback
inet_protocols = all
policyd-spf_time_limit = 3600
smtpd_recipient_restrictions =
permis_rețelele mele,
permis_sasl_authenticated,
reject_unauth_destination,
check_policy_service unix:private/policyd-spf
metoda nodemailer:
„utilizați strict”;
const nodemailer = require("nodemailer");
let transporter = nodemailer.createTransport({
sendmail: adevărat,
linie nouă: „unix”,
cale: „/usr/sbin/sendmail”,
sigur: adevărat,
})
let info = await transporter.sendMail({
de la: '"[removed-domain-name].com" <no-reply@[removed-domain-name].com>', // adresa expeditorului
către: req.body.to, // lista de receptori
subiect: „Bună ziua”, // Linia de subiect
text: req.body.message, // text simplu body
html: req.body.message, // html body
});