Lệnh Helo bị từ chối: cần Lỗi tên máy chủ đủ điều kiện


10

Máy chủ thư của tôi nằm trong danh sách đen gây ra thư rác. Tôi cấu hình lại postfix. Sau đó, khách hàng của tôi gặp lỗi này, họ không thể gửi email.

404 4.5.2 <PLLAMNAZIFE>: Helo command rejected: need fully-qualified hostname

Trong Mail.log:

postfix/smtpd[9853]: NOQUEUE: reject: RCPT from unknown[xx.xx.xx.xx]: 
404 4.5.2 <PLLAMNAZIFE>: Helo command rejected: need fully-qualified hostname; 
from=<info@domain.com> to=<mail@mail.com> proto=ESMTP helo=<PLLAMNAZIFE>

Trong main.cf của tôi:

   # rules restrictions
smtpd_client_restrictions =
        permit_sasl_authenticated 
smtpd_helo_restrictions =
        permit_mynetworks,
        reject_non_fqdn_helo_hostname,
        reject_invalid_helo_hostname,
        permit
smtpd_sender_restrictions =
smtpd_recipient_restrictions = 
        permit_sasl_authenticated, 
        reject_unauth_pipelining,
        reject_non_fqdn_recipient,
        reject_unknown_recipient_domain,
        permit_mynetworks, 
        reject_unauth_destination, 
        reject_invalid_hostname, 
        reject_non_fqdn_sender, 
        reject_unknown_sender_domain,
        reject_rhsbl_client blackhole.securitysage.com, 
        reject_rhsbl_sender blackhole.securitysage.com, 
        reject_rbl_client zen.spamhaus.org, 
        reject_rbl_client bl.spamcop.net, 
        reject_rbl_client blackholes.easynet.nl, 
        reject_rbl_client cbl.abuseat.org, 
        reject_rbl_client proxies.blackholes.wirehub.net, 
        reject_rbl_client dnsbl.njabl.org

smtpd_helo_required = yes
unknown_local_recipient_reject_code = 550
disable_vrfy_command = yes
smtpd_data_restrictions = reject_unauth_pipelining

Câu trả lời:


17

Thông báo lỗi đó xuất hiện do ứng dụng thư khách chỉ gửi một tên máy chủ trống ("PLLAMNAZIFE") chứ không phải là tên máy chủ đủ điều kiện (ví dụ: "PLLAMNAZIFE.example.com") trong HELO/ EHLOmột phần của giao dịch SMTP và máy chủ Postfix của bạn được cấu hình để từ chối thư đó.

Nhiều chương trình ứng dụng thư khách không gửi tên máy chủ hợp lệ, đủ điều kiện, đủ điều kiện trong HELO/ EHLO. Vì bạn phải chấp nhận thư đó từ việc trả tiền cho khách hàng và có ít hoặc không có quyền kiểm soát đối với ứng dụng thư khách nào họ sử dụng (và vì HELOséc không thực sự được sử dụng nhiều trong việc chặn thư rác), nên tốt nhất là vô hiệu hóa HELOséc.

Để tắt HELOkiểm tra, hãy xóa hai dòng sau khỏi cấu hình Postfix của bạn:

    reject_non_fqdn_helo_hostname,
    reject_invalid_helo_hostname,

Thậm chí tốt hơn, loại bỏ toàn bộ smtpd_helo_restrictions = ...quy tắc và smtpd_helo_required = yes.


cảm ơn bạn. Tôi đã vô hiệu hóa các dòng đó và bây giờ nó hoạt động. Tôi có thể gửi với mozilla thunderbird trên máy tính của tôi. Nhưng khách hàng của tôi không thể gửi bất kỳ thư nào có triển vọng trên máy tính của họ. Có cách nào để khắc phục vấn đề này với cấu hình kiểm tra Helo không?
RedLEON

nếu bạn đã xóa séc helo và khách hàng của bạn vẫn không thể gửi thư thì rất có thể đó là một số vấn đề khác, với một lý do từ chối khác trong nhật ký thư.
cas

Họ có thể gửi ngay bây giờ. Nhưng tôi muốn định cấu hình máy chủ của mình an toàn
RedLEON

2
Điều gì làm cho bạn nghĩ rằng kiểm tra helo tăng cường bảo mật?
cas

8

Bạn có thể bỏ qua các hạn chế của Helo cho người dùng được xác thực bằng cách chèn permit_sasl_authenticatedtrước khi từ chối các quy tắc trong smtpd_helo_restrictionsdanh sách:

smtpd_helo_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_non_fqdn_helo_hostname,
    reject_invalid_helo_hostname,
    permit

1

Biến tên máy chủ cho máy chủ thư của bạn không hợp lệ.

