Perintah Helo ditolak: perlu Kesalahan nama host yang memenuhi syarat


10

Server email saya ada dalam daftar hitam penyebab spam. Saya mengkonfigurasi ulang postfix. Setelah itu, Pelanggan saya mendapatkan kesalahan ini mereka tidak dapat mengirim email.

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

Di 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>

Di main.cf saya:

   # 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

Jawaban:


17

Pesan kesalahan itu muncul karena klien email hanya mengirim nama host kosong ("PLLAMNAZIFE") daripada nama host yang sepenuhnya memenuhi syarat (mis. "PLLAMNAZIFE.example.com") di HELO/ EHLObagian dari transaksi SMTP, dan server Postfix Anda dikonfigurasi untuk menolak surat semacam itu.

Banyak program klien e-mail yang tidak mengirimkan nama host yang diformat dengan benar, berkualifikasi penuh, dan valid di HELO/ EHLO. Karena Anda harus menerima email dari pelanggan yang membayar dan memiliki sedikit atau tidak ada kontrol atas apa yang digunakan klien email (dan karena HELOcek tidak terlalu banyak digunakan dalam memblokir spam), mungkin yang terbaik adalah menonaktifkan HELOcek.

Untuk menonaktifkan HELOpemeriksaan, hapus dua baris berikut dari konfigurasi Postfix Anda:

    reject_non_fqdn_helo_hostname,
    reject_invalid_helo_hostname,

Lebih baik lagi, hapus seluruh smtpd_helo_restrictions = ...aturan dan smtpd_helo_required = yes.


Terima kasih. Saya menonaktifkan garis itu dan berfungsi sekarang. Saya dapat mengirim dengan mozilla thunderbird di pc saya. Tetapi pelanggan saya tidak dapat mengirim email apa pun dengan pandangan di komputer mereka. Apakah ada cara untuk memperbaiki masalah ini dengan HELO check config?
RedLEON

jika Anda telah menghapus cek helo dan pelanggan Anda masih tidak dapat mengirim surat maka kemungkinan besar ada masalah lain, dengan alasan penolakan yang berbeda di log surat.
cas

Mereka dapat mengirim sekarang. Tapi saya ingin mengkonfigurasi server saya sebagai aman
RedLEON

2
apa yang membuat Anda berpikir bahwa pemeriksaan helo meningkatkan keamanan?
cas

8

Anda dapat melewati batasan HELO untuk pengguna yang diautentikasi dengan menyisipkan permit_sasl_authenticatedsebelum menolak aturan dalam smtpd_helo_restrictionsdaftar:

smtpd_helo_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_non_fqdn_helo_hostname,
    reject_invalid_helo_hostname,
    permit

1

Variabel nama host untuk server email Anda tidak valid.

Coba dan ubah nilai myhostnamebidang dari /etc/postfix/main.cfdari nilai default ke nama host Anda (mis. yourwebsite.comAtau mail.yourwebsite.com)


0

Saya butuh waktu lama untuk menyelesaikannya

Saya menjalankan server centos dan mendapatkan email yang memantul kembali melaporkan kesalahan "Perintah Helo ditolak: perlu nama host yang sepenuhnya memenuhi syarat"

Saya akhirnya mengaktifkan "Referensi / etc / mailhelo untuk SMTP HELO keluar [?]" Ini terletak di bawah "exim configuration manager" lalu "Domains and IPS" pada server VPS

Kemudian saya menggunakan dempul dan remotes ke server dan menjalankan perintah ini "sudo nano / etc / mailhelo"

Dalam file itu saya membuat domain example.com: example.com sub.example.com: example.com example.net: example.net addon.example.net: example.net *: hostname.example.com

(sesuai http://docs.cpanel.net/twiki/bin/view/AllDocumentation/WHMDocs/EximDifferentIps )

Saya telah menguji pengiriman email dan sejauh ini semuanya terlihat bagus


0

Bukan server email Anda yang menolak klien, tetapi server SMTP eksternal yang menolak pesan dari server SMTP Anda, masalahnya adalah server SMTP Anda tidak mengirimkan nama FQDN-nya di pesan helo saat berkomunikasi dengan server lain.

Ini biasanya dapat diselesaikan dengan menambahkan IP publik ke file host dengan FQDN ke file / etc / hosts. Seperti ini:

1.1.1.1 host host.domain.com

127.0.0.2 host host.domain.com

Di mana 1.1.1.1 adalah IP resmi.

Saya punya masalah ini dan itu tidak membantu bahwa DNS bekerja dua arah maju / mundur pada IP publik dan saya hanya memiliki nameserver saya sendiri di /etc/resolv.conf. Bahkan nama host -f mengembalikan yang benar. Saya masih harus meletakkan ip dan nama host ke / etc / hosts agar sendmail benar-benar menggunakan FQDN, bukan hanya nama host pendek.

Jika Anda telnet ke server Anda pada port 25, pastikan baris 220 mengatakan FQDN dan bukan hanya host. Seperti ini:

220 host.domain.com ESMTP Sendmail 8.15.2 / 8.15.2 / SuSE Linux 0.8; Senin, 9 Jul 2018 18:19:48 +200


0

Terkadang server memiliki 'cegukan'. Misalnya disebabkan oleh serangan surat.

Pertama coba restart server. Daripada mengatur mail di server ke off setelah 15 detik aktif kembali

Kadang-kadang HELO cmd ditolak disebabkan karena surat tidak dapat memuat definisi anti-virus baru; seperti AmaVis yang digunakan pada server Apple. Restart dan mematikan / pada aplikasi email di server menyelesaikan masalah ini. Bersulang.


0

Saya mendapatkan nama non-domain saat menjalankan hostname -f. Jadi saya mencari di Google tanpa domain di "hostname -f" . Ternyata saya perlu mengedit /etc/hostname(saya di Debian) untuk menyelesaikan masalah. Setelah itu keduanya hostname -fdan helomenggunakan nama host yang memenuhi syarat.


0

Jika Anda ingin menolak HELO dengan nama host yang buruk, tetapi masih memungkinkan pengguna Anda untuk dapat mengirim bahkan jika klien mereka tidak mengirim FQDN dengan HELO, Anda dapat membiarkan garis-garis ini tetap di tempatnya seperti yang Anda miliki:

reject_non_fqdn_helo_hostname,
reject_invalid_helo_hostname,

Tetapi pastikan mereka didahului oleh:

permit_sasl_authenticated,

Dengan cara ini, ketika salah satu pengguna Anda mengautentikasi, mereka akan diizinkan mengirim email terlepas dari validitas perintah HELO mereka, dan hanya koneksi yang tidak diautentikasi (yang seharusnya hanya server SMTP lain yang mengirimkan email kepada Anda, karena Anda jelas membutuhkan semua pengguna Anda untuk mengotentikasi, kan?) akan tunduk pada persyaratan HELO yang valid.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.