Tôi đang cố thiết lập gửi email bằng SMTP trên VPS chạy Ubuntu 18.04.
Tôi đang sử dụng postfix, nodemailer.
Khi tôi gửi từ địa chỉ@mydomain.com đến tài khoản gmail, nó sẽ bị kẹt trong thư mục thư rác của gmail.Tôi đã đạt được số điểm 6,8 trên www.mail-tester.com, với các khoản khấu trừ này:
-1.274 RDNS_NONE Được máy chủ lưu trữ không có rDNS gửi đến mạng nội bộ
Điều này có thể cho thấy bạn chưa định cấu hình rDNS cho tên máy chủ của mình hoặc rDNS không khớp với IP gửi của bạn
-0,896 SPF_HELO_SOFTFAIL SPF: HELO không khớp với bản ghi SPF (thất bại mềm)
sự cố mềm
Tin nhắn của bạn chưa được ký với DKIM
Tôi nghĩ bản ghi TXT của tôi là chính xác:
"v=spf1 ip4:[removed-server-ip] bao gồm:_spf.mail.hostinger.com ~all"
/etc/postfix/main.cf:
# Xem /usr/share/postfix/main.cf.dist để biết phiên bản đầy đủ hơn đã nhận xét
# Debian cụ thể: Chỉ định tên tệp sẽ gây ra lỗi đầu tiên
# dòng của tệp đó sẽ được sử dụng làm tên. Mặc định của Debian
# là /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = không
# nối thêm .domain là công việc của MUA.
append_dot_mydomain = không
# Bỏ ghi chú dòng tiếp theo để tạo cảnh báo "thư bị trì hoãn"
#delay_warning_time = 4h
readme_directory = không
# Xem http://www.postfix.org/COMPATIBILITY_README.html -- mặc định là 2 trên
# lượt cài đặt mới.
mức độ tương thích = 2
# Thông số 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=có
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# Xem /usr/share/doc/postfix/TLS_README.gz trong gói postfix-doc để biết
# thông tin về kích hoạt SSL trong ứng dụng khách smtp.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = [tên miền đã xóa].com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, localhost.$mydomain, localhost.[remove-domain-name].com, [remove-domain-name].com, [remove-domain-name]$
máy chủ chuyển tiếp =
mạng của tôi = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
người nhận_dấu phân cách = +
inet_interfaces = chỉ lặp lại
inet_protocols = tất cả
chính sách-spf_time_limit = 3600
smtpd_recipient_restrictions=
allow_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
check_policy_service unix:private/policyd-spf
phương pháp gật đầu:
"Sử dụng nghiêm ngặt";
const nodemailer = require("nodemailer");
hãy để người vận chuyển = nodemailer.createTransport({
gửi thư: đúng,
dòng mới: 'unix',
đường dẫn: '/usr/sbin/sendmail',
an toàn: đúng,
})
để thông tin = đang chờ vận chuyển.sendMail({
từ: '"[tên miền đã xóa].com" <no-reply@[tên miền đã xóa].com>', // địa chỉ người gửi
to: req.body.to, // danh sách người nhận
chủ đề: "Xin chào", // Dòng chủ đề
văn bản: req.body.message, // nội dung văn bản thuần túy
html: req.body.message, // nội dung html
});