Hello, I'm not sure if this is a Dovecot-specific question, or Postfix or Horde webmail. As Dovecot is used for authenticating both Postfix as well as horde I thought i'd start here. I've got a new horde webmail install going on a FreeBSD 11.1 jail. I've got Dovecot set up so that it appends a domain name if one is not given, so that user and user at example.com can both log in. When I logged in with horde webmail I used for the first attempt username with no @example.com suffix. I logged in ok, but couldn't send an email, gave me a weird error no address associated with host. I logged out, logged back in using user at example.com the full address, and this time the message sending went through. Any ideas or if this is not a Dovecot question let me know, as that means I'll have two other places to try. Thanks. Dave. doveconf -n # 2.2.33.2 (d6601f4ec): /usr/local/etc/dovecot/dovecot.conf # Pigeonhole version 0.4.21 (92477967) # OS: FreeBSD 11.1-RELEASE-p4 amd64 auth_cache_size = 16 k auth_default_realm = example.com auth_mechanisms = plain login auth_realms = example.com example2.com dict { acl = mysql:/usr/local/etc/dovecot/shared-folders.conf sqlquota = mysql:/usr/local/etc/dovecot/quota.conf } first_valid_gid = 999 first_valid_uid = 999 hostname = mail.example.com imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags last_valid_gid = 999 last_valid_uid = 999 lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes listen = 127.0.0.1 xxx.xxx.xxx.xxx lmtp_rcpt_check_quota = yes mail_access_groups = vmail mail_fsync = never mail_gid = vmail mail_home = /home/vmail/%d/%n mail_location = maildir:~/mail/:LAYOUT=fs:INDEX=~/mail/ mail_plugins = acl mail_log notify quota quota_clone trash virtual welcome zlib mail_server_admin = mailto:postmaster at example.com mail_uid = vmail mailbox_list_index = yes managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext imapflags notify imapsieve vnd.dovecot.imapsieve namespace { hidden = no list = yes location = maildir:/home/vmail/public/:LAYOUT=fs:CONTROL=~/mail/public:INDEXPVT=~/mail/public:INDEX=~/mail/public mailbox TestFolder { auto = subscribe comment = Public Folder for message sharing } prefix = public/ separator = / subscriptions = yes type = public } namespace { list = yes location = maildir:~/mail/:INDEX=~/mail/shared/%%Ld/%%Ln prefix = shared/%%u/ separator = / subscriptions = yes type = shared } namespace { location = virtual:/usr/local/etc/dovecot/virtual mailbox All { auto = subscribe comment = All my messages special_use = \All } prefix = virtual/ separator = / } namespace inbox { inbox = yes location mailbox Archive { auto = no special_use = \Archive } mailbox Archives { auto = subscribe special_use = \Archive } mailbox "Deleted Messages" { auto = no autoexpunge = 30 days special_use = \Trash } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = no autoexpunge = 30 days special_use = \Junk } mailbox "Junk E-mail" { auto = no autoexpunge = 30 days special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Items" { auto = no special_use = \Sent } mailbox "Sent Messages" { auto = no special_use = \Sent } mailbox Spam { auto = subscribe autoexpunge = 30 days special_use = \Junk } mailbox Trash { auto = subscribe autoexpunge = 30 days special_use = \Trash } prefix separator = / type = private } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { acl = vfile:/usr/local/etc/dovecot/global-acls:cache_secs=300 acl_anyone = allow acl_globals_only = yes acl_shared_dict = proxy::acl imapsieve_mailbox1_before file:/usr/local/lib/dovecot/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = Spam imapsieve_mailbox2_before = file:/usr/local/lib/dovecot/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = Spam imapsieve_mailbox2_name = * mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = uid box msgid size quota = count:User quota quota_clone_dict = proxy::sqlquota quota_exceeded_message = Storage quota for this account has been exceeded, please try again later. quota_grace = 10%% quota_status_nouser = DUNNO quota_status_overquota = 552 5.2.2 Mailbox is full quota_status_success = DUNNO quota_vsizes = true quota_warning = storage=100%% quota-exceeded 100 %u quota_warning2 = storage=95%% quota-warning 95 %u quota_warning3 = storage=90%% quota-warning 90 %u quota_warning4 = storage=85%% quota-warning 85 %u quota_warning5 = storage=75%% quota-warning 75 %u sieve = ~/.dovecot.sieve sieve_before = /home/vmail/sieve/before.d sieve_default = /home/vmail/sieve/default.sieve sieve_dir = ~/sieve sieve_extensions = +notify +imapflags sieve_global_dir = /home/vmail/sieve sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute sieve_max_redirects = 30 sieve_max_script_size = 1M sieve_pipe_bin_dir = /usr/local/lib/dovecot/sieve sieve_plugins = sieve_imapsieve sieve_extprograms sieve_user_log = /home/vmail/sieve/sieve_error.log trash = /usr/local/etc/dovecot/trash.conf welcome_script = welcome %u welcome_wait = yes } postmaster_address = postmaster at example.com protocols = imap lmtp sieve sendmail_path = /usr/local/sbin/sendmail service auth-worker { user = $default_internal_user } service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } unix_listener auth-userdb { group = vmail mode = 0666 user = vmail } } service dict { unix_listener dict { group = vmail mode = 0660 user = vmail } } service imap-login { inet_listener imap { address = 127.0.0.1 port = 143 } inet_listener imaps { address = xxx.xxx.xxx.xxx port = 993 ssl = yes } } service imap { executable = imap } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0660 user = postfix } } service managesieve-login { inet_listener sieve { address = 127.0.0.1 port = 4190 } } service quota-status { client_limit = 1 executable = quota-status -p postfix unix_listener /var/spool/postfix/private/dovecot-quota { group = postfix mode = 0660 user = postfix } } service quota-warning { executable = script /usr/local/etc/dovecot/quota-warning.sh unix_listener quota-warning { group = vmail mode = 0660 user = vmail } user = vmail } service welcome { executable = script /usr/local/etc/dovecot/welcome.sh unix_listener welcome { user = vmail } user = vmail } ssl = required ssl_cert = <Cert Here Obscured> ssl_cipher_list ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 at STRENGTH ssl_dh_parameters_length = 2048 ssl_key = # hidden, use -P to show it ssl_options = no_compression ssl_prefer_server_ciphers = yes ssl_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1 userdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol lmtp { mail_plugins = acl mail_log notify quota quota_clone trash virtual welcome zlib quota sieve } protocol lda { mail_fsync = optimized mail_plugins = acl mail_log notify quota quota_clone trash virtual welcome zlib sieve } protocol imap { mail_plugins = acl mail_log notify quota quota_clone trash virtual welcome zlib imap_acl imap_quota imap_sieve imap_zlib last_login }
This sounds awfully like problem in horde. Aki> On 24 February 2018 at 01:21 David Mehler <dave.mehler at gmail.com> wrote: > > > Hello, > > I'm not sure if this is a Dovecot-specific question, or Postfix or > Horde webmail. As Dovecot is used for authenticating both Postfix as > well as horde I thought i'd start here. > > I've got a new horde webmail install going on a FreeBSD 11.1 jail. > I've got Dovecot set up so that it appends a domain name if one is not > given, so that user and user at example.com can both log in. > > When I logged in with horde webmail I used for the first attempt > username with no @example.com suffix. I logged in ok, but couldn't > send an email, gave me a weird error no address associated with host. > I logged out, logged back in using user at example.com the full address, > and this time the message sending went through. > > Any ideas or if this is not a Dovecot question let me know, as that > means I'll have two other places to try. > > Thanks. > Dave. > > doveconf -n > # 2.2.33.2 (d6601f4ec): /usr/local/etc/dovecot/dovecot.conf > # Pigeonhole version 0.4.21 (92477967) > # OS: FreeBSD 11.1-RELEASE-p4 amd64 > auth_cache_size = 16 k > auth_default_realm = example.com > auth_mechanisms = plain login > auth_realms = example.com example2.com > dict { > acl = mysql:/usr/local/etc/dovecot/shared-folders.conf > sqlquota = mysql:/usr/local/etc/dovecot/quota.conf > } > first_valid_gid = 999 > first_valid_uid = 999 > hostname = mail.example.com > imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags > last_valid_gid = 999 > last_valid_uid = 999 > lda_mailbox_autocreate = yes > lda_mailbox_autosubscribe = yes > listen = 127.0.0.1 xxx.xxx.xxx.xxx > lmtp_rcpt_check_quota = yes > mail_access_groups = vmail > mail_fsync = never > mail_gid = vmail > mail_home = /home/vmail/%d/%n > mail_location = maildir:~/mail/:LAYOUT=fs:INDEX=~/mail/ > mail_plugins = acl mail_log notify quota quota_clone trash virtual welcome zlib > mail_server_admin = mailto:postmaster at example.com > mail_uid = vmail > mailbox_list_index = yes > managesieve_notify_capability = mailto > managesieve_sieve_capability = fileinto reject envelope > encoded-character vacation subaddress comparator-i;ascii-numeric > relational regex imap4flags copy include variables body enotify > environment mailbox date index ihave duplicate mime foreverypart > extracttext imapflags notify imapsieve vnd.dovecot.imapsieve > namespace { > hidden = no > list = yes > location = maildir:/home/vmail/public/:LAYOUT=fs:CONTROL=~/mail/public:INDEXPVT=~/mail/public:INDEX=~/mail/public > mailbox TestFolder { > auto = subscribe > comment = Public Folder for message sharing > } > prefix = public/ > separator = / > subscriptions = yes > type = public > } > namespace { > list = yes > location = maildir:~/mail/:INDEX=~/mail/shared/%%Ld/%%Ln > prefix = shared/%%u/ > separator = / > subscriptions = yes > type = shared > } > namespace { > location = virtual:/usr/local/etc/dovecot/virtual > mailbox All { > auto = subscribe > comment = All my messages > special_use = \All > } > prefix = virtual/ > separator = / > } > namespace inbox { > inbox = yes > location > mailbox Archive { > auto = no > special_use = \Archive > } > mailbox Archives { > auto = subscribe > special_use = \Archive > } > mailbox "Deleted Messages" { > auto = no > autoexpunge = 30 days > special_use = \Trash > } > mailbox Drafts { > auto = subscribe > special_use = \Drafts > } > mailbox Junk { > auto = no > autoexpunge = 30 days > special_use = \Junk > } > mailbox "Junk E-mail" { > auto = no > autoexpunge = 30 days > special_use = \Junk > } > mailbox Sent { > auto = subscribe > special_use = \Sent > } > mailbox "Sent Items" { > auto = no > special_use = \Sent > } > mailbox "Sent Messages" { > auto = no > special_use = \Sent > } > mailbox Spam { > auto = subscribe > autoexpunge = 30 days > special_use = \Junk > } > mailbox Trash { > auto = subscribe > autoexpunge = 30 days > special_use = \Trash > } > prefix > separator = / > type = private > } > passdb { > args = /usr/local/etc/dovecot/dovecot-sql.conf.ext > driver = sql > } > plugin { > acl = vfile:/usr/local/etc/dovecot/global-acls:cache_secs=300 > acl_anyone = allow > acl_globals_only = yes > acl_shared_dict = proxy::acl > imapsieve_mailbox1_before > file:/usr/local/lib/dovecot/sieve/report-spam.sieve > imapsieve_mailbox1_causes = COPY > imapsieve_mailbox1_name = Spam > imapsieve_mailbox2_before = file:/usr/local/lib/dovecot/sieve/report-ham.sieve > imapsieve_mailbox2_causes = COPY > imapsieve_mailbox2_from = Spam > imapsieve_mailbox2_name = * > mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename > mail_log_fields = uid box msgid size > quota = count:User quota > quota_clone_dict = proxy::sqlquota > quota_exceeded_message = Storage quota for this account has been > exceeded, please try again later. > quota_grace = 10%% > quota_status_nouser = DUNNO > quota_status_overquota = 552 5.2.2 Mailbox is full > quota_status_success = DUNNO > quota_vsizes = true > quota_warning = storage=100%% quota-exceeded 100 %u > quota_warning2 = storage=95%% quota-warning 95 %u > quota_warning3 = storage=90%% quota-warning 90 %u > quota_warning4 = storage=85%% quota-warning 85 %u > quota_warning5 = storage=75%% quota-warning 75 %u > sieve = ~/.dovecot.sieve > sieve_before = /home/vmail/sieve/before.d > sieve_default = /home/vmail/sieve/default.sieve > sieve_dir = ~/sieve > sieve_extensions = +notify +imapflags > sieve_global_dir = /home/vmail/sieve > sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.execute > sieve_max_redirects = 30 > sieve_max_script_size = 1M > sieve_pipe_bin_dir = /usr/local/lib/dovecot/sieve > sieve_plugins = sieve_imapsieve sieve_extprograms > sieve_user_log = /home/vmail/sieve/sieve_error.log > trash = /usr/local/etc/dovecot/trash.conf > welcome_script = welcome %u > welcome_wait = yes > } > postmaster_address = postmaster at example.com > protocols = imap lmtp sieve > sendmail_path = /usr/local/sbin/sendmail > service auth-worker { > user = $default_internal_user > } > service auth { > unix_listener /var/spool/postfix/private/auth { > group = postfix > mode = 0660 > user = postfix > } > unix_listener auth-userdb { > group = vmail > mode = 0666 > user = vmail > } > } > service dict { > unix_listener dict { > group = vmail > mode = 0660 > user = vmail > } > } > service imap-login { > inet_listener imap { > address = 127.0.0.1 > port = 143 > } > inet_listener imaps { > address = xxx.xxx.xxx.xxx > port = 993 > ssl = yes > } > } > service imap { > executable = imap > } > service lmtp { > unix_listener /var/spool/postfix/private/dovecot-lmtp { > group = postfix > mode = 0660 > user = postfix > } > } > service managesieve-login { > inet_listener sieve { > address = 127.0.0.1 > port = 4190 > } > } > service quota-status { > client_limit = 1 > executable = quota-status -p postfix > unix_listener /var/spool/postfix/private/dovecot-quota { > group = postfix > mode = 0660 > user = postfix > } > } > service quota-warning { > executable = script /usr/local/etc/dovecot/quota-warning.sh > unix_listener quota-warning { > group = vmail > mode = 0660 > user = vmail > } > user = vmail > } > service welcome { > executable = script /usr/local/etc/dovecot/welcome.sh > unix_listener welcome { > user = vmail > } > user = vmail > } > ssl = required > ssl_cert = <Cert Here Obscured> > ssl_cipher_list > ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 at STRENGTH > ssl_dh_parameters_length = 2048 > ssl_key = # hidden, use -P to show it > ssl_options = no_compression > ssl_prefer_server_ciphers = yes > ssl_protocols = !SSLv2 !SSLv3 !TLSv1 !TLSv1.1 > userdb { > args = /usr/local/etc/dovecot/dovecot-sql.conf.ext > driver = sql > } > protocol lmtp { > mail_plugins = acl mail_log notify quota quota_clone trash virtual > welcome zlib quota sieve > } > protocol lda { > mail_fsync = optimized > mail_plugins = acl mail_log notify quota quota_clone trash virtual > welcome zlib sieve > } > protocol imap { > mail_plugins = acl mail_log notify quota quota_clone trash virtual > welcome zlib imap_acl imap_quota imap_sieve imap_zlib last_login > }