Page 1 of 1

Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-03 18:55
by sfeni
Hi,

vexim
- legt keine Domain-Verzeichnisse mehr an
- legt keine User-Verzeichnisse mehr an
- löscht keine Domain-Verzeichnisse
- löscht keine User-Verzeichnisse

Ich versuche nun seit Stunden herauszufinden warum. Ich habe mir jede Log-File angeschaut. Habe auch versucht alle Dateien nach dem pop-account Name zu durchsuchen, aber keine Chance, das einzigste was ich finde, wenn ich die Domain abrufen will, dass das Verzeichnis nicht existiert, aber das weis ich ja bereits.
Gegooglet wie der Weltmeister, auch hier finde ich nur Probleme, die in Zusammenhang mit Mailman produziert werden mit Bindestrich im POP-Account oder "admin" im POP-Account Name. Aber all dies ist hier nicht der Fall.

Ich lege eine Domain "domain.de" in vexim mit dem postmaster "info" und einem Kennwort an. Verzeichnis /var/opt/vmail/ uid: 99 gid:99

/etc/passwd
vmail:x:99:99::/var/opt/vmail:/bin/false

/etc/group
vmail:x:99:

/var/opt/vmail
drwxr-xr-x 6 vmail vmail 168 Jan 3 17:42 .

Jetzt werden manche schreien, teste mal chmod 777, aber auch das funktioniert nicht. Bereits getestet.

Nun hoffe ich, dass jemand von euch da draußen weitere Tipps geben kann, was ich noch versuchen kann. Es geht mir hier nicht um fertige Lösungen, nur ich bin mit meinen Ideen gerade am Ende und benötige "input" ;-)

DANKE
Sfeni

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-03 21:42
by majobu
Hi

ich hatte auch so ein Problem... und zwar fehlte unter /usr/share/vexim/config/variables.php am Ende vom String in $mailroot ein /

Gruß
Marcus

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-03 21:45
by sfeni

Code: Select all

$mailroot = "/var/opt/vmail/";
Sieht nicht so aus.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-03 23:39
by floschi
Was steht in der MySQL-Tabelle denn direkt drin?

Was sagt exim4 bei

exim4 -bh 123.123.123.123 ?

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-03 23:54
by sfeni
Echte IP durch 123.123.123.123 ersetzt

Code: Select all

exim4 -bh 123.123.123.123

**** SMTP testing session as if from host 123.123.123.123
**** but without any ident (RFC 1413) callback.
**** This is not for real!

>>> host in host_lookup? yes (matched "*")
>>> looking up host name for 123.123.123.123
>>> IP address lookup yielded www1.meinedomain.de
>>> gethostbyname2 looked up these IP addresses:
>>>   name=www1.meinedomain.de address=123.123.123.123
>>> checking addresses for www1.meinedomain.de
>>>   123.123.123.123 OK
>>> host in host_reject_connection? no (option unset)
>>> host in sender_unqualified_hosts? no (option unset)
>>> host in recipient_unqualified_hosts? no (option unset)
>>> host in helo_verify_hosts? no (option unset)
>>> host in helo_try_verify_hosts? no (option unset)
>>> host in helo_accept_junk_hosts? no (option unset)
220 meinedomain.de ESMTP Exim 4.34 Mon, 03 Jan 2005 23:53:32 +0100

Welche Tabelle willst du denn wissen? (Der mySQL Eintrag ist korrekt wie bei den anderen auch, nur wird das Verzeichnis nicht angelegt)

EDIT:
Exim funktioniert komplett nur kann ich über vexim keine Benutzer mehr anlegen. Wenn ich die Verzeichnisse von Hand anlege und dann mit maildirmake die Maildir Sachen erstelle, dann funktioniert es wunderbar.

EDIT2:
Hat alles funktioniert bis zu einem reboot. War kein Absturz sondern ein normaler reboot über console.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-04 00:49
by dodolin
Ist schon länger her, dass ich das letzte Mal mit vexim zu tun hatte, aber IIRC sollte Exim beim Delivery eventuell fehlende Verzeichnisse anlegen. Was sagen also die Exim-Logs dazu, wenn Exim an einen User ausliefern soll, der zwar per vexim Weboberfläche angelegt wurde und in der DB drin ist, der aber noch kein Maildir-Verzeichnis hat?

Schaue dir insbesondere den Transport an, der das schreiben soll. Ich nehme an, der sollte mit user = vmail laufen, oder so. Jedenfalls muss der User, unter dem Exim das ablegt genügend Rechte haben, dass er im vmail-Verzeichnis neue Verzeichnisse etc. anlegen kann.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-04 14:17
by sfeni
dodolin wrote:Schaue dir insbesondere den Transport an, der das schreiben soll. Ich nehme an, der sollte mit user = vmail laufen, oder so. Jedenfalls muss der User, unter dem Exim das ablegt genügend Rechte haben, dass er im vmail-Verzeichnis neue Verzeichnisse etc. anlegen kann.
Was soll unter dem Benutzer vmail laufen? exim?

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-04 15:14
by dodolin
Was soll unter dem Benutzer vmail laufen? exim?
Nein, Exim selbst natürlich nicht.

