很久以前,我一直试图修复这个错误,但仍然被锁定,我感谢任何帮助:)。
我详细描述了我所拥有的一切以及我正在尝试做的事情。
我正在使用 Cyrus Murder,显然一切正常,直到它尝试使用 lmtp 将邮件传递到后端。
我有:
- 1 个前端(名称 = frontendlinux.ejemplo.org,ip = 169.254.220.13)
- 1 个后端 (名称 = backend.ejemplo.org,ip = 169.254.220.14)
我尝试使用 nslookup 来查找 DNS,并且运行良好。
两台服务器的操作系统均为:Debian 3.2.46-1+deb7u1 i686 GNU/Linux。
我展示配置文件,然后展示日志文件。
/etc/cyrus.conf(frontendlinux)
START {
recover cmd="/usr/sbin/ctl_cyrusdb -r"
idled cmd="idled"
delprune cmd="/usr/sbin/cyr_expire -E 3"
tlsprune cmd="/usr/sbin/tls_prune"
}
SERVICES {
sieve cmd="timsieved" listen="sieve" prefork=0 maxchild=100
mupdate cmd="mupdate -m -T 1800" listen=3905 prefork=1 maxfds=1024000 maxforkrate=20 proto=tcp4 maxfds=256 -U 5 -T 10
imap cmd="proxyd" listen="imap" prefork=1 maxchild=100 maxforkrate=2 proto=tcp4 maxfds=256 -U 5 -T 10
lmtp cmd="lmtpproxyd" listen="lmtp" prefork=1 maxchild=20 maxforkrate=2 proto=tcp4 maxfds=256 -U 5 -T 10
lmtpunix cmd="lmtpproxyd" listen="/var/run/cyrus/socket/lmtp" prefork=1 maxchild=20 maxforkrate=2 maxfds=256 -U 5 -T 10
listen="/indicesimap/var/run/cyrus/socket/lmtp" prefork=1
notify cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1
}
EVENTS {
checkpoint cmd="/usr/sbin/ctl_cyrusdb -c" period=5
delprune cmd="/usr/sbin/cyr_expire -E 3" at=0401
tlsprune cmd="/usr/sbin/tls_prune" at=0401
delprune cmd="/usr/sbin/cyr_expire -X 14" at=0200
delprune cmd="/usr/sbin/cyr_expire -D 14" at=0400
}
/etc/imapd.conf(frontendlinux)
configdirectory: /var/lib/cyrus
partition-default: /var/spool/cyrus/mail
allowusermoves: yes
altnamespace: no
unixhierarchysep: yes
lmtp_downcase_rcpt: yes
lmtp_over_quota_perm_failure: 0
admins: cyrus techforce-admin cyrmaster cyrlmtp mupdateuser
lmtp_admins: mupdateuser postman cyrlmtp
mupdate_admins: mupdateman mupdateuser
imap_admins: cyrus mupdateuser techforce-admin
proxy_authname: mupdateuser
proxy_password: senha
allowanonymouslogin: no
popminpoll: 1
autocreatequota: 0
umask: 077
sendmail: /usr/sbin/sendmail
sieveusehomedir: false
sievedir: /var/spool/sieve
hashimapspool: true
allowplaintext: yes
sasl_mech_list: PLAIN
sasl_minimum_layer: 0
virtdomains: userid
defaultdomain: ejemplo.org
sasl_pwcheck_method: saslauthd auxprop
sasl_auxprop_plugin: sasldb
sasl_auto_transition: no
tls_ca_path: /etc/postfix/sslcerts/
tls_session_timeout: 1440
tls_cipher_list: TLSv1+HIGH:!aNULL:@STRENGTH
mupdate_server: frontendlinux
mupdate_username: mupdateuser
mupdate_authname: mupdateuser
mupdate_password: senha
lmtpsocket: /var/run/cyrus/socket/lmtp
idlemethod: idled
idlesocket: /var/run/cyrus/socket/idle
syslog_prefix: cyrus
statuscache_db: skiplist
userdeny_db: skiplist
skiplist_always_checkpoint: 1
singleinstancestore: 1
proxyd_disable_mailbox_referrals: 1
sieve_allowreferrals: 0
proxyd_allow_status_referral: 0
serverlist: backend
backend_authname: mupdateuser
backend_password: senha
backend_mechs: PLAIN
mupdate_config: standard
partition-news: /var/spool/cyrus/news
newsspool: /var/spool/news
/etc/postfix/lmtp_passwd (frontendlinux)
169.254.220.13 mupdateuser:senha
并运行命令:su - postfix -c "/usr/sbin/postmap /etc/postfix/lmtp_passwd"
/etc/postfix/main.cf (frontendlinux)
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/postfix/sslcerts/linuxdrops.crt
smtpd_tls_key_file=/etc/postfix/sslcerts/linuxdrops.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = frontendlinux
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = localdomain, localhost, localhost.localdomain, localhost, ejemplo.org
relayhost =
mynetworks = 127.0.0.0/8 169.254.220.0/24
mailbox_size_limit = 20000000
recipient_delimiter = +
inet_interfaces = all
myorigin = /etc/mailname
inet_protocols = ipv4
relay_domains = $myorigin
smtpd_recipient_restrictions = permit_mynetworks, check_relay_domains
mailbox_transport = lmtp:inet:169.254.220.13:lmtp
local_recipient_maps =
lmtp_sasl_auth_enable = yes
lmtp_sasl_password_maps = hash:/etc/postfix/lmtp_passwd
lmtp_sasl_security_options = noanonymous
lmtp_sasl_mechanism_filter = plain
lmtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated
/etc/postfix/master.cf (frontendlinux)
smtp inet n - - - - smtpd -v
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
tlsmgr unix - - - 1000? 1 tlsmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - - - - smtp
relay unix - - - - - smtp
-o smtp_fallback_relay=
showq unix n - - - - showq
error unix - - - - - error
retry unix - - - - - error
discard unix - - - - - discard
local unix - n n - - local
virtual unix - n n - - virtual
#lmtp unix - - - - - lmtp -v
lmtp unix - - n - - lmtp -v
anvil unix - - - - 1 anvil
scache unix - - - - 1 scache
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix - n n - 2 pipe
flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman unix - n n - - pipe
flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
${nexthop} ${user}
/etc/postfix/sasl/smtpd.conf(frontendlinux)
pwcheck_method: saslauthd
saslauthd_path: /var/run/saslauthd
mech_list: PLAIN LOGIN
log_level: 7
/etc/cyrus.conf (后端)
START {
recover cmd="/usr/sbin/ctl_cyrusdb -r"
mupdatepush cmd="/usr/sbin/ctl_mboxlist "
delprune cmd="/usr/sbin/cyr_expire -E 3"
tlsprune cmd="/usr/sbin/tls_prune"
}
SERVICES {
imap cmd="imapd -U 30" listen="imap" prefork=1 maxchild=100 maxforkrate=20 proto=tcp4 maxfds=256 -U 5 -T 10
lmtp cmd="lmtpd" listen="backend:lmtp" prefork=1 maxchild=20 babysit=true maxforkrate=2 proto=tcp4 maxfds=256 -U 5 -T 10
sieve cmd="timsieved" listen="sieve" prefork=0 maxchild=100
notify cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1
}
EVENTS {
checkpoint cmd="/usr/sbin/ctl_cyrusdb -c" period=5
delprune cmd="/usr/sbin/cyr_expire -E 3" at=0401
tlsprune cmd="/usr/sbin/tls_prune" at=0401
delprune cmd="/usr/sbin/cyr_expire -X 14" at=0200
delprune cmd="/usr/sbin/cyr_expire -D 14" at=0400
}
/etc/imapd.conf (后端)
configdirectory: /var/lib/cyrus
defaultpartition: default
partition-default: /var/spool/cyrus/mail
allowusermoves: yes
allowallsubscribe: 1
duplicatesuppression: 1
expunge_mode: delayed
partition-news: /var/spool/cyrus/news
newsspool: /var/spool/news
altnamespace: no
unixhierarchysep: yes
lmtp_downcase_rcpt: yes
lmtp_over_quota_perm_failure: 0
admins: cyrus techforce-admin cyrmaster mupdateuser
lmtp_admins: mupdateuser postman
mupdate_admins: mupdateman mupdateuser
imap_admins: cyrus mupdateuser techforce-admin
proxyservers: mupdateuser cyrus
proxy_authname: mupdateuser
proxy_password: senha
allowanonymouslogin: no
popminpoll: 1
autocreatequota: 0
umask: 077
sendmail: /usr/sbin/sendmail
sieveusehomedir: false
sievedir: /var/spool/sieve
hashimapspool: true
allowplaintext: yes
sasl_mech_list: PLAIN
sasl_minimum_layer: 0
loginrealms: localhost ejemplo.org backend.ejemplo.org frontendlinux.ejemplo.org backend frontendlinux
virtdomains: userid
defaultdomain: ejemplo.org
sasl_pwcheck_method: alwaystrue
sasl_auxprop_plugin: sasldb
sasl_auto_transition: no
tls_ca_path: /etc/postfix/sslcerts/
tls_session_timeout: 1440
tls_cipher_list: TLSv1+HIGH:!aNULL:@STRENGTH
mupdate_server: frontendlinux.ejemplo.org
mupdate_username: mupdateuser
mupdate_authname: mupdateuser
mupdate_password: senha
lmtpsocket: /var/run/cyrus/socket/lmtp
idlesocket: /var/run/cyrus/socket/idle
notifysocket: /var/run/cyrus/socket/notify
syslog_prefix: cyrus
statuscache_db: skiplist
userdeny_db: skiplist
skiplist_always_checkpoint: 1
singleinstancestore: 1
serverlist: backend
backend_authname: mupdateuser
backend_password: senha
backend_mechs: PLAIN
proxyd_disable_mailbox_referrals: 1
sieve_allowreferrals: 0
proxyd_allow_status_referral: 0
登录frontendlinux
postfix/lmtp[3756]: deliver_request_get: file active/706B36086B
postfix/lmtp[3756]: deliver_message: from [email protected]
postfix/lmtp[3756]: smtp_parse_destination: 169.254.220.13:lmtp 24
postfix/lmtp[3756]: connecting to 169.254.220.13 port 24
postfix/lmtp[3756]: smtp_addr_one: host 169.254.220.13
postfix/lmtp[3756]: begin 169.254.220.13 address list
postfix/lmtp[3756]: pref 0 host 169.254.220.13/169.254.220.13
postfix/lmtp[3756]: end 169.254.220.13 address list
postfix/lmtp[3756]: smtp_connect_addr: trying: 169.254.220.13[169.254.220.13] port 24...
cyrus/lmtp[3647]: telling master 2
cyrus/lmtp[3647]: accepted connection
cyrus/lmtp[3647]: telling master 3
cyrus/master[3461]: service lmtp pid 3647 in READY state: now unavailable and in BUSY state
cyrus/master[3461]: service lmtp now has 0 ready workers
cyrus/master[3461]: service lmtp pid 3647 in BUSY state: now serving connection
cyrus/master[3461]: service lmtp now has 0 ready workers
cyrus/lmtp[3647]: connection from .ejemplo.org [169.254.220.13]
postfix/lmtp[3756]: vstream_tweak_tcp: TCP_MAXSEG 16384
postfix/lmtp[3756]: global TLS level: none
postfix/lmtp[3756]: smtp_stream_setup: maxtime=300 enable_deadline=0
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 220 Cyrus LMTP Murder v2.4.16-Debian-2.4.16-4+deb7u1 server ready
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: LHLO
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-8BITMIME
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-ENHANCEDSTATUSCODES
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-PIPELINING
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-SIZE
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250-AUTH PLAIN
cyrus/master[3757]: set maximum file descriptors to 256/256
cyrus/mupdate[3520]: New worker thread started, for a total of 3
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250 IGNOREQUOTA
postfix/lmtp[3756]: match_string: PLAIN ~? plain
postfix/lmtp[3756]: server features: 0x102f size 0
postfix/lmtp[3756]: Using LMTP PIPELINING, TCP send buffer size is 170840, PIPELINING buffer size is 4096
cyrus/master[3757]: about to exec /usr/lib/cyrus/bin/lmtpproxyd
postfix/lmtp[3756]: maps_find: smtp_sasl_passwd: hash:/etc/postfix/lmtp_passwd(0,lock|fold_fix): 169.254.220.13 = mupdateuser:senha
postfix/lmtp[3756]: smtp_sasl_passwd_lookup: host `169.254.220.13' user `mupdateuser' pass `senha'
postfix/lmtp[3756]: starting new SASL client
postfix/lmtp[3756]: name_mask: noanonymous
postfix/lmtp[3756]: smtp_sasl_authenticate: 169.254.220.13[169.254.220.13]:24: SASL mechanisms PLAIN
postfix/lmtp[3756]: xsasl_cyrus_client_get_user: mupdateuser
postfix/lmtp[3756]: xsasl_cyrus_client_get_passwd: senha
postfix/lmtp[3756]: xsasl_cyrus_client_first: uncoded initial reply: \0mupdateuser\0senha
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: AUTH PLAIN AG11cGRhdGV1c2VyAHNlbmhh
cyrus/lmtp[3647]: login: .ejemplo.org [169.254.220.13] mupdateuser PLAIN User logged in
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 235 Authenticated!
postfix/lmtp[3756]: smtp_stream_setup: maxtime=300 enable_deadline=0
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: MAIL FROM:<[email protected]> SIZE=526
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: RCPT TO:<[email protected]>
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: DATA
postfix/lmtp[3756]: smtp_stream_setup: maxtime=300 enable_deadline=0
cyrus/mupdate[3520]: cmd_find(fd:18, user.user1)
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250 2.1.0 ok
postfix/lmtp[3756]: smtp_stream_setup: maxtime=300 enable_deadline=0
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 250 2.1.5 ok
postfix/lmtp[3756]: smtp_stream_setup: maxtime=120 enable_deadline=0
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 354 go ahead
postfix/lmtp[3756]: smtp_stream_setup: maxtime=180 enable_deadline=0
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: .
postfix/lmtp[3756]: > 169.254.220.13[169.254.220.13]:24: QUIT
postfix/lmtp[3756]: smtp_stream_setup: maxtime=600 enable_deadline=0
cyrus/mupdate[3520]: cmd_find(fd:18, user.user1)
cyrus/lmtp[3647]: USAGE user1 user: 0.004000 sys: 0.004000
cyrus/lmtp[3647]: connect(backend) failed: Connection refused
cyrus/lmtp[3647]: telling master 1
cyrus/master[3461]: service lmtp pid 3647 in BUSY state: now available and in READY state
cyrus/master[3461]: service lmtp now has 2 ready workers
postfix/lmtp[3756]: < 169.254.220.13[169.254.220.13]:24: 451 4.4.3 Remote server unavailable
postfix/lmtp[3756]: connect to subsystem private/defer
postfix/lmtp[3756]: send attr nrequest = 0
postfix/lmtp[3756]: send attr flags = 0
postfix/lmtp[3756]: send attr queue_id = 706B36086B
postfix/lmtp[3756]: send attr original_recipient = [email protected]
postfix/lmtp[3756]: send attr recipient = [email protected]
postfix/lmtp[3756]: send attr offset = 4294967295
postfix/lmtp[3756]: send attr dsn_orig_rcpt = rfc822;[email protected]
cyrus/lmtp[3757]: executed
postfix/lmtp[3756]: send attr notify_flags = 0
postfix/lmtp[3756]: send attr status = 4.4.3
postfix/lmtp[3756]: send attr diag_type = smtp
postfix/lmtp[3756]: send attr diag_text = 451 4.4.3 Remote server unavailable
postfix/lmtp[3756]: send attr mta_type = dns
postfix/lmtp[3756]: send attr mta_mname = 169.254.220.13
postfix/lmtp[3756]: send attr action = delayed
postfix/lmtp[3756]: send attr reason = host 169.254.220.13[169.254.220.13] said: 451 4.4.3 Remote server unavailable (in reply to end of DATA command)
答案1
转变OP 评论至 CW
现在我可以解决了。如果有人遇到同样的错误,我会告诉他们。
替换/etc/cyrus.conf
此行
lmtp cmd="lmtpd" listen="backend:lmtp" prefork=1 maxchild=20 babysit=true maxforkrate=2 proto=tcp4 maxfds=256 -U 5 -T 10
和
lmtp cmd="lmtpproxyd" listen="lmtp" prefork=1 maxchild=20 maxforkrate=2 proto=tcp4 maxfds=256 -U 5 -T 10