Jump to content
Froxlor Forum
  • 0

Problem Mailserver Dovecot


Netsurfer

Question

Hallo zusammen!

Ich habe ein Problem, bei dem ich nicht wei?, wie ich es abgestellt bekomme, da ich gar keine Idee (mehr) habe, wo ich (noch) suchen soll, bzw. was die Ursache daf?r ist.
Deshalb hoffe ich, dass mir ggf. jemand von euch weiterhelfen kann.

Ich habe einen vServer auf dem das Standard Image mit Debian Squeeze und Froxlor installiert ist.
F?r die Mailgeschichte verwende ich Postfix + Dovecot (per SSL/ SASL Auth).

Soweit l?uft und funktioniert auch alles bestens. Mail Empfang + Versand funktionieren f?r alle Kunden problemlos, oder zumindest fast problemlos.
Denn mein mail.err Log l?uft permanent mit derselben Fehlermeldung voll:

dovecot: deliver(web10): mail_location not set and autodetection failed: Mail storage autodetection failed with home=/var/customers/webs/web10/
dovecot: deliver(web10): Fatal: Namespace initialization failed

 

Der Kunde 'web10' ist genauso angelegt/ konfiguriert wie jeder der 16 anderen Kunden auch.
Die Mails f?r diesen Kunden kommen auch an und der Versand funktioniert ebenfalls.

Von daher ist mir die Fehlermeldung ein ziemliches R?tsel.
Ich habe jetzt noch die Vermutung, dass das Problem irgendetwas mit 'web1' vs 'web10' zu tun hat.

Hat jemand von euch 20 oder mehr Kunden auf einem ?hnlichen System? Denn ich bef?rchte, dass sich das dann mit 'web2' vs 'web20' wiederholt ...!

Kennt ihr das Problem, bzw. k?nnt das auf eurem System nachvollziehen?
Wei? jemand, wie ich das abstellen/ beseitigen kann?

Wenn noch weitere Informationen von N?ten sind, liefere ich die nat?rlich jederzeit gerne nach.

Vielen Dank f?r eure Hilfe im Voraus!

Gru?
Gunther

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

Ich habe fast das selbe problem ich besitzte einen Rootserver ich habe alles so gemacht wie es in der Anleitung steht doch ich kann mich ?ber Thunderbird in mein Email Account nicht einloggen. Emails kommen an nur einloggen kann ich mich nicht.

ich m?chte ende m?rz mit meiner seite online gehen

## General Postfix configuration
# should be the default domain from your provider eg. "server100.provider.tld"
mydomain = 123.webgo24.de

# should be different from $mydomain eg. "mail.$mydomain"
myhostname = 123.webgo24.de

mydestination = $myhostname, //muss ich hier den hostnamen eigeben?
$mydomain, //hier den domain namen eingeben?
localhost.$myhostname, //was hier tun?
localhost.$mydomain, //was hier auch tun?
localhost //und hier?
mynetworks = 127.0.0.0/8
inet_interfaces = all
append_dot_mydomain = no
biff = no

# Postfix performance settings
default_destination_concurrency_limit = 20
local_destination_concurrency_limit = 2

# SMTPD Settings
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_unauth_pipelining,
reject_non_fqdn_recipient
smtpd_sender_restrictions = permit_mynetworks,
reject_sender_login_mismatch,
permit_sasl_authenticated, 
reject_unknown_helo_hostname, 
reject_unknown_recipient_domain, 
reject_unknown_sender_domain
smtpd_client_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_unknown_client_hostname
# Maximum size of Message in bytes (50MB)
message_size_limit = 52428800

## SASL Auth Settings
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = yes
## Dovecot Settings for deliver, SASL Auth and virtual transport
smtpd_sasl_type = dovecot
mailbox_command = /usr/lib/dovecot/deliver
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
smtpd_sasl_path = private/auth

