
Ich habe einen Mailserver mit Postfix, Dovecot als SASL und Rainloop als WebClient eingerichtet. Ich verwende MySQL (nachdem ich gefragt habeMeine letzte Frage) für meine Benutzerkonten und Passwörter und es funktioniert einwandfrei, aber ich habe zwei Probleme. [DAS ZWEITE IST GELÖST]
Ich kann keine E-Mails empfangen! (Ich muss nur dafür sorgen, dass die Mitarbeiter per E-Mail in Kontakt bleiben. Sie können im Moment keine E-Mails empfangen. Wenn ich E-Mails von einem Mitarbeiter zum anderen sende, kann ich keine Protokolldatei mit einem Fehler finden. Ich habe wirklich keine Ahnung, was das Problem sein könnte, dass ich keine E-Mails empfangen kann.)
[GELÖST] Benutzer können sich über ThunderBird anmelden, da es sowohl für SMTP als auch für IMAP eine Bestätigung des Zertifikats verlangt. D. h. wenn ich mich anmelde, sollte ich das Zertifikat akzeptieren und wenn ich zum ersten Mal eine E-Mail sende, sollte ich ein weiteres Zertifikat akzeptieren, und dann wird es funktionieren. Outlook kann sich jedoch nicht anmelden, da es nur einmal und für IMAP nach einem Zertifikat fragt.
Hier sind meine Konfigurationsdateien:
/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
Ich habe 3 DB-Tabellen, virtuelle Domänen, virtuelle Benutzer, virtuelle Aliase. Postfix kennt sie alle, und dies wurde durch die Verwendung von postmap
Befehlen nachgewiesen, und die Konfigurationen sind in mysql-virtual-mailbox-domains.cf, mysql-virtual-mailbox-maps.cf, mysql-virtual-email2email.cf, mysql-virtual-alias-maps.cf festgelegt.
/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
Ich bin für jeden Vorschlag offen, auch wenn ich von vorne beginnen muss. Aber seien Sie bitte präzise und erklären Sie alles ausführlich, ich bin kein Experte für das Einrichten von Mailservern. Vielen Dank im Voraus.
Wenn noch etwas benötigt wird, lassen Sie es mich wissen und ich werde die Frage mit den erforderlichen Konfigurationsdateien aktualisieren.
AKTUALISIEREN:
Leute, ich habe keine Ahnung, warum ich keine E-Mails empfangen kann, obwohl alles in Ordnung zu sein scheint. Kann mir jemand helfen? Irgendeine Idee??