Letzte Hürden

Ein weiteres Hindernis könnte das Fehlen des Systemtools /sbin/chkconfig sein, das die symbolischen Links in /etc/rc.d bearbeitet, und das es u. a. in der Distribution SuSE 7.0 gar nicht gibt. Ein Installationsversuch wird dann mit einer Fehlermeldung abgebrochen:

* Fehler: fehlgeschlagene Paket-Abhängigkeiten:
 *         /sbin/chkconfig wird von exim-3.20-4 gebraucht

Hier hilft Ihnen ebenfalls die Option --nodeps, mit der Sie ein Paket aufspielen können, egal von welchen Paketen es sonst noch abhängig ist. In diesem Beispiel funktioniert exim trotzdem, Sie sollten jedoch sehr sparsam und vorsichtig mit der Option --nodeps umgehen, wenn Sie Ihr System administrieren.

root@comone: # rpm -ihv --nodeps exim-3.20-4.i386.rpm

Damit exim auch ohne chkconfig beim booten gestartet wird, müssen Sie im folgenden Schritt als root ein exim -bd -q30m in die Datei /sbin/init.d/boot.local (ab SuSE 7.1 /etc/init.d/boot.local) eintragen, sowie bei der möglichen Fehlermeldungen…

/sbin/init.d/rc2.d/S80exim : [ : = : unary operator expected
 Starting exim: /sbin/init.d/rc2.d/S80exim: daemon: command not
 found

…in der Datei /sbin/init.d/rc2.d/ alle Links mit dem Namen exim löschen. Ein solcher Drahtseilakt sollte allerdings die Ausnahme und nicht die Regel bei den gängigen Distributionen sein.

Bevor Sie sich nun endlich an die Konfiguration von exim machen können, müssen Sie noch zu guter Letzt einen Link von exim zu sendmail setzten, denn viele Programme kennen nur den Pfad zu sendmail und werden auf diese Weise richtig geleitet:

ln -s /usr/sbin/exim /usr/sbin/sendmail

Die Pfad von exim und sendmail können auf Ihrem Rechner von dem angeführten Beispiel abweichen. Und bestimmt erinnern Sie sich noch an das Ergebnis des Befehls type sendmail weiter oben im Text, das Sie nun verwenden können.

Nachdem Sie Ihr System neu gebootet haben, tippen Sie zur Kontrolle, ob exim gestartet ist, in die Shell ps -ax |grep exim. Als Ergebnis sollte Sie diese oder eine ähnliche Ausgabe erhalten:

95 ? S 0:00 exim -bd -q30m

Sollten Ihnen bei der Kontrolle der Log-Dateien von exim im Verzeichnis /var/log/exim Fehlermeldungen auffallen, überprüfen Sie, ob Sie die smtp-Zeile der Datei /etc/inetd.conf mit einem Kommantarzeichen versehen haben, und, sollten Sie Yast benutzen, ob die SMTP-Variable und die POSTFIX-Variable auf no stehen.

Bereit zum Versenden

Die Konfigurationsdatei von exim befindet sich, je nach Distribution oder der Version von exim, auf Ihrem Rechner zumeist als /etc/exim.conf, /usr/local/etc/exim oder /etc/exim. Alle möglichen Anweisungen, mit denen Sie exim konfigurieren können, sind in der Textdatei OptionLists.txt zusammengefasst, deren Pfad Sie am besten mit locate OptionLists.txt herausfinden, und deren Inhalt Sie mit den Shell-Programmen less oder more lesen können. Sie brauchen keinen Grund zur Sorge zu haben, denn von den über 400 Befehlen müssen Sie nur einen Bruchteil nutzen.

Um nun Ihre Mails versenden zu können, starten Sie als root Ihren Lieblingseditor, öffnen exims Konfigurationsdatei und tragen im Abschnitt MAIN CONFIGURATION SETTINGS in die Zeile qualify_domain Ihren Domain-Namen ein:

qualify_domain = [IHRE.DOMAIN.DE]

Vielleicht merken Sie jetzt auf, weil Sie keine Domain besitzen. Das braucht dem Versenden Ihrer Mails und der korrekten Generierung einer Message-IDjedoch nicht im Wege zu stehen. Doch dazu später mehr. Lassen Sie einfach die qualify_domain-Zeile mit dem Zeichen # kommentiert und sehen Sie sich den Eintrag qualify_recipient an. Diese Zeile ist wichtig für die lokale Zustellung der Mails, also vom Cron-Daemon an den root oder vom root an den User. Tragen Sie in diese Zeile localhost ein:

qualify_recipient = localhost

Damit exim weiss, welche lokale Domain sein Arbeitgeber ist, müssen Sie es im mit folgendem Eintrag sagen:

local_domains = localhost:[IHR.RECHNERNAME].local

Mit der Anweisung:

queue_remote_domains = ! *.localhost

…bleiben alle von Ihnen geschrieben Mails in /var/spool/exim/input, bis Sie exim als root mit exim -qf -v den Befehl zum Versenden geben.

Wenn Sie Mails erlauben wollen, die an Ihren Rechnernamen oder Ihre IP-Adressegerichtet sind, dekommentieren Sie die folgende Zeilen und setzen Sie den Wert auf true:

local_domains_include_host = true
 local_domains_include_host_literals = true

Der nächste Eintrag, der für Sie interessant sein könnte, regelt, welche Rechner im Netzwerk auf Ihren Rechner localhost als Relay zugreifen dürfen. Für einen Einzelplatz-Rechner schreiben Sie diesen Eintrag:

host_accept_relay = localhost:[IHR.RECHNERNAME].local

Wenn Sie mehreren Rechnern den Zugriff erlauben wollen, verbinden Sie die Variable localhost mit den entsprechenden IP-Adressen:

host_accept_relay = localhost:[xxx.xx.xxx.0/8]

Nicht jeder Mensch schreibt ständig unter der selben Mail-Adresse, und damit exim keine Absendeadresse auf seine Basis-Einstellungen zurücksetzt, sollten Sie dem Programm sagen, welcher User auch andere Headerbenutzen darf:

trusted_users = root:[IHR.USERNAME]

Die Zeile smtp_verify setzen Sie besser auf false. Dieser Eintrag veranlasst exim, den Return-Path der Mail zu prüfen. Das kann für Sie nützlich sein im Kampfe gegen Spam, aber es kann auch hinderlich sein, wenn der Cron-Daemon vielleicht Probleme bekommt, Ihnen seine regelmäßigen Berichte zu schicken:

smtp_verify = false

Die Menge der Mails, die exim bis zum Versenden für Sie lagert, legen Sie mit folgendem Eintrag fest:

smtp_accept_queue_per_connection = 100

Und als letzten Eintrag, bevor wir den Transport der Mails zum SMTP-Server Ihres Providers konfigurieren, wenden wir uns den unzustellbaren Mails zu, die exim einfriert, und über die Sie gerne informiert werden möchten:

freeze_tell_mailmaster = true

Im Abschnitt TRANSPORTS CONFIGURATION springen wir gleich zu den Zeilen, die sich unter dem Kommentar # This transport is used for delivering messages over SMTP connections befinden, und dort fügen Sie die Anweisung headers_remove = "Message-ID" hinzu:

# This transport is used for delivering messages over SMTP connections.
 remote_smtp:
 driver = smtp
 headers_remove = "Message-ID"

Wenn Sie kein Besitzer eines Domain-Namens sind, dann erreichen Sie mit diesem Eintrag, dass die von Ihrem Mailprogramm erstellte Message-ID vor dem Versand herausgeschnitten wird. So kann Ihr Provider seine eigene, legale Message-ID in den Header Ihrer Mail einfügen.

Den Mail-Server Ihres Providers definieren Sie schließlich im Abschnitt ORDER DOES MATTER in der Zeile route_list:

# Send all mail to a smarthost
 smarthost:
 driver = domainlist
 transport = remote_smtp
 route_list = "* [MAILSERVER.PROVIDER.DE] bydns_a"
Abb 1. Die Rewrite Flags im Test

Der letzte Abschnitt mit dem Namen REWRITE CONFIGURATION überschreibt Ihren Rechnernamen mit der von Ihnen vorgegebenen E-Mail-Adresse, falls Sie in der Zeile qualify_domain keinen Domain-Namen angegeben haben. Sie brauchen dazu nicht erst, wie im Konfigurationsbeipiel angegeben, die Datei /etc/email-addresses zu erstellen, sondern können Ihre Angaben in der ersten Zeile über den Beispielen eintragen:

*@[IHR.RECHNERNAME].local     IHRE.MAIL@ADRESSE.DE Ffrsh

Die Buchstaben hinter Ihrer Mail-Adresse sind Kürzel für die zu überschreibenden Header (Rewrite Flags):

F überschreibt das Envelope-From-Field
 f überschreibt den From-Header
 r überschreibt den Reply-To-Header
 s überschreibt den Sender-Header
 h überschreibt alle Header
 b überschreibt den BCC-Header
 c überschreibt den CC-Header
 T überschreibt das Envelope-To-Field
 E überschreibt alle Envelope-Fields

Ob die Regeln richtig greifen, überprüfen Sie als root mit dem Kommando exim -brw [USER@IHR.RECHNERNAME.local]. In unserem Beispiel werden für alle User, die an Ihrem Rechner arbeiten, die Header mit Ihrer Mail-Adresse überschrieben. Es ist natürlich möglich, für jeden User eine eigene Mail-Adresse zu generieren, wenn Sie den Eintrag *@[IHR.RECHNERNAME].local entsprechend ändern. Allerdings können nur solche Benutzer eine Adresse außer der Reihe benutzen, die in der Zeile trusted_users eingetragen sind.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Exim 4.70 bringt verbesserten Spamschutz
    Die Version 4.70 des an der englischen Universität Cambridge entwickelten Mailservers Exim kombiniert neue Features und Bugfixes.
  • The Answer Girl
    Dass der Computeralltag auch unter Linux des Öfteren für Überraschungen gut ist, ist eher eine Binsenweisheit: Immer wieder funktionieren Dinge nicht oder nicht so, wie eigentlich angenommen. Das Answer-Girl im LinuxUser zeigt, wie man mit solchen Problemchen elegant fertig wird.
  • SMTP-Plug-In für den Mailreader Mutt
    MSMTP bietet Mutt-Usern die Möglichkeit, Mails bei verschiedenen Providern abzuliefern, ohne sich mit der Konfiguration großer Mailserver wie Sendmail, Exim oder Postfix beschäftigen zu müssen.
  • Schutzschirm
    Viren, Würmer, Trojaner bedrohen fast ausschließlich Windows-Rechner. Deswegen ist der Einsatz von Virenscannern unter Linux in erster Linie auf File- oder Mail-Servern sinnvoll, die Windows-Clients bedienen.
  • Sammeldienst
    Nichts ist so gut, dass es nicht noch besser ginge: Der POP3-Client Mpop besticht durch eine schlanke Architektur und einige Features, die ein flottes Arbeiten versprechen.
Kommentare

Infos zur Publikation

LU 10/2016: Kryptographie

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

zweites Bildschirm auf gleichem PC einrichten
H A, 30.09.2016 19:16, 0 Antworten
Hallo, ich habe Probleme mein zweites Bildschirm einzurichten.(Auf Debian Jessie mit Gnome) Ich...
Probleme mit MPC/MPD
Matthias Göhlen, 27.09.2016 13:39, 2 Antworten
Habe gerade mein erstes Raspi Projekt angefangen, typisches Einsteigerding: Vom Raspi 3B zum Radi...
Soundkarte wird erkannt, aber kein Ton
H A, 25.09.2016 01:37, 6 Antworten
Hallo, Ich weiß, dass es zu diesem Thema sehr oft Fragen gestellt wurden. Aber da ich ein Linu...
Scannen nur schwarz-weiß möglich
Werner Hahn, 20.09.2016 13:21, 2 Antworten
Canon Pixma MG5450S, Dell Latitude E6510, Betriebssyteme Ubuntu 16.04 und Windows 7. Der Canon-D...
Meteorit NB-7 startet nicht
Thomas Helbig, 13.09.2016 02:03, 4 Antworten
Verehrte Community Ich habe vor Kurzem einen Netbook-Oldie geschenkt bekommen. Beim Start ersch...