メールサーバーの送受信の問題[閉じる]

メールサーバーの送受信の問題[閉じる]

Postfix、DovecotをSASL、RainloopをWebClientとして使用してメールサーバーを設定しました。私はMySQLを使用しています(尋ねた後私の最後の質問)私のユーザーアカウントとパスワードを入力しましたが、うまくいきますが、2つの問題があります。 [2番目の問題が修正されました。]

  1. メールが届きません! (従業員に電子メールで連絡するだけですが、現在は電子メールを受け取ることができません。ある従業員から別の従業員に電子メールを送信すると、失敗の兆候を示すログファイルが見つかりません。本当にわからない。あります)。

  2. [解決済み] ThunderBirdはSMTPおよびIMAP証明書の確認を要求するため、ユーザーはThunderBirdを介してログインできます。つまり、ログイン時に証明書を受け入れる必要があり、初めてメールを送信するときに別の証明書を受け入れる必要があります。ただし、OutlookはIMAPに対して証明書を一度だけ要求するため、ログインできません。

これは私の設定ファイルです。

/etc/postfix/main.cf

myhostname = mail.domain.tld
mydomain = domain.tld
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#home_mailbox = Maildir/

#relayhost =

#mynetworks = 127.0.0.0/8, 172.16.67.68, [::1]/128


smtpd_tls_cert_file=/etc/ssl/certs/mailcert.pem
smtpd_tls_key_file=/etc/ssl/private/mail.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
smtpd_tls_security_level=may
#smtpd_tls_protocols = !SSLv2, !SSLv3
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
#
smtpd_recipient_restrictions =
       permit_sasl_authenticated,
       permit_mynetworks
#      reject_unauth_destination

#alias_maps = hash:/etc/aliases
#alias_database = hash:/etc/aliases

virtual_transport = lmtp:unix:private/dovecot-lmtp

virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf, mysql:/etc/postfix/mysql-virtual-email2email.cf


mailbox_size_limit = 209715200
message_size_limit = 57671680

/etc/postfix/master.cf

smtp      inet  n       -       n       -       -       smtpd
pickup    unix  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
#qmgr     unix  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_wrappermode=no
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
smtps     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

virtual_domains、virtual_users、virtual_aliasesという3つのデータベーステーブルがあります。 Postfixはこれらすべてを知っており、postmapmysql-virtual-mailbox-domains.cf、mysql-virtual-mailbox-maps.cf、mysql-virtual-email2email.cf、mysql-setupvirtual aliasmap.cfのコマンドと設定でこれを実証しました。

/etc/dovecot/dovecot.conf

disable_plaintext_auth = yes

ssl=required
ssl_cert = </etc/ssl/certs/mailcert.pem
ssl_key = </etc/ssl/private/mail.key

!include conf.d/*.conf

# A config file can also tried to be included without giving an error if
# it's not found:
!include_try local.conf


userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
}

passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}


service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
}


protocol imap {
  mail_plugins = " autocreate"
#   $mail_plugins = autocreate
}
plugin {
  autocreate = Trash
  autocreate2 = Sent
  autosubscribe = Trash
  autosubscribe2 = Sent
}

/etc/dovecot/conf.d/auth-sql.conf.ext

passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}
userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
}

/etc/dovecot/conf.d/10-mail.conf

namespace inbox {
  # Namespace type: private, shared or public
  #type = private

  # Hierarchy separator to use. You should use the same separator for all
  # namespaces or some clients get confused. '/' is usually a good one.
  # The default however depends on the underlying mail storage format.
  #separator = 

  # Prefix required to access this namespace. This needs to be different for
  # all namespaces. For example "Public/".
  #prefix = 

  # Physical location of the mailbox. This is in same format as
  # mail_location, which is also the default for it.
  #location =

  # There can be only one INBOX, and this setting defines which namespace
  # has it.
  inbox = yes

  # If namespace is hidden, it's not advertised to clients via NAMESPACE
  # extension. You'll most likely also want to set list=no. This is mostly
  # useful when converting from another server with different namespaces which
  # you want to deprecate but still keep working. For example you can create
  # hidden namespaces with prefixes "~/mail/", "~%u/mail/" and "mail/".
  #hidden = no

  # Show the mailboxes under this namespace with LIST command. This makes the
  # namespace visible for clients that don't support NAMESPACE extension.
  # "children" value lists child mailboxes, but hides the namespace prefix.
  #list = yes

  # Namespace handles its own subscriptions. If set to "no", the parent
  # namespace handles them (empty prefix should always have this as "yes")
  #subscriptions = yes
}



mbox_write_locks = fcntl
mail_location = maildir:/var/mail/vhosts/%d/%n
mail_privileged_group = mail

最初から始めても、どんな提案でも歓迎します。しかし、正確かつ詳細に説明してください。私はメールサーバー設定の専門家ではありません。よろしくお願いします。

追加情報が必要な場合は、お知らせください。必要な設定ファイルで質問を更新します。

修正する:

皆さん、すべてが正しいようですが、なぜ電子メールを受信できないのかわかりません。誰を助けることができますか?どんなアイデアがありますか? ?

ベストアンサー1

おすすめ記事