Làm thế nào để gửi email và tránh chúng bị phân loại là thư rác?


82

Đây là một câu hỏi chính tắc về cách xử lý email được gửi từ máy chủ của bạn bị phân loại sai thành thư rác. Để biết thêm thông tin, bạn có thể thấy những câu hỏi tương tự hữu ích:

Đôi khi tôi muốn gửi bản tin cho khách hàng của mình. Vấn đề là, một số email bị bắt là tin nhắn rác. Chủ yếu là bởi Outlook tại máy khách (ngay cả trong Outlook 2007 của riêng tôi).

Bây giờ tôi muốn biết những gì nên được thực hiện để tạo email "tốt". Tôi biết về tra cứu ngược, v.v., nhưng (ví dụ), còn liên kết hủy đăng ký với một ID duy nhất thì sao? Điều đó có làm tăng xếp hạng thư rác không?


Một danh sách kiểm tra từng bước cũng như hướng dẫn khắc phục sự cố có thể được tìm thấy trong một câu trả lời tốt cho một câu hỏi tương tự trên superuser.com .
MattBianco

Câu trả lời:


82

Hãy chắc chắn rằng email của bạn không giống như email spam thông thường: không chỉ chèn một hình ảnh lớn; kiểm tra xem bộ ký tự được đặt chính xác chưa; không chèn các địa chỉ IP chỉ liên kết. Viết thông tin liên lạc của bạn như bạn sẽ viết một email bình thường. Làm cho nó thực sự dễ dàng để hủy đăng ký hoặc từ chối. Nếu không, người dùng của bạn sẽ hủy đăng ký bằng cách nhấn nút spam thư rác và điều đó sẽ ảnh hưởng đến danh tiếng của bạn.

Về mặt kỹ thuật: nếu bạn có thể chọn máy chủ SMTP của mình, hãy chắc chắn rằng đó là máy chủ SMTP SMTP sạch. Địa chỉ IP của các máy chủ SMTP spam thường bị các nhà cung cấp khác đưa vào danh sách đen. Nếu bạn không biết trước máy chủ SMTP của mình, thì nên cung cấp các tùy chọn cấu hình trong ứng dụng của bạn để kiểm soát kích thước lô và độ trễ giữa các lô. Một số máy chủ thư không chấp nhận các đợt gửi lớn hoặc hoạt động liên tục.

Sử dụng các phương thức xác thực email, chẳng hạn như SPFKhóa miền để chứng minh rằng email và tên miền của bạn thuộc về nhau. Hiệu ứng phụ tuyệt vời là bạn giúp ngăn chặn tên miền email của bạn bị giả mạo. Đồng thời kiểm tra DNS ngược của bạn để đảm bảo địa chỉ IP của máy chủ thư của bạn trỏ đến tên miền bạn sử dụng để gửi thư.

Đảm bảo rằng địa chỉ trả lời email của bạn là một địa chỉ hợp lệ, hiện có. Sử dụng tên đầy đủ, tên thật của người nhận trong trường Đến, không chỉ địa chỉ email (ví dụ "John Doe" <john.doe@example.com>) và theo dõi các tài khoản lạm dụng của bạn, chẳng hạn như lạm dụng@example.compostmaster@example.com .


Và sử dụng nhiều phiên bản / phiên bản thay thế của email html của bạn chỉ chứa văn bản. Nó có nghĩa là trình quét thư rác sẽ có nhiều thứ hữu ích hơn khi phân loại nó.
Matt

22

Tự động hủy đăng ký người nhận thư của bạn có địa chỉ email bị trả lại và thiết lập các vòng phản hồi khiếu nại với các nhà cung cấp thư lớn và tự động hủy đăng ký người nhận báo cáo tin nhắn của bạn là spam / rác. Điều này sẽ đi một chặng đường dài để cải thiện danh tiếng và khả năng giao hàng của bạn.


4
Điều này rất thú vị. Tôi không biết gì về những vòng lặp phản hồi này. Có phải tất cả các nhà cung cấp cung cấp một chương trình như vậy?
kcode

1
Không phải tất cả các nhà cung cấp, không. Nhưng hầu hết những người lớn, bao gồm Yahoo và AOL và những người khác. Tất cả các vòng phản hồi khiếu nại tôi biết rằng yêu cầu các tin nhắn được gửi từ một miền được xác thực bởi DKIM hoặc DomainKeys. Tôi tin rằng một số cũng yêu cầu SPF, nhưng ít phổ biến hơn.

