it-swarm-tr.com

Postfix '' Geçiş Erişimi Reddedildi '' nasıl düzeltilir?

Bu sabah, güvenlik sertifikasında bir ad uyuşmazlığıyla ilgili bir sorunu gidermek için, Posta sunucusu SSL'si nasıl düzeltilir?, ancak şimdi, bir istemciden e-posta göndermeye çalışırken (bu durumda istemci Windows Mail'dir), aşağıdaki hatayı alıyorum.

Reddedilen e-posta adresi '[email protected]' idi. Subject 'Bu bir testtir. ', Hesap:' mail.domain.com ', Sunucu:' mail.domain.com ', Protokol: SMTP, Sunucu Yanıtı:' 554 5.7.1: Röle erişimi reddedildi ', Bağlantı Noktası: 25, Güvenli (SSL): Hayır , Sunucu Hatası: 554, Hata Numarası: 0x800CCC79

Düzenle: Yine de bu hesaptan e-posta alabilirim ve aynı alan adındaki diğer hesaplara e-posta gönderiyorum. Alanımız dışındaki alıcılara e-posta gönderemiyorum.

TLS'yi tamamen devre dışı bırakmayı denedim ama zar yok, hala aynı hatayı alıyorum.

mail.log Dosyasını kontrol ettiğimde aşağıdakileri görüyorum.

Jul 18 08:24:41 company imapd: LOGIN, [email protected], ip=[::ffff:111.111.11.11], protocol=IMAP
Jul 18 08:24:42 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=0, body=0, rcvd=83, sent=409, time=1
Jul 18 08:25:19 company postfix/smtpd[29282]: connect from company.university.edu[111.111.11.11]
Jul 18 08:25:19 company postfix/smtpd[29282]: NOQUEUE: reject: RCPT from company.university.edu[111.111.11.11]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<UserPC>
Jul 18 08:25:19 company postfix/smtpd[29282]: disconnect from company.university.edu[111.111.11.11]
Jul 18 08:25:22 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=13, body=142579, rcvd=3289, sent=215892, time=79

main.cf Dosyası şöyle görünür:

#
# Postfix MTA Manager Main Configuration File;
#
# Please do NOT edit this file manually;
#

#
# Postfix directory settings; These are critical for normal Postfix MTA functionallity;
#

command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix

#
# Some common configuration parameters;
#

inet_interfaces = all
mynetworks = 127.0.0.0/8
mynetworks_style = Host

myhostname = mail.domain.com
mydomain = domain.com
myorigin = $mydomain

smtpd_banner = $myhostname ESMTP 2.4.7.1 (Debian/GNU)
setgid_group = postdrop

#
# Receiving messages parameters;
#

mydestination = localhost, company 
append_dot_mydomain = no
append_at_myorigin = yes
transport_maps = mysql:/etc/postfix/transport.cf

#
# Delivering local messages parameters;
#

mail_spool_directory = /var/spool/mail
mailbox_size_limit = 0
mailbox_command = procmail -a "$EXTENSION"

biff = no

alias_database = hash:/etc/aliases

local_recipient_maps =

#
# Delivering virtual messages parameters;
#
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virt.cf
virtual_uid_maps=mysql:/etc/postfix/uids.cf
virtual_gid_maps=mysql:/etc/postfix/gids.cf
virtual_mailbox_base=/usr/local/virtual
virtual_maps=mysql:/etc/postfix/virtual.cf
virtual_mailbox_domains=mysql:/etc/postfix/virtual_domains.cf


#
# SASL paramters;
#
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s

smtp_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtp_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtp_tls_key_file = /etc/postfix/ssl/smptd.key

smtpd_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtpd_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smptd.key

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

smtpd_sasl_local_domain =

broken_sasl_auth_clients = yes

smtpd_sender_restrictions =
        permit_sasl_authenticated
        permit_mynetworks

smtpd_recipient_restrictions =
        permit_sasl_authenticated
        check_recipient_access hash:/etc/postfix/filtered_domains
        permit_mynetworks
        reject_unauth_destination

Bir yan not olarak, işverenim hem yerel ağımızdan hem de dışından müşterilerden (Thunderbird ve Outlook) e-posta gönderebilmek istiyor.

59
Noah Goodrich

TLS sadece smtp oturumunda şifrelemeyi etkinleştirir ve Postfix'in bir mesajı geçirmesine izin verilip verilmeyeceğini doğrudan etkilemez.