In meiner bei vexim mitgelieferten docs/configure ist ein virtual_delivery Transport, der u.a. folgende Zeilen enthält:

Code: Select all

  user = ${lookup mysql{select users.uid  from users,domains 
                where localpart = '${quote_mysql:$local_part}' 
                and domain = '${quote_mysql:$domain}' 
                and users.domain_id = domains.domain_id}}
  group = ${lookup mysql{select users.gid from users,domains 
                where localpart = '${quote_mysql:$local_part}' 
                and domain = '${quote_mysql:$domain}' 
                and users.domain_id = domains.domain_id}}
Was kommt da raus? Ich nehme an, es sollte der vmail User sein.

Du hast aber immer noch nichts zu deinen Exim-Logs gesagt.

[Edit: Außerdem enthält dieser Transport noch die Zeile

Code: Select all

create_directory = true
, was normalerweise (bei ausreichenden Rechten) dafür sorgen sollte, dass nicht existierende Verzeichnisse von Exim angelegt werden.]

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-04 15:33
by sfeni
Hi, ja. in der Datenbank steht die uid 99 und gid 99, also der vmail user laut passwd und group datei.

In den Exim Logs steht gar nichts drin, was diese Verzeichnisse betrifft. Keine Fehler, Keine Hinweise oder sonst was.
Das einzigste was man findet in der /var/log/mail.log ist der Eintrag, dass kein chdir in das entsprechende Verzeichnis gemacht werden kann, weil es nicht existiert.

Steht bei mir auch:

Code: Select all

...
virtual_delivery:
  driver = appendfile
  envelope_to_add
  return_path_add
  mode = 0600
  maildir_format = true
  create_directory = true
  ...

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-05 22:12
by sfeni
mysql socket hat nicht funktioniert,

habe alle einträge mit dem mysql socket entfernt und nun tuts.
weis zwar nicht warum das nicht ging, der pfad hat gestimmt. nur warum hat es schon mal funktioniert!? *verwirrt*

EDIT:
er legt die verzeichnisse zwar an, aber löscht sie nicht.
ich denke das hat dann noch was mit dem hier zu tun:

Code: Select all

virtual_delivery:
...
mode = 0600
...

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-05 22:33
by sfeni
Was ich dann auch wieder nicht verstehe...
Warum hat der Login zum POP3 und SMTP dann funktioniert... alles wirklich ein wenig verwirrend.

Hat hier jemand Tipps oder Ideen?
Ich bin eigentlich nicht jemand, der das einfach so hinnimmt. Ich muss das verstehen. :-D

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-05 23:36
by dodolin
er legt die verzeichnisse zwar an, aber löscht sie nicht.
Das gehört so.

Ist zwar unschön, lässt sich aber nicht vermeiden:
Exim kann ja nicht wissen, wann er ein Verzeichnis löschen sollte.
Wenn schon, dann müsste das das Webfrontend machen, sobald dort ein User endgültig gelöscht wird. Für gewöhnlich hat aber der User des Webservers nicht genügend Rechte, die Mailverzeichnisse zu löschen.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-07 17:12
by sfeni
Okay.

Ist das normal, dass das Verzeichnis nur angelegt wird, wenn eine Mail ankommt (SMTP) und nicht wenn man Mails abrufen will (POP3)?

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2005-01-07 17:16
by captaincrunch
Ja, mach dir die Zusammenhänge klar, dann siehst du auch wieso.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-17 23:27
by umbroboy

Code: Select all

...
virtual_delivery:
  driver = appendfile
  envelope_to_add
  return_path_add
  mode = 0600
  maildir_format = true
  create_directory = true
  ...
Hallo,

wo finde ich denn diesen code?

habe das gleiche problem.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-18 00:19
by Roger Wilco
umbroboy wrote:wo finde ich denn diesen code?
In deiner exim.conf.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-18 00:57
by umbroboy
mh er legt diese leider immer noch nicht an.

hatte schon nen fehler gefunden.

aber hat die sache nicht behoben.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-18 01:07
by umbroboy
hab jetzt noch ne fehlermeldung gefunden im exim4 log.

Code: Select all

2006-07-18 01:03:56 1G2c84-0001gq-8e failed to expand "@ : ${lookup mysql{SELECT DISTINCT domain FROM domains WHERE type = 'local' AND enabled = '1' AND domain = '${quote_mysql:$domain}'}} : ${lookup mysql{SELECT DISTINCT alias FROM domainalias WHERE alias = '${quote_mysql:$domain}'}}" while checking a list: lookup of "SELECT DISTINCT domain FROM domains WHERE type = 'local' AND enabled = '1' AND domain = 'domain.de'" gave DEFER: MYSQL connection failed: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2)
da muss ich morgen mal schauen wo es da hakt...

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-18 13:07
by dodolin
Was gibt es da groß zu gucken, wo es hakt?

Code: Select all

MYSQL connection failed: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) 
Ist doch ziemlich eindeutig, oder?
HTH.

Re: Debianhowto sarge+exim4+vexim: legt keine user-dirs mehr an

Posted: 2006-07-18 18:53
by umbroboy
dodolin wrote:Was gibt es da groß zu gucken, wo es hakt?
Ja es war spät.

Der Pfad war natürlich falsch.