Cài đặt Postfix của tôi đang gửi thư rác; Làm thế nào để ngăn chặn nó?


7

Kể từ vài ngày, web / mailserver của tôi (centos 6.4) đang gửi các gói thư rác theo nhóm và chỉ dừng dịch vụ postfix là chấm dứt nó.

SMPT được thiết lập để chỉ chấp nhận các kết nối qua ssl và sử dụng tên người dùng / pwd. Và tôi đã thay đổi mật khẩu của tài khoản email bị nghi ngờ (bị nghi ngờ).

Email đã được thiết lập thông qua iRedMail.

Bất kỳ trợ giúp về xác định và dừng điều này là nhiều hơn thì hoan nghênh!

THÊM: Một số trích đoạn nhật ký:

Mar 23 05:01:52 MyServer postfix/smtp[9494]: 4E81026038: to=<bet@magiccablepc.com>, relay=mail.suddenlinkmail.com[208.180.40.132]:25, delay=3, delays=0.07/0/2.4/0.5, dsn=2.0.0, status=sent (250 Message received: 20140323040153.YPML21660.txedge-vm03.suddenlink.net@MyServer.org)
Mar 23 05:02:01 MyServer postfix/smtp[9577]: 209BA26067: to=<gino.c@bigpond.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=14, delays=12/0/0/2, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as B654226078)
Mar 23 05:02:01 MyServer postfix/smtp[9495]: 8278726077: to=<harry@gunship.org>, relay=mx-biz.mail.am0.yahoodns.net[98.139.171.245]:25, delay=0.88, delays=0.25/0/0.47/0.14, dsn=4.7.1, status=deferred (host mx-biz.mail.am0.yahoodns.net[98.139.171.245] said: 421 4.7.1 [TS03] All messages from [IPADDRESS] will be permanently deferred; Retrying will NOT succeed. See http://postmaster.yahoo.com/421-ts03.html (in reply to MAIL FROM command))

Một tiêu đề của một báo cáo không thể gửi được:

Return-Path: <MAILER-DAEMON>
Delivered-To: info@fotografieluna.be
Received: from localhost (icantinternet.org [127.0.0.1]) 
        by icantinternet.org (Postfix) with ESMTP id 4669E25D9D 
        for <info@fotografieluna.be>; Mon, 24 Mar 2014 14:20:15 +0100 (CET)
X-Virus-Scanned: amavisd-new at icantinternet.org
X-Spam-Flag: YES
X-Spam-Score: 9.501
X-Spam-Level: *********
X-Spam-Status: Yes, score=9.501 tagged_above=2 required=6.2 
        tests=[BAYES_99=3.5, BAYES_999=0.2, RAZOR2_CF_RANGE_51_100=0.5, 
        RAZOR2_CF_RANGE_E8_51_100=1.886, RAZOR2_CHECK=0.922, RDNS_NONE=0.793,  
        URIBL_BLACK=1.7] autolearn=no
Received: from icantinternet.org ([127.0.0.1]) 
        by localhost (icantinternet.org [127.0.0.1]) (amavisd-new, port 10024) 
        with ESMTP id FOrkYnmugXGk for <info@fotografieluna.be>; 
        Mon, 24 Mar 2014 14:20:13 +0100 (CET)
Received: from spamfilter2.webreus.nl (unknown [46.235.46.231]) 
        by icantinternet.org (Postfix) with ESMTP id D15BA25D14 
        for <info@fotografieluna.be>; Mon, 24 Mar 2014 14:20:12 +0100 (CET)
Received: from spamfilter2.webreus.nl (localhost [127.0.0.1])  
        by spamfilter2.webreus.nl (Postfix) with ESMTP id 7FB2EE78EFF 
        for <info@fotografieluna.be>; Mon, 24 Mar 2014 14:20:13 +0100 (CET)
X-Virus-Scanned: by SpamTitan at webreus.nl
Received: from mx-in-2.webreus.nl (mx-in-2.webreus.nl [46.235.44.240]) 
        by spamfilter2.webreus.nl (Postfix) with ESMTP id 3D793E78E5A 
        for <info@fotografieluna.be>; Mon, 24 Mar 2014 14:20:09 +0100 (CET)
Received-SPF: None (mx-in-2.webreus.nl: no sender authenticity 
  information available from domain of 
  MAILER-DAEMON@athosian.udag.de) identity=pra; 
  client-ip=62.146.106.25; receiver=mx-in-2.webreus.nl; 
  envelope-from=""; x-sender="MAILER-DAEMON@athosian.udag.de"; 
  x-conformance=sidf_compatible
Received-SPF: None (mx-in-2.webreus.nl: no sender authenticity 
  information available from domain of 
  postmaster@athosian.udag.de) identity=mailfrom; 
  client-ip=62.146.106.25; receiver=mx-in-2.webreus.nl; 
  envelope-from=""; x-sender="postmaster@athosian.udag.de"; 
  x-conformance=sidf_compatible
Received-SPF: None (mx-in-2.webreus.nl: no sender authenticity 
  information available from domain of 
  postmaster@athosian.udag.de) identity=helo; 
  client-ip=62.146.106.25; receiver=mx-in-2.webreus.nl; 
  envelope-from=""; x-sender="postmaster@athosian.udag.de"; 
  x-conformance=sidf_compatible
Received: from athosian.udag.de ([62.146.106.25]) 
  by mx-in-2.webreus.nl with ESMTP; 24 Mar 2014 14:20:03 +0100
Received: by athosian.udag.de (Postfix) 
        id 3B16E54807C; Mon, 24 Mar 2014 14:19:59 +0100 (CET)
Date: Mon, 24 Mar 2014 14:19:59 +0100 (CET)
From: MAILER-DAEMON@athosian.udag.de (Mail Delivery System)
Subject: ***Spam*** Undelivered Mail Returned to Sender
To: info@fotografieluna.be
Auto-Submitted: auto-replied
MIME-Version: 1.0
Content-Type: multipart/report; report-type=delivery-status;  
        boundary="36D9C5488E5.1395667199/athosian.udag.de"
Content-Transfer-Encoding: 7bit
Message-Id: <20140324131959.3B16E54807C@athosian.udag.de>

1
Vui lòng thêm các tiêu đề có liên quan của một trong các thư rác. Đó thường sẽ là tất cả mọi thứ bắt đầu với Received.
Jenny D

Cảm ơn, nhưng bạn có thể vui lòng thêm các tiêu đề từ một trong các email spam không? Nhật ký cho thấy máy chủ của bạn đang cố gửi thư rác, chúng không hiển thị nơi nó đến. Đó là lý do tại sao các tiêu đề trong email là cần thiết.
Jenny D

Đã thêm một số tiêu đề thư!
Sinh

Các tiêu đề thư bạn bao gồm là từ một tin nhắn bị trả lại, không phải là một tin nhắn rác. Họ chỉ hiển thị thông tin từ hệ thống từ chối thư. Chúng tôi cần thông tin từ một trong những thư đi ra từ hệ thống của bạn, chứ không phải những thư gửi lại.
Jenny D

1
Bạn không cần các tiêu đề đi. Chỉ cần grep nhật ký của bạn (ví dụ) 4E81026038và kiểm tra xem postfix đã nhận nó như thế nào và bởi ai.
Shadur

Câu trả lời:


12

Pravin cung cấp một số điểm chung tốt, nhưng không thực sự giải thích bất kỳ vấn đề nào trong số chúng và không giải quyết các vấn đề thực tế có thể xảy ra của bạn .

Trước tiên, bạn cần tìm hiểu làm thế nào postfix nhận được những tin nhắn đó và tại sao nó chọn chuyển tiếp chúng (hai câu hỏi rất có thể liên quan).

Cách tốt nhất để làm điều đó là bằng cách xem ID tin nhắn của bất kỳ một trong các tin nhắn và sau đó lấy mail.logtệp cho tất cả các mục nhật ký liên quan đến nó. Điều này sẽ cho bạn biết ít nhất là thông điệp đến từ đâu và hậu tố đã làm gì với nó cho đến khi nó được chăm sóc và đi vào thế giới. Đây là một đoạn trích mẫu (đã được xử lý lại):

Mar 26 00:51:13 vigil postfix/smtpd[9120]: 3B7085E038D: client=foo.bar.com[1.2.3.4]
Mar 26 00:51:13 vigil postfix/cleanup[9159]: 3B7085E038D: message-id=<------------@someserver>
Mar 26 00:51:13 vigil postfix/qmgr[5366]: 3B7085E038D: from=<foo@bar.com>, size=456346, nrcpt=2 (queue active)
Mar 26 00:51:13 vigil postfix/lmtp[9160]: 3B7085E038D: to=<fred@someplace.else>, relay=127.0.0.1[127.0.0.1]:10024, delay=0.3, delays=0.11/0/0/0.19, dsn=2.0.0, status=sent (250 2.0.0 Ok, id=04611-19, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 6EA115E038F)
Mar 26 00:51:13 vigil postfix/qmgr[5366]: 3B7085E038D: removed

Điều này cho tôi biết những điều sau đây:

  1. Tin nhắn đến từ foo.bar.com, một máy chủ có địa chỉ IP 1.2.3.4 tự gọi mình là foo.bar.com
  2. (Ngụ ý bởi việc thiếu cảnh báo) Theo DNS chuyển tiếp và đảo ngược, địa chỉ đó thực sự khớp với tên đó.
  3. Thông báo này dành cho người dùng có tên fred@someplace.else, mà máy chủ quyết định là địa chỉ đích được chấp nhận.
  4. Theo cấu hình của nó, máy chủ thư đã chuyển tiếp thư qua 127.0.0.1:10024(bộ lọc thư rác / vi-rút của chúng tôi) để xử lý thêm.
  5. Bộ lọc cho biết "Được rồi, tôi sẽ xếp hàng này dưới dạng tin nhắn với ID 6EA115E038F và xử lý nó từ đây."
  6. Nhận được xác nhận này, máy chủ chính tuyên bố nó đã được thực hiện và xóa tin nhắn gốc khỏi hàng đợi.

Bây giờ, khi bạn biết cách thông báo vào hệ thống, bạn có thể bắt đầu tìm hiểu vấn đề nằm ở đâu.

  • Nếu nó đến từ nơi khác và được chuyển tiếp đến một nơi hoàn toàn khác, postfix hiện đang hoạt động như một rơle mở. Điều này rất, rất tệ và bạn nên thắt chặt smtpd_recipient_restrictionssmtpd_client_restrictionscài đặt trong /etc/postfix/main.cf.

  • Nếu xuất phát từ localhostđó, rất có thể một người dùng webhosting hoặc người khác đã bị xâm phạm với tập lệnh php gửi thư rác theo yêu cầu. Sử dụng findlệnh để tìm kiếm các tệp .php gần đây đã được thêm hoặc thay đổi, sau đó xem xét kỹ bất kỳ tên đáng ngờ nào.

Bất cứ điều gì cụ thể hơn sẽ phụ thuộc quá nhiều vào kết quả của cuộc điều tra ở trên, vì vậy thật vô nghĩa khi cố gắng xây dựng. Tôi sẽ để lại cho bạn lời khuyên chung chung hơn là ít nhất là cài đặt và cấu hình postgrey trong cơ hội sớm nhất.


Cảm ơn Shadur, bạn lời khuyên dẫn đến giải pháp! Nó ở đâu đó bên trong một trong những cài đặt wordpress trên máy chủ của tôi. Vẫn đang cố gắng tìm ra chính xác cái gì / ở đâu, nhưng vấn đề về thư đã được giải quyết và trang web nằm trong khu vực cách ly! Vì vậy, cảm ơn!
Sinh

Lưu ý, bạn có thể định cấu hình postfix để từ chối quyền truy cập thư đến người dùng cụ thể. Giả sử rằng setuids dịch vụ webhosting của bạn để chủ sở hữu mỗi cá nhân quan website của thành mà sẽ cho phép bạn cho phép các trang web để duy trì hoạt động trong khi vẫn bảo vệ mail của bạn - mặc dù cho dù bạn muốn cho phép một trang web bị tổn hại được biết đến duy trì hoạt động tại tất cả ở nơi đầu tiên là một bản án gọi.
Shadur

1
Cảm ơn, đó chắc chắn là một mẹo hữu ích! Tuy nhiên, trong vấn đề cụ thể này, tôi chọn giữ trang web ngoại tuyến cho đến khi được chứng minh là sạch!
Sinh

@borniet Thực hành tốt nhất trong mọi trường hợp.
Shadur

1
  • Làm cho PHP gửi thư thông qua cài đặt postfix cục bộ của bạn và không trực tiếp trên internet hoặc thông qua máy chủ lưu trữ web.

  • Vui lòng kiểm tra bất kỳ thư kích hoạt tập lệnh php.

  • Làm cho máy chủ thư gửi Helo (EHLO) với FQDN chính xác của nó

  • Đừng cấu hình máy chủ của bạn là Open Relay.

  • Triển khai DKIM ký email gửi đi

  • Xuất bản bản ghi SPF cho tên miền của bạn cho biết rằng máy chủ của bạn là máy chủ lưu trữ hợp pháp cho tên miền của bạn

  • Thêm máy chủ của bạn vào DNSWL.ORG


Hãy bắt đầu với sự khởi đầu: Làm cho PHP gửi thư thông qua cài đặt postfix cục bộ của bạn và không trực tiếp trên internet hoặc thông qua máy chủ lưu trữ web. Vui lòng kiểm tra bất kỳ thư kích hoạt tập lệnh php. Làm thế nào để tôi làm những điều này?
Sinh

Bạn không thể thực hiện trước - bất kỳ tập lệnh php nào cũng có khả năng chỉ định máy chủ sẽ sử dụng trong khi gửi email - và tập lệnh sau sẽ liên quan đến việc kiểm tra thủ công mọi tập lệnh php trên máy chủ của bạn.
Shadur

1
@Shadur bạn có thể. Iptables cho phép kết hợp dựa trên người dùng gửi. Bạn có thể đặt người dùng ALLOWtrên 'postfix' vào cổng 25, sau đó từ chối mọi thứ khác.
Patrick
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.