Geçiş reddedildi iletisi, smtpd_recipient_restrictions kuralları eşleşmediği için oluşur. Mesajın geçebilmesi için bu koşullardan birinin yerine getirilmesi gerekir:

smtpd_recipient_restrictions =
    permit_sasl_authenticated
    check_recipient_access hash:/etc/postfix/filtered_domains
    permit_mynetworks
    reject_unauth_destination

Bu kuralları açıklamak için:

permit_sasl_authenticated

sASL aracılığıyla kimliği doğrulanmış gönderenlere izin verir. Bu, normalde engellenen ağınızın dışındaki kullanıcıların kimliğini doğrulamak için gerekli olacaktır.

check_recipient_access

Bu, postfix'in alıcı adresine dayalı kurallar için/etc/postfix/filter_domains içinde görünmesine neden olur. (Dosya adındaki dosya adına bakılırsa, muhtemelen sadece belirli alan adlarını engelliyor ... gmail.com'un burada listelenip listelenmediğini kontrol edin?)

permit_mynetworks

Bu, ana bilgisayarlara $ mynetworks öğesinde belirtilen IP aralıklarıyla eşleşen IP adresine göre izin verir. Gönderdiğiniz main.cf dosyasında $ mynetworks 127.0.0.1 olarak ayarlandığından, yalnızca sunucunun kendisi tarafından oluşturulan e-postaları geçirir.

Bu yapılandırmaya bağlı olarak, posta istemcinizin iletileri geçirmesine izin verilmeden önce SMTP Kimlik Doğrulaması kullanması gerekir. SASL'nin hangi veritabanını kullandığından emin değilim. Bu /usr/lib/sasl2/smtpd.conf dosyasında belirtilmiştir. Muhtemelen sanal posta kutularınızla aynı veritabanını kullanır, bu nedenle posta istemcinizde SMTP kimlik doğrulamasını etkinleştirebilmeniz ve ayarlanabilmeniz gerekir.

60
Brandon
smtpd_use_tls = no

TLS'yi devre dışı bıraktınız, bu yüzden şimdi mynetworks klasörüne ekleyerek yerel ağınızı yetkilendirmeniz gerekiyor. Örneğin,

mynetworks = 192.168.1.0/24 127.0.0.0/8

Bu, yalnızca yerel ağınızdan gönderme işlemini düzeltir. Yerel ağınızın dışından e-posta göndermek için TLS kimlik doğrulamasının çalışması gerekir.

15
pgs

Varsayılan relay_domains=$mydestination, böylece satırı yapılandırmanıza ekleyebilirsiniz:

mydestinations = $mydomain, $myhostname, localhost, localhost.localdomain

veya:

relay_domains = $mydomain

Postfix sunucusunu yeniden başlatmayı unutmayın (service postfix restart) postfix conf dosyasını her düzenlediğinizde.

6
Dzung Nguyen

Outlook'ta aynı sorunu yaşadım (dovecote ve postfix backend ile) ve çözüm aramak ve yapılandırma dosyalarımı ayarlamak için iki gün geçirdim. Tek yapmam gereken, Outlook'taki posta ayarlarındaki Giden sekmesinde "Sunucu kimlik doğrulaması gerektiriyor" u kontrol etmekti ve iletileriim artık gmail'e gönderildi. Ayarın nasıl bulunacağı ile ilgili ayrıntılı talimatlara buradan bakın http://support.bluetie.com/node/44 .

2
Dee

Bu sorun bir süredir beni rahatsız ediyordu. Server1.domain.com adresinden server2.domain.com adresine bağlanmaya çalışıyordum.

İşte bunu nasıl düzelttim -

#/etc/postfix/main.cf
mydomain = server1.domain.com
myhostname = $mydomain
virtual_alias_maps = hash:/etc/postfix/virtual
alias_database = hash:/etc/postfix/virtual
myorigin = /etc/mailname
mydestination = localhost.localdomain localhost $mydomain
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

Ayrıca,/etc/hosts ve/etc/hostname öğelerini doğru ayarladığınızdan ve ağ değişikliklerinden sonra aşağıdakileri çalıştırdığınızdan emin olmanız gerekir -

Sudo service networking restart

ve postfix yapılandırma değiştikten sonra aşağıdakiler

Sudo service postfix reload
2
A23

Benim için: 127.0.0.0/8 Ne olursa olsun localhost _ mynetworks 'a eklemek zorunda kaldım. Yani, şimdi görünüyor:

mynetworks = 1.1.1.1/32, 127.0.0.0/8, localhost

0
Putnik