Hãy thử và thay đổi giá trị của myhostnametrường từ /etc/postfix/main.cftừ giá trị mặc định tên máy chủ của bạn (ví dụ yourwebsite.comhay mail.yourwebsite.com)


0

Tôi đã mất nhiều thời gian để làm việc này

Tôi đang chạy một máy chủ centos và nhận được email bị trả lại báo cáo lỗi "Lệnh Helo bị từ chối: cần tên máy chủ đủ điều kiện"

Tôi đã kết thúc việc kích hoạt "Tham chiếu / etc / mailhelo cho SMTP Helo [?]" Gửi cái này nằm dưới "trình quản lý cấu hình exim" rồi "Miền và IPS" trên máy chủ VPS

Sau đó, tôi đã sử dụng putty và từ xa lên máy chủ và chạy lệnh này "sudo nano / etc / mailhelo"

Trong tệp đó tôi đã tạo các tên miền example.com: example.com sub.example.com: example.com example.net: example.net addon.example.net: example.net *: hostname.example.com

(theo http://docs.cpanel.net/twiki/bin/view/AllDocumentation/WHMDocs/EimumDifferentIps )

Tôi đã thử gửi email và tất cả đều có vẻ tốt


0

Đó không phải là máy chủ email của bạn từ chối máy khách, mà là máy chủ SMTP bên ngoài từ chối thư từ máy chủ SMTP của bạn, vấn đề là máy chủ SMTP của bạn không gửi tên FQDN trong tin nhắn helo khi liên lạc với các máy chủ khác.

Điều này thường có thể được giải quyết bằng cách thêm IP công cộng vào tệp lưu trữ với FQDN vào tệp / etc / hosts. Như thế này:

1.1.1.1 máy chủ lưu trữ.domain.com

Máy chủ lưu trữ 127.0.0.2 host.domain.com

Trong đó 1.1.1.1 là IP chính thức.

Tôi gặp vấn đề này và không có ích gì khi DNS hoạt động cả hai chiều tiến / lùi trên IP công cộng và tôi chỉ có máy chủ tên riêng của mình trong /etc/resolv.conf. Ngay cả tên máy chủ -f cũng trả về đúng. Tôi vẫn phải đặt ip và tên máy chủ cho / etc / hosts để sendmail thực sự sử dụng FQDN thay vì chỉ tên máy chủ ngắn.

Nếu bạn telnet đến máy chủ của mình trên cổng 25, hãy đảm bảo rằng đường 220 nói FQDN chứ không chỉ máy chủ. Như thế này:

220 host.domain.com Gửi thư ESMTP 8.15.2 / 8.15.2 / SuSE Linux 0.8; Thứ Hai, ngày 9 tháng 7 năm 2018 18:19:48 +0200


0

Đôi khi một máy chủ có một 'trục trặc'. Nguyên nhân do các cuộc tấn công thư.

Đầu tiên hãy thử khởi động lại máy chủ. Hơn đặt thư trong máy chủ tắt sau 15 giây trở lại.

Đôi khi, lệnh cmd bị từ chối là do thư không thể tải các định nghĩa chống vi-rút mới; như AmaVis được sử dụng trên các máy chủ của Apple. Khởi động lại và tắt / trên ứng dụng thư trong máy chủ sẽ giải quyết vấn đề này. Chúc mừng.


0

Tôi đã nhận được tên miền không phải khi chạy hostname -f. Vì vậy, tôi đã googled cho không có tên miền trong "tên máy chủ -f" . Hóa ra tôi cần chỉnh sửa /etc/hostname(Tôi trên Debian) để giải quyết vấn đề. Sau đó cả hai hostname -fhelođang sử dụng tên máy chủ đủ điều kiện.


0

Nếu bạn muốn từ chối Helo với tên máy chủ xấu, nhưng vẫn cho phép người dùng của bạn có thể gửi ngay cả khi khách hàng của họ không gửi FQDN với Helo, bạn có thể để những dòng này thay thế khi bạn có chúng:

reject_non_fqdn_helo_hostname,
reject_invalid_helo_hostname,

Nhưng hãy chắc chắn rằng chúng được đi trước bởi:

permit_sasl_authenticated,

Bằng cách này, khi một trong những người dùng của bạn xác thực, họ sẽ được phép gửi email bất kể tính hợp lệ của lệnh HELO của họ và chỉ các kết nối không được xác thực (chỉ nên là các máy chủ SMTP khác chuyển tiếp thư cho bạn, bởi vì bạn rõ ràng yêu cầu tất cả người dùng của bạn xác thực, phải không?) sẽ phải tuân theo yêu cầu HelO hợp lệ.

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.