# Umstellung des Mailservers



## Kreuzkauz (20. April 2008)

Hallo,

ich habe einen 1&1-root-Server mit openSuSE 10.2.

Zur Zeit läuft mein E-Mailverkehr über den 1&1-Mailserver. Ich benötige aber einen lokalen Mailserver. 1&1 ist leider nicht bei der Softwareeinrichtung behilflich.

In meinem Kunden-Login von 1&1 stehen mehere Domain-Namen. Einer ist mit einem *MX* gekennzeicht und dem Hinweis das ein lokaler Mailserver benötigt wird. Ansondten kann ich mir auf *MX*, keinen Reim machen!

Als Domain-Name nehme ich *muster.de*.

Als erstes habe ich einen Benutzer neu angelegt. Nennen wir ihn mal max. Für den Benutzer max soll das E-Mail-Postfach mit Namen *max@muster.de* eingerichtet werden.

Welche Software-Pakete benötige ich, damit ich E-Mail versenden und empfangen kann?

Ich habe gehört, das *Postfix* ganz gut zu konfigurieren ist.

Was soll ich als nächstes tun?

Bitte keine Beispiele für yast geben. Bitte nur Befehle die über den Prompt eingeben werden können, angeben.


Thomas


----------



## Navy (20. April 2008)

http://de.wikipedia.org/wiki/MX_Resource_Record

und

http://www.tuxhausen.de/software_postfix.html

Und in Deinem Interesse rate ich Dir dazu Dich über Postfix zu belesen und dieses sauber zu konfigurieren.


----------



## Kreuzkauz (20. April 2008)

Hallo Navy,

ich habe die Links gepostet. Anleitungen wie man POSTFIX installiert und konfiguriert habe ich schon zu hauf gelesen  Ich komme da nicht weiter. Ich will auch kein Open-Relay einrichten.

Zu Link 2.: Habe ich das richtig verstanden? Der Domain-Name der mit einem MX gekenzeicht ist, ist quasi der Haupt-Domain-Name wohin die E-Mail geschickt und empfangen werden können?


Thomas


----------



## olqs (21. April 2008)

Mit dem MX Record wird der zuständige Mailserver für eine Domain angegeben.
Wenn ne Mail an irgendwas@muster.de versendet wird, dann wird vom abschickenden Mail Server der MX Eintrag für muster.de abgefragt und dann die Mail an den zurückgelieferten Server versendet.

Wieso nimmst du nicht yast um den Postfix zu konfigurieren? Wenn du selbst nicht weiterkommst wäre das doch ne Möglichkeit, ansonsten ist der Link von Navy nicht schlecht. Ein Mailserver ist einfach ein richtig komplexes Stück Software und es reicht da nicht mit ein paar allgemeinen Tipps das sauber zu konfigurieren.

Zu Postfix find ich  dieses Buch nicht schlecht. Gibts auch auf Deutsch


----------



## Kreuzkauz (21. April 2008)

Hallo,


ich möchte gerne POSTFIX über den yast einrichten. Ich denke Du meinst ich soll den *MTA* konfigurieren. Da habe ich aber Schwierigkeiten bei!

Bleiben wir kurz mal beim *MX-Record*. Der Domain-Name den ich für das E-Mail-Postfach nehmen möchte muss mit *MX* gekennzeichnet sein.

In meinen Kunden-Login stehen *4 Mailserver*. In den ersten beiden habe ich jeweils einen von meinen Domain-Namen eingetragen. Der erste hat Prio 10 der zweite Prio 20. Mailserver 3 und 4 sind von 1&1, die haben beide Prio 30.

Jetzt möchte ich für den Mailverkehr für den *Mailserver 1* einrichten.

Was soll ich als nächstes tun?


Thomas


----------



## olqs (21. April 2008)

Postfix ist ein MTA(=Mail Transfer Agent). Andere MTAs sind z.B. sendmail, qmail, exim

Das mit den MX Records sollte passen. Als nächstes heissts Postfix, also den MTA einrichten.


----------



## Kreuzkauz (21. April 2008)

Hallo,