15

Câu hỏi này đề cập rằng những điều cơ bản đã được đưa ra, nhưng khi chúng tôi chỉ cho người khác biết đây là Câu hỏi Canonical, tôi chỉ muốn chắc chắn rằng chúng tôi bao quát các căn cứ của mình.

Những mức tối thiểu này về cơ bản là bắt buộc trong những ngày này:

  1. Hãy chắc chắn rằng bạn đã chuyển tiếp và đảo ngược DNS được cấu hình chính xác. Một máy chủ thư phải tự nhận dạng trong một trao đổi Helo / EHLO, tên đó sẽ tìm kiếm IP mà máy chủ đang sử dụng. Tương tự việc tra cứu ngược lại của IP đó sẽ trả lại tên.

  2. Hãy chắc chắn rằng máy chủ của bạn thực sự đang gửi tên máy chủ trong cái bắt tay đó. Máy chủ của bạn không nên gửi địa chỉ IP.

  3. Đảm bảo địa chỉ IP của bạn không có trên bất kỳ DNSRBL (danh sách đen) nào. Nếu có, hãy chăm sóc nó.

  4. Kiểm tra danh tiếng của IP của bạn với các dịch vụ danh tiếng phổ biến hơn (SendScore là một dịch vụ lớn ngay bây giờ, nhưng điều đó có thể không giữ được theo thời gian). Các dịch vụ này thường có hướng dẫn để cải thiện danh tiếng của bạn, nhưng không phải là "đi / không đi" hoàn toàn như RBL.

  5. Đừng tiêu đề giả, không nói dối trong tiêu đề, và chắc chắn rằng bạn đang bao gồm các tiêu đề tối thiểu trong các tin nhắn ( DateFromđược yêu cầu, cần có một Subject, Sender, Reply-To, và To/ Cc/ Bcc[có thể áp dụng]). Đây là một trong những thú cưng lớn nhất của tôi với các bản tin hợp lệ mà tôi muốn nhận được kết thúc trong Junk vì chúng giả mạo tiêu đề Outlook Express, bỏ qua ngày hoặc một cái gì đó tương tự.

Tùy chọn, bạn nên xem xét việc thiết lập SPF, DKIM và DMARC. Những trợ giúp này với khả năng gửi, nhưng không bắt buộc (không phải bởi phần lớn các máy chủ email).


11

Thật không may, có nhiều kỹ thuật lọc khác nhau và một số nhà cung cấp thư lớn sẽ không xuất bản những gì họ sử dụng và / hoặc những gì trọng lượng được đưa ra cho các thử nghiệm / bộ lọc khác nhau, vì vậy biết cách vượt qua là khó khăn. Về cơ bản, thư rác đã khiến các ISP và người dùng rơi vào tình huống đôi khi gây khó khăn cho các tin nhắn hợp pháp như vậy (đặc biệt là các tin nhắn hàng loạt như bản tin của bạn). Tôi không còn coi email là phương thức vận chuyển nửa tin cậy mà nó từng có.

Để bớt tiêu cực hơn một chút và hữu ích hơn ... Vì bạn đang gặp vấn đề cụ thể với một khách hàng cụ thể, có thể có những điều mà chương trình có thể nói với bạn. Tôi không biết cụ thể về triển vọng vì tôi không sử dụng nó ở bất cứ đâu, nhưng nhiều bộ lọc thư đưa các tiêu đề vào thư để liệt kê các bộ lọc được sử dụng, kết quả là gì và trọng số được đưa ra cho bộ lọc đó là gì. Vì vậy, nếu bạn nhìn vào nguồn đầy đủ của các tin nhắn họ đã chuyển đến các thư mục rác, bạn có thể tìm thấy manh mối hữu ích. Ví dụ: các bộ lọc dựa trên SpamAssassin tiêm các tiêu đề có dạng sau:

X-Spam-Flag: YES
X-Spam-Score: 13.371
X-Spam-Level: *************
X-Spam-Status: Yes, score=13.371 tagged_above=-10 required=5.4
    tests=[BAYES_99=3.5, FB_GET_MEDS=0.803, RCVD_IN_SORBS_WEB=0.619,
    RCVD_IN_XBL=3.033, RDNS_NONE=0.1, URIBL_AB_SURBL=1.86,
    URIBL_BLACK=1.955, URIBL_JP_SURBL=1.501]