# Virtual delivery settings
virtual_mailbox_base = /var/customers/mail/
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailbox_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf
smtpd_sender_login_maps = mysql:/etc/postfix/mysql-virtual_sender_permissions.cf
virtual_uid_maps = static:2000
virtual_gid_maps = static:2000

# Local delivery settings
local_transport = local
alias_maps = $alias_database

# Default Mailbox size, is set to 0 which means unlimited!
mailbox_size_limit = 0
virtual_mailbox_limit = 0

### TLS settings
###
## TLS for outgoing mails from the server to another server
#smtp_tls_security_level = may
#smtp_tls_note_starttls_offer = yes
## TLS for email client
#smtpd_tls_security_level = may
#smtpd_tls_cert_file = /etc/ssl/server/ds18209.webgo24.de.pem
#smtpd_tls_key_file = $smtpd_tls_cert_file
#smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
#smtpd_tls_loglevel = 1
#smtpd_tls_received_header = yes

debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5

 

 

Link to comment
Share on other sites

Die Froxlor Configuration-Templates geben das alles vor. Allerdings steht gro? da, dass $myhostname anders als $mydomain sein sollte. Am besten machst du einfach:

 

myhostname = mail.$mydomain

so z.B. myhostname = mail.domain.tld ?oder wie genau?

Link to comment
Share on other sites

kannste auch machen, oder du l?sst es wirklich einfach so:

 

myhostname = mail.$mydomain

 

$mydomain ist die Variable die du eine Zeile weiter oben doch schon mit deinem Hostname (domain.tld) gesetzt hast. Da steht dann von alleine "mail.domain.tld" drin.

Link to comment
Share on other sites

kannste auch machen, oder du l?sst es wirklich einfach so:

 

myhostname = mail.$mydomain

 

$mydomain ist die Variable die du eine Zeile weiter oben doch schon mit deinem Hostname (domain.tld) gesetzt hast. Da steht dann von alleine "mail.domain.tld" drin.

hmm okay. ich schau mir das heute nacht an muss jetzt zu arbeit

Link to comment
Share on other sites

lange ist es her und Fehlermeldung hab ich nicht mehr ... die Problemem meiner Postfix mit ca. 50 Domain  hatten sich erledigt, nachdem ich das so angelegt hatte:

 

## General Postfix configuration

# should be the default domain from your provider eg. "server100.provider.tld"

mydomain = mail.domain.de

# should be different from $mydomain eg. "mail.$mydomain"

myhostname = mail.domain.de // gleicher Name wie mydomain, muss im DNS erreichbar sein / MX der "Hauptdomain"!

mydestination = $myhostname, 

#     $mydomain,  <--- auskommentiert !!!!!

       localhost.$myhostname  ... usw ... 

Link to comment
Share on other sites

Hallo zusammen!

 

Also zu meinem urspr?nglichen Problem (das mit den Fehlermeldungen im Mail-Error-Log): Es hat sich erledigt!

Der Grund daf?r war nat?rlich, wie so oft, in meiner "Unerfahrenheit" begr?ndet.

 

Aber falls das anderen Usern auch mal so ergeht, hier die ausf?hrliche Beschreibung:

Ich hatte f?r besagten Kunden (web10) in der 'crontab' Datei einen Cron Job eingetragen, der nicht als 'root', sondern eben als user 'web10' ausgef?hrt werden soll.

Und dieser Cron Job verursachte bei jedem Lauf (jede Stunde) einen Fehler, ?ber den mich der Cron Daemon gerne per Mail informieren wollte.

Dieser bastelt sich die E-Mail Adresse aber nach folgendem Schema zusammen: '<user>@<mailname, bzw. myhostname>'

 

Eine solche E-Mail Adresse ist Froxlor nat?rlich g?nzlich unbekannt, weshalb sich auch keine entsprechenden Eintr?ge in der 'froxlor' DB finden.