ich habe die POSTFIX-Software installiert.

Ich gehe jetzt über yast in die MTA-Einrichtung.

1. Bei Verbindubgart gebe ich Permanent ein
2. Bei Ausgehende Mail gebe ich die Domain ein die mit *MX* gekennzeichnet ist
    Ich nehme an das für einen Sicheren Server eine Authentifizierung notwendig ist.
    Was sol ich denn unter Benutzername und Passwort angeben?
3. Jetzt kommt das größte Problem. Bei Eingehende Mail stehen Fragen wie: Entfernte    
   SMTP zulassen? Herunterladen, Entfernter Benutzername mit Passwort, localer    
   Benutzer. Das einzige was mir bekannt vor kommt ist die Adresse für den *POP3- 
   Server*. Hier würde ich wieder die mit *MX* gekennzeichnete Domain eintragen.

Ich möchte den Mailserver erstmal nur für ein Postfach und einen Benutzer einrichten. Ich habe einen neuen Benutzer angelegt. Er heist max. Er soll zu dieser Mailbox Post bekommen: *max@meine-domain.de*.


Thomas


----------



## olqs (21. April 2008)

Hab einen Artikel von Heise gefunden, der sich mit Mailserver unter OpenSUSE beschäftigt.
Da sollten die meisten Fragen von dir beantwortet werden.
http://www.heise.de/open/Mailserver-mit-Spamfilter--/artikel/74991/0

Zu 2.: Bei Ausgehende Mail trägst du den Mailserver von 1&1 ein, der dann als Relay dient und vielleicht auch eine Authentifizierung benötigt. Ich würde es mal probieren leer zu lassen für ein direktes versenden der Mails per SMTP.

Für die genaue Konfiguration bräuchte ich wieder mal ein Suse System auf dem ich was testen kann.


----------



## Kreuzkauz (21. April 2008)

Hallo,

warum soll ich denn den Mailserver von 1&1 angeben? Ich will doch einen eigenen Mailserver betreiben.


Thomas


----------



## olqs (21. April 2008)

Hast du den zweiten Satz auch gelesen?


----------



## Kreuzkauz (21. April 2008)

Hallo,

ja dann probiere ich mal.

Hast Ahnung wie man die *main.cf *von POSTFIX konfiguriert. Dann brauche ich den yast nicht.


Thomas


----------



## olqs (21. April 2008)

Ja sicher weiß ich das. Es geht aber darum, dass man wissen sollte was man tut, wenn man selbst nen Mail Server betreibt.

Deshalb haben wir schon einige Links zum lesen gepostet. Es wird dir nicht ausbleiben dich mit der Thematik zu beschäftigen.

Ich hab eben vorgeschlagen, dass du das mit Yast machst, da du dann nicht so tief in die Materie gehen musst und doch ein sicherer Mailserver rauskommt. Flexibler bist du natürlich mit einer Konfiguration per Hand.
Das Wissen wie Mailverkehr abläuft musst da aber schon haben.

Mal ne ganz andere Frage:
Wieso willst du eigentlich von den 1&1 Mailservern weg? Was bringt dir dein eigener Mail Server für einen Vorteil?

Wenn es die um die Flexibilität geht und vielleicht sogar Multi Domain hosting mit Virenscanner und Spamerkennung, dann geht das weit über Grundwissen hinaus.
Für den Anfang würd ich dir empfehlen eine virtuelle Maschine auf deinem PC zuhause aufzusetzen und dann mal die Möglichkeiten auszutesten. 

Es gibt soviele gute Mail-/Postfix HowTos im Netz. Manche sogar mit ner Art Schritt für Schritt Anleitung und ich habe das Gefühl du hast noch keines gelesen.

Auf http://www.postfix.org/docs.html findest du Links zu einer Menge verschiedener Anleitungen, wenn du lieber was deutsches willst, dann befrage mal Google nach "postfix howto". Ich verstehe das nicht jede Anleitung für jeden das Richtige ist, aber eine dieser sollte schon passen.