(ví dụ đó đã được lấy từ một tin nhắn rác chính hãng trong đống rác của tôi)

Điều này không xác định mặc dù vì lọc Bayes và các phương pháp khác liên quan đến đào tạo người dùng là phổ biến - vì vậy những gì bộ lọc của bạn vượt qua và thất bại có thể khác biệt rõ rệt với những người khác mặc dù máy khách được cấu hình giống hệt nhau. Bạn có thể phải xem xét một số cửa hàng khác cho tin tức của mình (nhiều người đang cố gắng sử dụng các giao thức mạng xã hội cho việc này, với mức độ thành công khác nhau).


9

Giống như những người khác đã nói, bạn muốn tránh "trông" như một tin nhắn rác khi gửi email nhưng bạn không nhất thiết phải nói những gì sẽ hoặc sẽ không khiến bạn trông giống như thư rác vì các kỹ thuật khác nhau.

Một điều bạn có thể muốn xem xét là gửi một email văn bản đơn giản cho khách hàng của bạn cho mỗi bản tin thực sự chứa một mô tả / lời chào nhanh chóng theo sau "bấm vào đây để xem bản tin mới nhất của chúng tôi!" thông điệp; bằng cách đó bạn có thể lưu trữ thư của mình trên máy chủ web, bạn đang giảm kích thước email (và tải trên máy chủ thư của bạn) và như một phần thưởng bạn có thể kiểm tra nhật ký trên máy chủ web của mình để nhận phản hồi về số lượng khách hàng thực sự đọc tin nhắn của bạn so với xóa chúng.


Hừm. Tôi chưa bao giờ thấy một người gửi thư rác sử dụng chiến thuật đó trước đây ...
Ernie

Nói chung, văn bản thẳng có một hoặc hai liên kết hợp pháp (không được rắc nhiều tự do) có xu hướng vượt qua ... nếu không tôi không thể gửi liên kết qua email cho chính mình hoặc người khác mà không bị gắn cờ là spam. Nó giống như nói rằng bạn chưa bao giờ thấy những kẻ gửi thư rác gửi tin nhắn tức thời với "những từ bẩn thỉu" để lôi kéo mọi người trả lời. Giao thông hợp pháp cũng làm điều đó. Chìa khóa không phải là "quá spam" ... tên người dùng như bevans có lẽ không đáng ngờ bằng "hottienakenchick69", ngay cả khi nội dung giống nhau, bạn hiểu ý tôi chứ?
Bart Silverstrim

7

Giải pháp chi tiết để tránh các email được xác định là spam và / hoặc không đến người nhận

Tình huống ví dụ: Bạn có một máy chủ đang chạy một trang web PHP cho example.comnhu cầu gửi email . Và bạn nhận thấy rằng email của bạn không phải lúc nào cũng được gửi. (Vấn đề lớn nếu bạn là chủ cửa hàng và khách hàng không nhận được email sau khi mua!).

