Linux Server - SMTP-Server


Einrichten eines Mailservers mit permanenter Netzanbindung

Um einen Rechner mit permanenter Netzanbindung als Mailserver einzustellen, genügen einige, wenige Dinge. Zunächst müssen wir unterscheiden zwischen der Funktion als "echter" eigenständiger Mailserver im Internet oder der Funktion als Weiterleiter, der alle ausgehenden Mails an einen bestimten Rechner schickt, damit sich der um die endgültige Verschickung kümmert. Im ersten Fall brauchen wir eine funktionierende DNS-Anbindung, sonst wird es nicht gehen. Im zweiten Fall benötigen wir einen Rechner im Netz (Providerserver), den sogenannten Smarthost. Dieser Rechner muß allerdings bereit sein, uns diesen Dienst anzubieten.

Die Einträge für die Datei /etc/rc.config.d/sendmail.rc.config sehen wie folgt aus:

  SENDMAIL_TYPE="yes"

  # Wir benutzen einen Providerrechner
  SENDMAIL_SMARTHOST="smtp:mailserver.provider.de"
  # Ohne Providerrechner stünde hier
  # SENDMAIL_SMARTHOST=""

  SENDMAIL_LOCALHOST="localhost meinname.meinedomain.de"

  SENDMAIL_RELAY=""

  SENDMAIL_ARGS="-bd -q30m -om"

  SENDMAIL_EXPENSIVE="no"

  SENDMAIL_NOCANONIFY="no"

  SENDMAIL_NODNS="no"

  SENDMAIL_DIALUP="no"
Die Einträge haben folgende Bedeutung:
SENDMAIL_TYPE="yes"
SuSEconfig soll uns eine Sendmail Konfiguration schreiben (yes) oder nicht (no). Wenn Sie die Sendmail-Konfiguration von Hand vornehmen wollen, dann müssen Sie diese Variable unbedingt auf no setzen, sonst überschreibt SuSEconfig beim nächsten Lauf ihre ganze Arbeit wieder. Alle weiteren Variablen haben nur eine Bedeutung, wenn hier yes steht.
SENDMAIL_SMARTHOST="smtp:mailserver.provider.de"
Hier wird der Rechner im Internet angegeben, der alle unsere Mail empfängt. Das ist in der Regel der vom Provider für ausgehende Mails angegebene Mailserver. Wollen Sie aber, dass Ihr Server alle Mail direkt an die Empfänger schickt, so muß die Variable leergelassen werden.
SENDMAIL_LOCALHOST="localhost meinname.meinedomain.de"
Die verschiedenen Bezeichnungen, unter denen der lokale Host zu erreichen ist. Wenn hier falsche Angaben gemacht werden, so würde sendmail auch Mails innerhalb des Rechners (von User Hans zu User Otto) über das Internet versenden.
SENDMAIL_RELAY=""
Hier kann ein Rechner angegeben werden, der im lokalen Netz alle Mailk für alle User annimmt. Der Rechner muß die selben User kennen, wie der localhost. Selten gebraucht. Wenn Sie die Variable leer lassen, werden lokale Mails auch lokal ausgeliefert.
SENDMAIL_ARGS="-bd -q30m -om"
Die Argumente, mit denen der sendmail-Daemon gestartet wird. Die Zahl hinter dem q gibt die Minuten an, nach denen die Mails wirklich losgeschickt werden. hier wird also alle 30 Minuten die Mailqueue geleert.
SENDMAIL_EXPENSIVE="no"
Wenn dieser Parameter auf yes gesetzt ist, sendet sendmail nie die Mail von selbst. Sie muß also regelmäßig durch einen Aufruf von sendmail -q verschickt werden. Das ist z.B. der Fall, wenn eine Dialup-Leitung ins Internet besteht, und daher nicht gewünscht wird, dass halbstündlich Verbindungen aufgebaut werden. In diesem Fall muß z.B. über cron eingestellt werden, wann sendmail -q aufgerufen werden soll.
SENDMAIL_NOCANONIFY="no"
Adressen in Ihren Mails werden nicht über DNS überprüft wenn hier yes steht. Das spart sehr viel Netztraffic und wird gerne zusammen mir SENDMAIL_EXPENSIVE eingesetzt. Damit aber dann alles funktioniert, müssen in /etc/hosts mindestens die oben angegebenen Mailserver mit ihren IP-Adressen eingetragen sein. Wir wollen hier aber ja eine permanente Anbindung - mit DNS - also stellen wir es auf no.
SENDMAIL_NODNS="no"
Hiermit wird DNS komplett abgeschaltet (yes). Das erfordert aber eine ausgesprochen exakte und vollständige /etc/hosts Datei. Auch hier schreiben wir no, wir sind ja permanent am Netz.
SENDMAIL_DIALUP="yes"
Lokale Mail wird etwas verzögert ausgeliefert. Das erfordert eine korrekte Einstellung der FQHOSTNAME-Settings, und bringt auch eine leichte Entspannung bei unerwünschten Einwahlvorgängen. Wir sagen wiederum no hier, weil wir permanente Anbindung haben..
Nachdem diese Einträge gemacht sind, wird beim nächsten SuSEconfig eine entsprechende sendmail.cf-Datei erstellt. Jetzt muß nur noch der Eintrag
  SMTP=yes
in der Datei /etc/rc.config vorgenommen werden und beim nächsten Systemstart wird sendmail als Daemon gestartet. Alle 30 Minuten (-q30m) durchsucht sendmail die Warteschlange für ausgehende Mails und arbeitet darin befindliche Aufträge ab. Andererseits ist sendmail ständig bereit, Aufträge aus dem Netz mit eingehender Mail entgegenzunehmen und diese in die lokalen Mailfächer weiterzuleiten.


[Zurück zur Mailserver-Seite] [Nächste Seite]