main.cf too long beim backup restore von 6.4-4 zu 7.1-1

proxmoxuser0815

Active Member
Mar 16, 2018
58
5
28
45
Hallo,

ich habe eine neue Kiste mit 7.1-1 aufgesetzt und versuche nun ein Konfig-Backup von 6.4-4 wiederherzustellen. Leider kommt die folgende Fehlermeldung, über das Web-GUI und die Shell:

Code:
file '/etc/postfix/main.cf' too long - aborting

Hat jemand eine Idee?

Vielen Dank im Voraus!
 
Habe das Problem gefunden. 6k Einträge in der Transporttabelle überfordern das System wohl.
sind dass auch 6k unterschiedliche Zielsysteme? - sonst würde ich empfehlen ein default relay zu setzen...
 
  • Like
Reactions: proxmoxuser0815
Hi,

jetzt wo du es sagst. Ich verstehe nicht, woher die 192.168.16.18-Einträge unter mynetworks kommen (siehe main.cf). Eigentlich ist es das Gateway für die Zieldomänen. Das Web-GUI zeigt 192.168.16.18 unter Networks jedenfalls nicht an.

Die /etc/pmg/transport sieht so aus:

Code:
domaene1.de smtp:[192.168.16.18]:25
domaene3.de smtp:[192.168.16.18]:25
domaene4.de smtp:[192.168.16.18]:25
...
...

Die /etc/pmg/transport wird regelmäßig neu generiert. Anschließend wird postmap /etc/pmg/transport ausgeführt. Vielleicht mache ich etwas falsch bzw. bringe etwas durcheinander?
 

Attachments

Last edited:
Danke für die main.cf - das ist in der Tat etwas verbesserungsbedürftig - wir speichern jeden transport-entry -egal ob er davor schon mal vorkommt (daher ist die main.cf bei Dir auch so riesig.

Ein Vorschlag (und wahrscheinlich auch der Grund, warum es bei den meisten anderen Installs bisher noch nicht aufgefallen ist:
Anstatt 6k Einträge in die transports zu machen:
domaene1.de smtp:[192.168.16.18]:25 domaene3.de smtp:[192.168.16.18]:25 domaene4.de smtp:[192.168.16.18]:25

einfach 192.168.16.18 als default relay eintragen (GUI->Configuration->Mail Proxy->Relaying)
und nur noch die Domains unter relay-domains eintragen.

(damit sollte es auch jetzt schon funktionieren - aber wir schauen uns an wie wir das verbessern können)
 
  • Like
Reactions: proxmoxuser0815
Unter Relay habe ich aktuell unseren Exchange und unter Relay-Domains unsere Hausdomäne. Sollen die dann in die Transporttabelle?

Kann man das Befüllen der relay-domains automatisieren? sowas wie postmap /etc/pmg/domains ?
 
Unter Relay habe ich aktuell unseren Exchange und unter Relay-Domains unsere Hausdomäne. Sollen die dann in die Transporttabelle?
jupp - alle mails an domains, die als Relay Domains eingetragen sind werden:
* an den Host/die IP, die als transport entry für die domain eingetragen ist weitergeleitet, und falls diese nicht existiert an
* das default relay

und in dem fall bietet es sich an die interne domain mit einem transport entry zu erstellen und die 6000 ans default relay zu schicken

Kann man das Befüllen der relay-domains automatisieren? sowas wie postmap /etc/pmg/domains ?
habt ihr die domains bisher gar nicht als relay domains eingetragen?
(Prinzipiell sollte das schon sein, damit mails auch sinnvoll angenommen werden)
und ja - /etc/pmg/domains ist eine postfix table (für den relay_domains parameter) und kann befüllt werden
Prinzipiell würde ich vorschlagen die REST-API zu verwenden:
https://pmg.proxmox.com/pmg-docs/api-viewer/index.html
Falls sich doch mal etwas am handling ändert wird die (zumindest bis zum nächsten major upgrade) backward-Kompatibel bleiben
(Wobei ich nicht erwarte, dass sich in dem Bereich etwas gravierend ändert)
 
  • Like
Reactions: proxmoxuser0815
Danke, die REST-API werde ich mir genauer anschauen.

habt ihr die domains bisher gar nicht als relay domains eingetragen?

Welche Domains meinst du? Der Exchange ist im Moment default Relay und die Hausdomäne unter Relay-Domäne. Die 6k Domains (externe Domänen) sind zurzeit nur in der Transporttabelle. Aber so wie ich dich verstanden habe, sollte man beides gegeneinander tauschen.

Also:

Default Relay: 192.168.16.18 (das spezielle Gateway)
Relay-Domains: die 6k Domänen

Transport: hausdomäne.de smtp:[Exchange]:25
 
stehen die 6k domains nicht in /etc/pmg/domains?

Also:

Default Relay: 192.168.16.18 (das spezielle Gateway)
Relay-Domains: die 6k Domänen

Transport: hausdomäne.de smtp:[Exchange]:25
klingt richtig
 
  • Like
Reactions: proxmoxuser0815
Mit pmgsh geht es nur zeilenweise, oder? Bei tausenden Einträgen dauert das lange, und das Leeren ist noch umständlicher. Gibt es andere Möglichkeiten, domains zu befüllen bzw. zu leeren?

Vorher leeren
Code:
???
Befüllen
Code:
while read i ; do pmgsh create /config/domains --domain $i ; done < domain.list
 
leeren kann man auf ähnliche art und weise:
Code:
for domain in $(pmgsh get /config/domains 2> /dev/null | jq -r '.[].domain'); do pmgsh delete /config/domains/$domain; done

ansonsten könnte man nur das file direkt schreiben (/etc/pmg/domains) + danach 'postmap /etc/pmg/domains' aufrufen
 
  • Like
Reactions: Stoiko Ivanov

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!