Nếu bạn làm theo tất cả các bước sau, nó sẽ giải quyết 99,9% các vấn đề. (Trước tiên tôi nghĩ rằng chỉ có thể làm một vài trong số họ và bỏ qua DKIM chẳng hạn, nhưng cuối cùng tất cả chúng đều được yêu cầu để giải quyết tất cả các vấn đề tôi gặp phải).

  1. Trước hết, ai đang gửi email?

    Khi mã PHP của bạn gửi email, nó thường có chức năng PHP nổi tiếng mail(...). Nhưng chức năng này làm gì, dưới mui xe? Hãy chạy một test.phptrang có chứa <?php echo ini_get('sendmail_path'); ?>. Bạn sẽ nhận được ví dụ : /usr/sbin/sendmail -t -i. Tin tốt, bây giờ chúng tôi biết chương trình nào thực sự xử lý các email!
    Bây giờ một thông tin khó khăn: tên sendmailcó thể là các chương trình khác nhau . Ngay cả khi bạn thấy sendmailtrong bước trước, bạn có thể đã gửi sendmail hoặc postfix hoặc exim hoặc qmail, v.v. Hãy làm đi dpkg -S /usr/sbin/sendmail. Câu trả lời là postfix: /usr/sbin/sendmail, ok điều này có nghĩa là chúng tôi đã postfixcài đặt .

  2. Nhìn vào tệp nhật ký /var/mail/www-datađể biết email nào chưa được gửi chính xác và tại sao. Điều này có thể hữu ích cho các bước tiếp theo.

  3. Như đã đề cập trên blog của Jeff Atwood , đã đến lúc xem xét các bản ghi PTR ngược. (Thêm chi tiết để được thêm vào đây).

  4. Thêm dòng sau vào tệp cấu hình postfix /etc/postfix/main.cf:

    inet_protocols=ipv4
    

    Sau đó khởi động lại postfix với service restart postfix. Tại sao? Bởi vì tôi đã gặp vấn đề như thế này khi người nhận là gmail:

    Hệ thống của chúng tôi đã phát hiện ra rằng thông báo này không 550-5.7.1 không đáp ứng các nguyên tắc gửi IPv6 liên quan đến các bản ghi PTR và xác thực 550-5.7.1. Vui lòng xem lại 550-5.7.1 https://support.google.com/mail/?p=ipv6_authentication_error để biết thêm thông tin 550 5.7.1.

    Các giải pháp dễ nhất là sau đó chuyển postfixđến IPv4 duy nhất, do đó bước 4 này (mà có thể là không cần thiết cho bạn?).

  5. Bản ghi DNS SPF . Để chứng minh rằng bạn được phép gửi email từ đó @example.com, bạn có thể thêm bản ghi SPF trong bản ghi DNS của tên miền example.com. Tôi đã tìm thấy ở đâu đó The DNS record type 99 (SPF) has been deprecated, vì vậy chúng tôi sử dụng một bản ghi TXT thay thế. Hãy thêm bản ghi này dưới dạng bản ghi DNS TXT (xem thêm ghi chú 1) :

    v=spf1 a mx include:_spf.google.com include:sendgrid.net ~all
    

    Tại sao những điều này bao gồm? Bởi vì máy chủ của tôi sẽ không phải là người duy nhất gửi email từ @ example.com! Tôi đã định cấu hình Gmail để Gửi thư dưới dạng contact@example.com ( xem ảnh chụp màn hình tại đây ), bằng cách sử dụng nhà cung cấp SMTP đáng tin cậy Sendgrid . Nếu tôi không thêm những thứ này include:, Gmail sẽ không được phép gửi email từ đó @example.com.

  6. Chữ ký số DKIM . Như đã đề cập ở đây , mục tiêu của DKIM là đảm bảo rằng nội dung thư không bị giả mạo trong quá trình truyền. Đây là quá trình cài đặt trong Ubuntu (hướng dẫn hữu ích ở đây nữa):

    • apt-get install opendkim opendkim-tools

    • Tạo các khóa (bạn cũng có thể tạo các khóa và bản ghi DNS TXT có liên quan với http://dkimcore.org/tools/ ):

      mkdir /etc/opendkim
      cd /etc/opendkim
      opendkim-genkey -t -s mail -d example.com
      
    • Hãy đặt cái này vào /etc/opendkim.conf:

      Syslog                 yes
      Domain                 *
      KeyFile                /etc/opendkim/mail.private
      Selector               mail
      AutoRestart            yes
      Background             yes
      Canonicalization       relaxed/relaxed
      DNSTimeout             5
      Mode                   sv
      SubDomains             no
      

      cái này trong /etc/default/opendkim:

      SOCKET="inet:8891@localhost" # Ubuntu default - listen on loopback on port 8891
      

      và cuối cùng thêm phần này vào cuối tệp cấu hình postfix /etc/postfix/main.cf:

      # DKIM
      milter_default_action = accept
      milter_protocol = 2
      smtpd_milters = inet:localhost:8891
      non_smtpd_milters = inet:localhost:8891
      
    • Bây giờ, hãy thêm khóa công khai (tìm thấy /etc/opendkim/mail.txt) vào bản ghi DNS của tên miền của bạn:

      mail._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=OqYHd...waPaQAX"
      

      Đây là giao diện với nhà đăng ký của tôi Namelynx:

    • Bước cuối cùng cho DKIM: khởi động lại dịch vụ thư với service restart opendkim ; service restart postfix.

  7. Kiểm tra nếu mọi thứ hoạt động. Phương pháp đơn giản nhất là gửi email qua PHP tới auth-results@verifier.port25.com(công cụ rất hữu ích này được cung cấp bởi Port25 Solutions):

    $emailfrom = "Example <contact@example.com>";
    $headers  = "MIME-Version: 1.0 \n";
    $headers .= "Content-Transfer-Encoding: 8bit \n";
    $headers .= "Content-type: text/plain; charset=utf-8\n";
    $headers .= "Reply-To: " . $emailfrom . "\n";
    $headers .= "From: " . $emailfrom . "\n";
    $headers .= "Bcc: example@gmail.com\n";
    mail("check-auth@verifier.port25.com", "Hello", "Hello!", $headers);
    

    Sau đó, xem câu trả lời của công cụ này, nó sẽ trông như thế này:

    ==========================================================
    Summary of Results
    ==========================================================
    SPF check:          pass
    DKIM check:         pass
    SpamAssassin check: ham
    

    Dịch vụ mail-tester.com cũng hữu ích.

  8. (Tùy chọn) Hãy thử postmaster.google.com. Tôi đã sử dụng nó nhưng tôi không nhớ nó có giúp ích hay không.

  9. Nếu nó vẫn không hoạt động , một giải pháp có thể là thuê ngoài email với một giải pháp chuyên nghiệp, để tránh ngày và đêm (không thành công) gỡ lỗi. Đây là một bài viết tốt về điều này. Đây là một câu trích dẫn: "Gửi email từ ứng dụng của bạn có thể s ***. Một nửa thời gian, các tin nhắn được gửi từ máy chủ của bạn chỉ bị đổ vào thư mục rác của người nhận." rằng tôi buồn bã phát hiện ra sự thật, sau nhiều tuần điều chỉnh.


Ghi chú bổ sung:

(1)

-all : Fail: All mail servers not listed in the SPF record are explicitly not authorized to send mail using the sender’s domain.
~all : Soft Fail: All mail servers not listed in the SPF record are not authorized to send mail using the sender’s domain, but the owner of the domain is unwilling to make a strong assertion to that effect.
?all : Neutral: The domain controller cannot or does not want to assert whether or not all mail servers not listed in the SPF record are authorized to send mail using the sender’s domain.
+all : Pass: All mail servers are authorized to send mail on behalf of the sender’s domain.

6

Công việc kinh doanh trực tuyến của tôi gặp vấn đề với các email xác nhận đơn hàng sẽ bị spam hoặc thậm chí không được gửi (bị xa lánh qua các máy chủ thư). Đây là những email "đây là bản tóm tắt đơn đặt hàng" đơn giản với một liên kết đến tên miền của trang web của chúng tôi. Chúng tôi cuối cùng đã mua một vài tài khoản Google Apps cho doanh nghiệp của tôi. Bạn có thể thiết lập một trong số chúng để hoạt động như máy chủ SMTP của mình. Có Google là người gửi thư của chúng tôi đã dừng tất cả những vấn đề này.

Theo như các bản tin email, chắc chắn sử dụng một dịch vụ xử lý lựa chọn / đăng ký cho bạn. Sử dụng bất kỳ ai khác ngoài dịch vụ để gửi thư hàng loạt có thể sẽ khiến bạn bị cấm.


Đó là một cách giải quyết. Một giải pháp thích hợp sẽ là khắc phục hệ thống bị lỗi của bạn và đảm bảo bạn ít nhất có bản ghi SPF thích hợp trong DNS.
John Gardeniers

3
Trên thực tế, nếu ISP máy chủ thư của bạn bị gắn cờ đen là thư rác, chúc may mắn với điều đó. Chúng tôi đã ở trên Rackspace tại thời điểm đó. Sử dụng Google làm SMTP giúp vì Google đảm bảo rằng nó không bị liệt kê trong danh sách đen.
Chris K

2

Có một hướng dẫn mới đã được xuất bản trên Email Hộp thư đến

Toàn diện nhất tôi từng thấy. Danh sách kiểm tra gồm 43 điểm khác nhau bao gồm mọi vòi về cách tránh bị đánh dấu là spam. Đó là cập nhật liên tục.

Từ thiết lập DNS, Định cấu hình xác thực, Thiết lập giám sát danh tiếng, Giảm tỷ lệ thoát, Kiểm tra nội dung email của bạn, v.v.

Đứng đầu về độ bao phủ của mọi thứ bởi ZeroBounce.NET

https://www.zerobounce.net/guide-to-improve-inbox-and-delivery.html


Hiện tại, bài viết này về cơ bản chỉ là một liên kết. Để đảm bảo câu trả lời vẫn hữu ích ngay cả khi liên kết bị hỏng, vui lòng chỉnh sửa nó để bao gồm các thông tin liên quan.
lắng
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.