Ich beantworte dir dann gerne spezielle Fragen zur Konfiguration, aber ich habe keine Lust ein neues HowTo bzw Tutorial für das Thema zu schreiben.


----------



## Kreuzkauz (21. April 2008)

Hallo!

Ich möchte deshalb einen eigenen Mailserver haben, weil ich einen Kunden habe der einen Mailserver mit Postfix betreibt und den ich später betreuen soll, wenn alles gut geht.

Ich habe hier jede Menge Blockschaltbilder mit *MUA*, *MTA*, *MDA* usw.

HowTo´s brauch keiner für mich Schreiben. In den meisten HowTo´s steht wie man seine Post vom ISP abholt. Ich bin aber selber der ISP. Mit dem Thema Mailserver und co. beschäftige ich mich schon seit Tagen. Zwischen unseren Beiträgen hier, schaue ich mir HowTo´s an.Ich habe es auch schon geschafft E-Mails zu versenden. Empfang ist aber nicht möglich.

Darf ich hier mal ein paar Teile aus der *main.cf *zeigen, die ich nicht so genau verstehe?

Soll ich bei *mynetworks* meine feste IP mit Port und IP vom localhost eintragen? 


Thomas


----------



## olqs (23. April 2008)

Jetzt wirds konkreter  Genau das meint ich mit meinem letzten Post.

Bei allgemeinen Fragen ist leider nur allgemeine Antwort möglich.

Unter mynetworks würd ich 127.0.0.0/8 und deine offizielle IP eintragen. Meistens wird Postfix so konfiguriert, dass alle Hosts aus mynetworks den Server als Relay nutzen dürfen, also sollte es möglichst restriktiv gesetzt sein.


----------



## Kreuzkauz (24. April 2008)

Hallo,

ich habe *smtp.1und1.de* als relayhost in der *main.cf *eingetragen. Das Versenden von E-Mail klappt prima. Der Empfang ist immer noch nicht möglich. Wenn ich eine E-Mail zu meinem Server-Postfach schicke, dann kommt sie zurück mit der Fehlermeldung 550.

Könnte der Fehler in der Konfiguration der Datei *main.cf *liegen?

Wenn ich fetchmail ausführe, dann steht immer *keine* Mail für max.


Thomas


----------



## olqs (24. April 2008)

fetchmail brauchst du hier nicht. Das frägt nur bei pop Postfächern die Mails ab und wird hier nicht benötigt.

Ok bei einem 550 Fehler ist das Postfach unbekannt. Ich vermute, dass etwas mit der Domain nicht stimmt für die sich dein smtp zuständig fühlt.

Hast du mydestination auf muster.de gesetzt?


----------



## Kreuzkauz (24. April 2008)

Hallo,

ich kann gerade nicht auf die *main.cf* zugreifen, weil ich in Berlin-Kreuzberg beim JobCenter am Internet-Terminal sitze. Ich gebe Dir die Daten dann später.

Ich habe *qpopper* installiert und über *xinetd* gestartet. Kann ich das so lassen?



Thomas


----------



## olqs (24. April 2008)

Pop3 Server kenn ich im allgemeinen eher weniger, ich hab eigentlich immer nur imap am laufen.

Dein Pop3 Server hat jedenfalls mal nichts mit der Mailzustellung zu tun. An dem liegt es nicht wenn du die 550 Fehlermeldung bekommst.


----------



## Kreuzkauz (24. April 2008)

Hallo,

wir können auch mit IMAP weiter machen. Hauptsache es funktioniert zum Schluss!

So sieht meine *main.cf *aus:



*queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
mail_owner = postfix
myhostname = xxxxxx-server.de
myorigin = $myhostname
inet_interfaces = $myhostname, localhost
mydestination = $myhostname, localhost.$mydomain, localhost
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8, xxx.xxx.xxx.xxx/24
relayhost = smtp.1und1.de
mail_spool_directory = /var/spool/postfix
smtpd_banner = $myhostname ESMTP $mail_name  
debug_peer_level = 2

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

sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq 
html_directory = /usr/share/doc/packages/postfix/html
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix/samples
readme_directory = /usr/share/doc/packages/postfix/README_FILES
inet_protocols = all
biff = no

