Zuletzt aktualisiert am 27. September 2020 von Lars
Die freie Software hMailServer ist eine Mailserver-Lösung, die sich durchaus auch für kleinere Unternehmen einsetzen lässt.
Es ist sicherlich kein vollwertiger Ersatz für Microsoft Exchange, aber für Unternehmen mit wenigen Mitarbeitern eine gute Wahl.
Hier das wichtigste für den Einstieg.
hMailServer holt Mails via POP3 oder SMTP, hat also einen POP-3 Connector gleich eingebaut.
Installation
Die aktuelle Version lädt man unter der Projekt-Homepage hMailServer - Free email server for Microsoft Windows herunter.
Bei der Installation vergeben Sie ein Administrator-Passwort. Dieses ist unabhängig von irgendwelchen Active-Directory-Konten. Also nicht vergessen!
Datenbank
hMailServer lägt die Mail-Informationen in einer Datenbank ab. Für kleinere Installationen reicht hier die Option
Use built-in database engine (Microsoft SQL Compact)
Die andere Option
Use external database engine (MSSQL, MySQL or PostgeSQL)
ist eigentlich nur bei grösseren Installationen nötig.
Konkretes Beispiel
- Meine Mailbox ist laut Outlook 16'398 KB gross.
- Die hMail-Server Datenbank ist 916 KB gross (Programmverzeichnis - Unterverzeichnis Database)
- Die Mails selber sind im Ordner Data im Programmverzeichnis enthalten. Dies ist 15'848 KB gross
Konfiguration
So sieht die Konfigurationsoberfläche aus:
Welcome
Hier können Sie die Domänen, die der hMailServer bedienen soll,
eingeben.
Status
Hier können Sie den Status des Servers überwachen
Server
In diesem Reiter sehen sie gg. Statusmeldungen und können den Dienst pausieren
Status
Hier sehen Sie eine Zusammenfassung über verarbeitete Mails...
Logging
Hiermit können Sie das Live Logging aktivieren und direkt überprüfen. Für die Fehlersuche können hierzu aber auch manuell die Log-Datei öffnen.
Delivery Queue
Hier überprüfen Sie die ausgehende Warteschlange. Wenn Mails noch nicht versendet worden, sehen sie das hier.
Domains
Hier sehen Sie in der übergeordneten Ebene alle Domains, auf die der hMailServer lauscht. Klicken Sie die einzelnen Domänen an, um weitere Einstellungen zu konfigurieren.
General
Hier sehen Sie den Namen und können die Domain aktivieren oder deaktivieren.
Names
Hier können Sie verschiedene Aliase definieren. Beispiel: Hätte ich auch noch schlageter.de und schlageter.com als entsprechenden Namen, könnte ich diese hier einmalig definieren und muss dann nur einmal für alle drei Domänen die Adressen einrichten.
Signature
Hier können Sie für ausgehende Mails eine Signatur definieren. Sie gilt jedoch nur für die Domäne, unter dieser sie definiert ist.
- Engelhardt, Max (Autor)
Limits
Hier können Sie Grenzwerte, wie z.B. die Mailboxgrösse definieren. Lassen Sie dies auf Null, ist der Grenzwerte nicht aktiv.
Maximum size (MB)
Dies ist die maximale Grösse, die alle Mails in der Domäne haben dürfen.
Maximum message size
Die ist die maximale Grösse, die eine Nachricht haben darf. Ist eine grösser, wird sie vom hMailServer abgewiesen.
Maximum size of accounts (MB)
Dieser Wert definiert die maximale Grösse jeder Mailbox in dieser Domäne.
Number of accounts, aliases and distribution lists
Diese Werte definieren das Maximum an Accounts, Aliases und Distribution Lists für diese Domäne
DKIM Signing
Aktiviert DKIM Signing. DomainKeys Identified Mail ist ein Identifikationsprotokoll zur Sicherstellung der Authentizität von E-Mail-Absendern
Advanced
Catch-all adress
Catch-all adress ist eine Adresse, die alle Mails an diese Domäne bekommt. Gebraucht wird das z. B. wenn man typische Tipp-Fehler-Mails auch abfangen will. Ich bin kein Freund davon, da Spamer häufig Kombinationen auf bestimmten Domänen durchprobieren und eine solche Catch-all Adresse daher jede Menge Spam erhält.
Plus adressing
Hier kann man definieren, dass auch zusätzliche Zeichnen in Adressen erlaubt sind.
Greylisting
Hier kann man Greylisting für die Domäne aktivieren. Beim Greylisting wird eine Mail generell erst einmal abgewiesen. Ein Mailserver macht einen erneuten Zustellversuch, i. d. R. nach 10 Minuten. Spamer machen sich häufig die Mühe nicht. Greylisting dient also dem Spam-Schutz.
Accounts
Die E-Mail-Adressen der Domäne. Für diese haben Sie diverse Einstellmöglichkeiten in verschiedenen Reitern.
General
Adress
Die E-Mail-Adresse des Kontos. hMailServer unterstützt die folgenden Zeichen in Konten nicht: •? * | / <>
Password
Das Kennwort des Kontos. Passwörter werden verschlüsselt und in der Datenbank des abgelegt.
Size (MB)
Aktuelle Grösse der Mailbox.
Maximum Size (MB)
Der maximale Speicherplatz, den das Konto verwenden kann. Wenn das Limit erreicht ist, kann das Konto keine Mails mehr erhalten. Der Absender erhält eine entsprechende Nachricht.
Administration level
Hier können Sie festlegen, auf welche Teile des Servers ein Benutzer Zugriff hat. Diese Einstellung wird vor allem durch PHPWebAdmin verwendet.
- Benutzer - Der Benutzer kann Einstellungen, die für ihn selber gelten, ändern
- Domain - Der Benutzer kann Einstellungen, die für seine Domäne und deren Benutzern gilt, ändern
- Server - Der Benutzer kann Einstellungen auf dem Server ändern
Last logon time
Letzte Anmeldezeit
Enabled
Der Haken muss gesetzt sein, damit diese Mailbox aktiviert ist.
Auto-Replay
Hier kann eine automatische Antwort definiert werden.
Forward
Hier kann eine Mai-Weiterleitung definiert werden.
Signature
Hier kann eine Signatur definiert werden.
Externals Accouts
Hier könne zugeordnete externe Accounts definiert werden. Zum Beispiel definiere ich hier diverse alte E-Mail-Adressen, die ich per POP3 abhole.
Der obere Teil sind die Daten, die Sie (hoffentlich) von ihrem Provider haben.
Minutes between download
Gibt die Zeitspanne an, wie oft nach neuen Mails gesucht wird.
Deliver to recipients in MIME headers
Diese Option ist mit Vorsicht zu geniessen. Ist im Mail-Header ein anderer Empfänger angegeben, dann versucht hMailServer diesem das Mail zuzustellen.
Retrieve date from Received Header
Ist diese Option aktiviert, dann nimmt hMailServer Datum und Zeit aus dem Mailheader als Zustelldatum. Bei deaktivierter Option wird Datum und Zeit genommen, an der hMail die Mail heruntergeladen hat. Aktivierung erscheint mir sinnvoll. Beim Herunterladen mehrer Mails bei der Erstinstallation hatten alle Mails falsches Datum und Zeit erhalten, weil ich die Option übersehen hatte.
Anti-spam & Anti-virus
Aktivieren Sie diese Optionen, wenn die Nachricht auf Anti-Spam und / oder Anti-Virus untersucht werden soll.
Delete message immediately
Wird diese Option aktiviert, wird die Originalnachricht beim Provider, von dem sie gerade abgeholt wird, sofort gelöscht.
Delete message after nn days
Wird diese Option aktiviert, wird die Originalnachricht beim Provider, von dem sie gerade abgeholt wird, nach nn Tagen gelöscht.
Do not delete message
Wird diese Option aktiviert, so wird die Originalnachricht beim Provider, von dem sie gerade abgeholt wird, nicht gelöscht. Dies ist nicht unproblematisch. Läuft die Mailbox beim Provider voll, erhält der Absender eine Unzustellbarkeitsnachricht, obwohl der hMailServer eigentlich für den Empfang bereit wäre.
Rules
Hier können Regeln für die Mailverarbeitung definiert werden. Diese gelten dann nur für den entsprechenden User. Regeln können aber auch hMailServer-weit definiert werden. Beachten Sie hier den AND oder OR Haken!
Active Directory
Hier kann die User-Authentifizierung am Active Directory definiert werden.
Advanced
First name, last name
Vorname, Nachname kann hier definiert werden. hMailServer verwendet diese Funktionen jedoch nicht.
Edit Folders
Dieser Dialog dient zur Manipulation der IMAP-Ordner bzw. deren Struktur
Empty Account
Hiermit werden alle IMAP-Ordner und deren Inhalt gelöscht
Unlock
In bestimmten Situation kann der POP3-Connector die Mailbox locken. Mit dieser Funktion lässt sich der Lock aufheben.
Aliases
Sie wollen zum Beispiel E-Mails empfangen für webmaster@domain.com, feedback@domain.com und yourname@domain.com. Wenn sie aber nur webmaster@domain.com anstelle von 3 verschiedenen Konten anlegen wollen, können Sie die übrigen Adressen als Aliase anlegen.
Distribution Lists
Nachrichten die an die Adresse einer Distribution-List gesandt werden, werden an alle Mitglieder von ihr weitergeleitet.
Rules
Hier können serverseitige Mailverarbeitungsregeln gesetzt werden. Sie gelten für alle Accounts und Domänen! Achtung Falle: Beachten Sie hier den AND oder OR Haken!
Settings
Protocols
Hier aktiviert und definiert die Protokolle SMTP, POP3, IMAP.
SMTP
Für SMTP gibt es am meisten zu konfigurieren.
General
Hier definieren Sie die maximale Anzahl an gleichzeitigen Verbindungen, die "Welcome message" und die hMailServer weite maximale Mailgrösse.
Die "Welcome message" ist Teil vom Sende-Prozess und wird normalerweise nicht wahrgenommen. Es kann Sinn machen sie zu ändern, um es schwieriger zu machen, den Typ des Mailservers zu erkennen.
Delivery of e-mail
In diesem Dialog definiert man die Anzahl der Wiederholungsversuche sowie die Zeit dazwischen.
Außerdem kann ein Smarthost festgelegt werden. Dies ist besonders dann interessant, wenn man eine Infrastruktur mit nur einer festen IP im Internet hat bzw. sogar eine dynamische. In diesem Fall wird man es schwer haben, Mails über die Antispam-Struktur von Empfängern zu bekommen.
Statistics
Hier können Sie festlegen, ob Sie statistische Werte an die Entwickler senden wollen (will ich nicht).
RFC compliance
- Allow plain text authentication - Mit dieser Option definieren sie, ob einfache Authentifizierung zugelassen ist oder nicht
- Allow empty sender address - Einige Spammer senden E-Mail mit leerer Absenderadresse. Wenn Sie diese Option deaktivieren, wird hMailServer diese Nachrichten als Spam zu behandeln. Es kann aber auch legitime E-Mail mit leeren Absender-Adressen geben. Die Online-Hilfe empfiehlt daher, diese Option zu deaktivieren.
- Allow incorrectly formatted line endings - Nach der SMTP-Spezifikation sollte jede Zeile durch die ASCII-Codes 13 und 10 getrennt werden. Einige Spammer senden Nachrichten, die nicht korrekt formatiert sind. Verwenden Sie diese Einstellung, um derartige Mails abzulehnen. Auch hier können in einigen Fällen wieder legitime E-Mail falsch formatiert Zeilenenden haben.
- Disconnect client after too many invalid commands - Einige Spammer versuchen eMail an viele verschiedene Adressen auf Ihrem Server zu senden. Mit dieser Option können Sie derartige Versuche unterbinden.
Advanced
- Bind to local IP address - Feste IP-Adresse vorgeben, über die der hMailServer raus geht. In der Regel funktioniert es auch ohne Angabe. hMailServer nimmt dann die von Windows vorgegebene.
- Maximum number of recipients in batch - Maximale Anzahl an gleichzeitigen Empfängern. Sollte gesetzt werden, da ein Mail möglicherweise als SPAM-Mail identifiziert wird, wenn zu viele Empfänger darin aufgeführt sind.
- Add Delivered-To header - Ist diese Option gesetzt, erweitert der hMailServer den Mailheader mit einem Delivered-To-Header.
- Rule loop count - Eine Mailschleife kann entstehen, wenn Empfänger A an B weiterleitet und B wieder an A (z.B. bei Ferien-Abwesenheit). Sie wird nach der hier definierten Anzahl Durchgänge abgebrochen.
- Maximum number of recipient host - Dies Option ist in der Online-Hilfe bisher nicht erklärt. Wahrscheinlich ist es die maximale Anzahl an Mailserver, die in einem Mail erreicht werden können.
POP3
Hier kann man nur die maximale Anzahl an gleichzeitigen Verbindungen sowie die Willkommensnachricht definieren (normalerweise nicht sichtbar).
IMAP
General
Hier definiert man die maximale Anzahl an gleichzeitigen Verbindungen sowie die Willkommensnachricht (normalerweise nicht sichtbar).
Public Folders
Public Folders sind für alle hMailServer Benutzer sichtbar. Mir hat sich zunächst die Bedienung nicht erschlossen. Rüdiger mailte mir aber hierzu den entscheidenden Hinweis: "Hi Lars, hMailServer - Settings - IMAP - Tab (Public Folders) - Button (Edit folders) - Rechtsklick mit Maus auf linken, leeren Bereich - Kontextmenü (Create folder). Ist doch intuitiv, oder ? ;)) Viele Grüße Rüdiger"
OK, vielen Dank Rüdiger.
Advanced
Extensions
- IMAP SORT erlaubt die Sortierung von Mails auf dem Server - Beschleunigt die Geschwindigkeit von Mail-Clients
- IMAP Quota erlaubt IMAP-Clients die Quota des Accounts zu prüfen
- IMAP Idle - Mit dieser Extensions erfährt der IMAP-Client vom Server, wenn ein neues Mail angekommen ist.
- IMAP ACL - erlaubt das Setup von Public Folders und Setzen von Berechtigungen
Hierarchy delimiter
Trennzeichen zwischen Ordneren. Wichtig beim Setzen von Rules. Ist ein Punkt als Trennzeichen gesetzt (Standard) und man will eine Rule definieren, die eine Mail in den Unterordner Ziel im Posteingang verschieben soll, so lautet der Zielname "Posteingang.Ziel".
Groups
Erstellen von Gruppen - Derzeit ist mir ein möglicher Einsatzzweck nicht klar - sinnvoller dürften Distribution Lists sein.
Anti-Spam
Spam-Erkennung funktioniert i. d. R. mehrstufig. Jeder Test generiert einen gewissen Score. Hat das Mail einen gewissen Score überschritten, ist es ziemlich sicher SPAM
General
- Spam mark treshhold - Erreicht ein Mail diesen Spam-Wert, ist es für den hMailServer ein Spam-Mail
- Add X-hMailServer-Spam - Hier wird eine Spam-Markierug zum Mail-Header hinzugefügt
- Add X-hMailServer-Reason - Hier wird auch noch der Grund für die Markierung als Spam mit in den Header hinzugefügt
- Add to message subject - Hier wird eine definierbare Spam-Markung zum Mail-Betreff hinzugefügt. Die Mail kann somit mittels Rules aussortiert werden.
- Spam delete treshhold - Überschreitet eine Mail diesen Spam-Wert, wird sie gelöscht und nicht zugestellt.
- Maximum message size to scan (KB) - Mails, die grösser als der angegebene Wert sind, werden nicht gescannt auf Spam. In der Regel versenden Spammer
kleine Mails.
Spam tests
- Use SPF - SPF ist ein Verfahren, bei dem das Fälschen von Absenderadressen verhindert werden soll. Der Absender trägt im DNS SPF-Record ein, welche Server Mail versenden dürfen.
- Check host in the HELO command - Im STMP-Protokoll sollte der Host im HELO-Kommando seinen Hostnamen angeben. Mit dieser Option kann überprüft werden, ob dieser korrekt ist.
- Check that sender has DNS-MX records - Mit dieser Option wird überprüft, ob die Senderdomäne MX-Records für das Versenden von Mails hat. Dies kann zu False Positive führen, da das Vorhandensein von MX-Records für den Mailversand nicht zwingend ist.
- Verify DKIM-Signature header - Ist diese Option markiert, prüft hMailServer eine vorhanden DKIM-Signature auf Korrektheit.
SpamAssasin
In diesem Dialog kann eine separat zu installierende SpamAssasin Software mit eingebunden werden.
DNS Blacklist
DNS Blacklists sind Listen, die die IPs von bekannten Spammern bereitstellen. Diese werden vom hMailServer abgefragt.
Nach
http://www.hmailserver.com/forum/viewtopic.php?f=12&t=15442 habe ich bei mir folgende Einstellung gewählt:
zen.spamhaus.org | 127.0.0.* | Rejected by http://www.spamhaus.org/zen/ | Score = 5 dnsbl.njabl.org | 127.0.0.* | Rejected by njabl.org | Score = 1 psbl.surriel.com | 127.0.0.* | Rejected by surriel.com | Score = 1 virbl.dnsbl.bit.nl | 127.0.0.* | Rejected by virbl.bit.nl | Score = 1 b.barracudacentral.org | 127.0.0.* | Rejected by barracuda | Score = 2
SURBL Servers
Hier definiert man die SURBL Lookups, die hMailServer bei der Prüfung eines E-Mail machen soll. SURBL ist eine Liste, die Hostnamen, die im Zusammenhang mit SPAM auftreten, enthalten.
Greylisting
Beim Greylisting wird eine Mail generell erst einmal abgewiesen. Ein Mailserver macht einen erneuten Zustellversuch, in der Regel nach 10 Minuten. Spamer machen sich häufig die Mühe nicht.
In diesem Dialog kann Greylisting definiert werden.
- Minutes to defer delivery attempts: So lange wartet hMailServer, bevor eine Nachricht akzeptiert wird
- Day before removing unused records: So lange wartet hMailServer auf das weitere Zusenden einer Mail
- Days before removing used records: So lange behält hMailServer die Info, dass eine Mail das Greylisting passiert hat.
- Bypass Greylisting on SPF Pass. Hat der Absender einen SPF-Record im DNS und ist dieser korrekt, muss er das Greylisting nicht passieren.
- Kommt eine Mai von einem gültigen MX oder A-Record, muss er das
Greylisting bei aktivierter Option nicht passieren.
White listing
Hier können Server-Adressen hinterlegt werden, die nicht durch das Greylisting müssen. Dies ist praktisch, weil manche Absender mit dem Greylisting nicht klar kommen.
Anti-virus
Hier können Sie Virenscanner für den hMailServer konfigurieren.
General
In diesem Reiter definieren sie das generelle Verhalten der Virus-Prüfung.
ClamAV
Hier kann ein vorhandener (auf einem externen Host) laufender ClamAV-Scanner eingebunden werden.
ClamWin
Hiermit kann ein lokaler ClamWin-Scenner eingebunden werden.
External virus scanner
Hiermit kann ein anderer externer Antivirus-Scanner eingebunden werden. In der Online-Hilfe ist beschrieben, wie Sie z.B. den Free AVG einbinden
können.
Block attachements
Hier definieren Sie, welchen Typ von Attachment hMailServer von Haus aus blockiert.
Logging
Stellen Sie hier ein, was genau geloggt werden soll und wo hin.
Advanced
Hier geht es an das "Eingemachte".
Autoban
Wenn sich jemand die festgelegte Anzahl falsch einloggt, dann kommt er keinen Zugriff mehr auf den hMailServer. Zum vorzeitigen Entsperren muss unter Advanced -> IP-Ranges der rote Bereich gelöscht werden.
SSL Certificates
Hier können SSL Zertifikate für die verschlüsselte Kommunikation installiert und verwaltet werden.
IP-Ranges
Per Standard sind hier zwei Ranges definiert. Weder das Online-Handbuch noch Quellen im Internet bringen hier eine wirklich gute Erklärung. Wichtig ist, dass nicht zu leichtfertig mit der SMTP authentificaiton umgegangen wird, damit man kein Open Relay aufgebaut hat, über das Spamer ihre
Mails absenden können.
Ein Test auf Open Relay kann man zum Beispiel hier durchführen:
My Computer
Internet
Incoming Relay
Wird die Mail von einem SMTP-Backup-Server empfangen, kann dieser hier definiert werden. Dies ist wichtig, da sonst die Antispam-Proben ins Leere laufen, da die Mail ja immer von einem sicheren Absender kommt.
Mirror
Alle eingehenden Mails werden an die hier definierte Mirror-Adresse weitergeleitet.
Performance
Cache
Der Cache beschleunigt den hMailServer. Die Standardwerte können in der Regel so übernommen werden.
Threading
Hier können Sie das Threading beeinflussen. Es bestimmt, wie viel Aktionen gleichzeitig ausgeführt werden können. Je mehr man einstellt, umso stärker wird das System allerdings auch belastet und alles wird langsamer.
Message indexing
Diese Option beschleunigt den Zugriff von Webmail-Clients aus. Wird dieser nicht genutzt, kann sie deaktiviert bleiben.
Server messages
Hier können Sie die Fehlermeldungen ändern, die hMailServer im Fehlerfall zurück gibt.
Scripts
Mit Scripts kann die Funktionalität des hMailServers erweitert werden. Im Bedarfsfall bitte die Online-Hilfe besuchen.
TCP-Ports
Hier können Sie die TCP-Ports der einzelnen Protokolle festlegen.
Utilities
Backup
Hier können Sie ein Backup des hMailServers durchführen. Für ein unattended Backup steht ein vbs-Script im Unterverzeichnis AddonsUtilities zur Verfügung. Hierin müssen Sie noch das hMailServer-Passwort editieren.
Beachten Sie zu Thema Backup unbedingt noch die Online-Hilfe.
MX-Query
Hier können Sie nach denen zu einer E-Mail-Adresse zugehörigen Mailserver suchen.
nslookup -querytype=mx domain
Tut das eigentlich eleganter.
Server-Sendout
Hiermit können Sie einzelnen oder allen hMailServer Usern ein Mail senden. Nützlich zum Beispiel um Wartungsarbeiten anzukündigen.
Diagnostics
Hier können Sie diverse Tests auf die einzelnen Domänen fahren. Leider schweigt sich die Online-Hilfe hier über den realen Einsatzzweck aus.
Links / Quellen
Hallo, hier schreibt Lars. Dipl-Ing. Ingenieurinformatik (FH). Seit Jahrzehnten in der IT tätig. Geprüfter (und begeisterter) Webmaster. Ebenso begeisterter Windows-, Apple-, und Office-User. Ich schreibe über alle möglichen Themen rund um IT. Mehr über mich erfährst du hier: Über mich. Danke für deinen Besuch!