Somit wissen Postfix und Dovecot nat?rlich nicht wohin mit der Mail.

 

Die L?sung:

Merke - f?r jeden User in crontab einen entsprechenden Alias in /etc/aliases anlegen!

 

Konkret in meinem Fall habe ich also in /etc/aliases den folgenden Eintrag erg?nzt:
web10: root (<= oder ein anderer Empf?nger, bzw. direkt eine E-Mail Adresse)

Wichtig - nach jeder ?nderung in der aliases Datei ?ber die Shell "newaliases" ausf?hren und Postfix und Dovecot vorsichtshalber auch gleich noch restarten (/etc/init.d/postfix|dovecot restart).

Jetzt sollten sowohl die Mails vom Cron Daemon an der gew?nschten Adresse ankommen, als auch die Eintr?ge im Error-Log verschwunden sein.

 

Zu der anderen Geschichte hier im Thread m?chte ich noch folgendes erg?nzen:

Allerdings steht gro? da, dass $myhostname anders als $mydomain sein sollte.

Ja, und genau diese Aussage hat mir einiges an "Kopfzerbrechen", bzw. Problemen bereitet ...!

 

Denn aufgrund dieser Aussage hatte ich zuerst in der Postfix 'main.cf' folgendes eingetragen:

mydomain = example.com

myhostname = mail.example.com

Das f?hrte allerdings zu den "beliebten"

mail_location not set and autodetection failed: Mail storage autodetection failed with home=...

Fatal: Namespace initialization failed

Fehlermeldungen.

 

Nach langem Suchen bin ich dann auf den bereits von merlin in Posting #8 beschriebenen Hinweis gesto?en.

Obwohl dieser das Problem vermeintlich erstmal beseitigt, trat bei mir mit dieser Variante aber ein anderes Problem auf (ich kann mich leider nicht mehr erinnern, welches).

 

Ich habe es jetzt in meiner Konfiguration so gel?st:

mydomain = $myhostname

myhostname = mail.example.com

Damit "funktioniert" es mit meiner Konstellation zumindest einwandfrei (wenn man mal von der eigenen Bl?dheit absieht).

 

Gru?

Gunther

Link to comment
Share on other sites

The ideas you provided listed below are extremely precious. It been found this type of pleasurable surprise to obtain that waiting for me as i awakened today. They are constantly concise easy to know. Thanks a ton for that valuable ideas you?ve got shared here.

You're posting in a german-language sub-forum and i really don't understand what you want to say

Link to comment
Share on other sites

 

...

Der Grund daf?r war nat?rlich, wie so oft, in meiner "Unerfahrenheit" begr?ndet.

 

Aber falls das anderen Usern auch mal so ergeht, hier die ausf?hrliche Beschreibung:

Ich hatte f?r besagten Kunden (web10) in der 'crontab' Datei einen Cron Job eingetragen, der nicht als 'root', sondern eben als user 'web10' ausgef?hrt werden soll.

Und dieser Cron Job verursachte bei jedem Lauf (jede Stunde) einen Fehler, ?ber den mich der Cron Daemon gerne per Mail informieren wollte.

Dieser bastelt sich die E-Mail Adresse aber nach folgendem Schema zusammen: '<user>@<mailname, bzw. myhostname>'

 

Eine solche E-Mail Adresse ist Froxlor nat?rlich g?nzlich unbekannt, weshalb sich auch keine entsprechenden Eintr?ge in der 'froxlor' DB finden.

Somit wissen Postfix und Dovecot nat?rlich nicht wohin mit der Mail.

 

Die L?sung:

Merke - f?r jeden User in crontab einen entsprechenden Alias in /etc/aliases anlegen!

 

...

 

Falscher Ansatz. F?r solche F?lle gibt es in der Crontab die MAILTO Anweisung.

 

Hier eine Seite zum Nachlesen: https://wiki.archlinux.de/title/Cron#E-Mail-Benachrichtigung

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...