#SMTP Auth
#SMTP mit SASL-Authentification verwenden
smtp_sasl_auth_enable = yes
#Die Passwörter stehen in der Datei /etc/postfix/smtp_auth
smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth
#Zusatz-Optionen: Keine anonyme-Anmeldung verwenden
smtp_sasl_security_options = noanonymous*



Thomas


----------



## olqs (25. April 2008)

Sieht soweit eigentlich nicht schlecht aus.
Hat der Benutzer dem du die Mail senden willst ein Postfach/Homedir auf deinem Server?

Hast Du schonmal mit telnet probiert eine mail abzusenden:

```
telnet localhost 25
ehlo test.com
mail from: test@test.com
rcpt to: max@muster.de
data
test
.
```

In mynetworks würd ich übrigens das /24 auf ein /32 ändern. Du willst ja im Zweifelsfall nicht zuvielen Relaying erlauben.


----------



## Kreuzkauz (25. April 2008)

Hallo,

ich stelle die 24 auf 32 um.

Hier ist die Antwort von dem Versuch mit telnet:

*220 xxxxxx.onlinehome-server.info ESMTP
ehlo test.com
250-xxxxxx.onlinehome-server.info
250-STARTTLS
250-PIPELINING
250 8BITMIME
mail from: test@test.com
250 ok
rcpt to:info@xxxxxx-server.de
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)*

Das gibt es einen Fehler!

Welchen IMAP könnte ich den nehmen? Cyrus oder Courier?


Thomas


----------



## olqs (25. April 2008)

Hmm irgendwie fühlt sich der Postfix server nicht für deine Domain zuständig.

Was liefert dir denn
	
	
	



```
postconf mydomain
```
Falls nicht deine Domain zurückgeliefert wird mach folgende Änderungen in deinem Configfile:

```
myhostname=mail.deine-domain.tld
mydomain=deine-domain.tld
mydestination=$myhostname, $myhostname.localdomain, localhost, $mydomain
```

Falls deine Domain wirklich onlinehome-server.info ist, dann passen auch die MX Einträge im DNS noch nicht


----------



## Kreuzkauz (25. April 2008)

Hallo,


*postconf mydomain* zeigt *xxxxxx-server.de *an (das ist richtig).

Ich habe folgendes geändert:

*myhostname=xxxxxx-server.de
mydomain=xxxxxx-server.de
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain*

Immer noch die gleiche Fehlermeldung wie gerade beschrieben.

Warum kommt diese Fehlermeldung?

/etc/init.d # ./postfix reload
Reload mail service (Postfix)                                         failed



Thomas


----------



## Kreuzkauz (25. April 2008)

Hallo,

ich glaube es gibt ein Problem mit dem MX-Record. Wenn ich auf dem Windows-Prompt *nslookup type=MX xxxxxx-server.de* eingebe, dann kommt diese Meldung:

*Server:unkown
Address:xxx.xxx.xxx.xxx* (meine feste IP für den Server)

Mit den Domain-Namen und dem MX-Record habe ich auch Verständnisprobleme.

Es gibt bei mir wohl drei Domain-Namen für meine feste IP.

1. *xxxxxx-server.de*  (Die Domain habe ich bestellt)

2. sxxxx*xxxxx.online.de* (*MX*) die ist als Subdomain gekennzeichnet

3.  *sxxxxxxxx.onlinehome-server.info *(Nach einer Server-Initialisierung erscheint *sxxxxxxxxx* links auf dem Konsolen-Prompt und zeigt somit den Grund-Hostname an)

Zur Zeit habe ich den Hostname xxxxxx-server.de (obiges Beispiel Nr.1) für meinen Server eingestellt. Muss das geändert werden?


Thomas


----------



## Kreuzkauz (25. April 2008)

Hallo,

ich bin jetzt etwas weiter gekommen. Der Fehler lag in der sasl_passwd. Dort hatte ich etwas falsches rein geschrieben.

*telnet localhost 25
ehlo test.com
mail from: test@test.com
rcpt to: max@muster.de
data
test
.*
konnte ausgeführt werden.

Danach erscheint diese Meldung:

*250 ok 1209157554 qp 13140*

*quit*

Eine Mail habe ich aber noch nicht bekommen!

Soll ich jetzt den IMAP einrichten? Welcher läßt sich den einfach einrichten?





Thomas


----------



## Kreuzkauz (27. April 2008)

Hallo,

wie geht es jetzt weiter?


Thomas


----------



## olqs (28. April 2008)

Na das liest sich ja schonmal besser.
An die sasl Konfig selbst hab ich jetzt nicht gedacht.

Jetzt wird auf jeden Fall mal die Mail vom Postfix angenommen. Aber wird die auch ausgeliefert? Was sagen die Logfiles dazu?

Liegt die Mail im $HOME des Users? Je nach dem ob du maildir oder mbox als Ablageformat nimmst leicht woanders.

Wenn das geht, dann können wir uns mit Imap beschäftigen.Ich nutz dafür eigentlich immer courier-imap.

```
yast -i courier-imap
```


----------



## Kreuzkauz (28. April 2008)

Hallo,


das habe ich ausgeführt:

sxxxxxx:~ # telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 sxxxxxx.onlinehome-server.info ESMTP
ehlo test.com                 
250-sxxxxxx.onlinehome-server.info
250-STARTTLS
250-PIPELINING
250 8BITMIME
mail from:test@test.com
250 ok
rcpt to:info@xxxxxx-server.de
250 ok
data
354 go ahead
Hallo Thomas
.
250 ok 1209387779 qp 26422
quit
221 sxxxxxx.onlinehome-server.info
Connection closed by foreign host.
sxxxxxx:~ # su info
info@sxxxxxx:/root> mail
No mail for info

Ich habe den Hostnamen vom Server so geändert:

von *sxxxxxx* auf *xxxxxx-server.de*

Es kommt das gleiche bei raus.


Thomas


----------



## olqs (30. April 2008)

Probiers mal nicht von localhost. Es kann sein, dass von localhost sowieso jede Mail angenommen wird.


----------



## Kreuzkauz (13. Mai 2008)

Hallo,

ich hatte viel zu tun!

Ich habe jetzt meinen Mailserver soweit das er über relayhost = smtp.1und1.de sendet und über qpopper die Mails bereitstellt. Die Datei /etc/postfix/sasl_passwd ist dementsprechend ausgefüllt.

Jetzt möchte ich über meinen eigenen Mailserver Mails verschicken (ohne relayhost). Es sollte eine Authentifizierung möglich sein!

Ich möchte gerne Courier mit mysql benutzen.

Ich habe diese Einträge in der */etc/postfix/main.cf* erstmal so gelassen.

_smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination
smtpd_sasl_auth_enable = no
smtpd_use_tls = no
smtp_use_tls = no_

Das Software-Paket Courier ist installiert. Sämtliche Courier-Dienste sind gestoppt, bis ich die richtige konfiguration weiss.


Ich habe versucht ein passendes HowTo zu finden. Es gibt da aber zu viele und es passt nichts so richtig.


Gruß

Thomas


----------



## Kreuzkauz (18. Mai 2008)

Hallo,

das senden über Relayhost von 1&1 klappt Prima. Auch die Fernabfrage der E-Mail klappt sehr gut. Da habe ich erstmal ein POP-Server genommen. Den brauch man nur über xinetd einschalten, dann läuft er. 

Was ich jetzt bräuchte, wäre eine Möglichkeit ohne Relayhost zu senden. Von der Konsole über den Befehl mail klappt das schon (auch ohne Username und Passwort). 
Aber ich möchte von zu Hause über meinen Mailclienten Mails versenden. 
Aber nur dann wenn der Benutzername und das Passwort stimmen. Ich versuche gerade Cyrus-sasl zum laufen zu bringen. 
Da gibt es jedemenge Möglichkeiten für das Authorisiering-Verfahren und alle sind anders beschrieben.



Thomas


----------

