Benutzer-Werkzeuge

Webseiten-Werkzeuge


lager:oeff_netze:mail_labor

E-Mail Laborübung

Einleitung

Es soll ein Mailserver eingerichtet werden auf den ein Testuser (testuser) lokal und remote über Thunderbird (per IMAP) zugreifen kann.

Der Mail-Server ist auf einer virtuellen Maschinen einzurichten.

HINWEIS: Wenn mit virtuellen Maschinen gearbeitet wird, dann sind die notwendigen Anpassungen auf jeden Fall zu berücksichtigen. Ansonsten wird die Anwendung u.U. nicht funktionieren.

Das Ubuntu Postfix Howto dient als Vorlage und erklärt die einzelnen Schritte, um einen postfix-basierten Mailserver zu konfigurieren. Im Folgenden werden diese in deutsch in leichter Abwandlung erklärt.

Mailserver einrichten

Domain-Name bekannt machen

Im folgenden wird davon ausgegangen, dass KEIN DNS genutzt wird. Damit das System ohne DNS auskommt werden in der /etc/hosts die benötigten FQDN1) auf dem Mailserver und den eingesetzten Mailclients eingerichtet.

Lokalen Test-User einrichten

Damit eine E-Mail versendet werden kann, wird ein Empfänger benötigt. Dieser wird lokal auf dem Mailserver als normaler Benutzer angelegt. Hierdurch kann dieser Nutzer bereits prinzipiell E-Mails empfangen. Mit dem folgenden Befehl kann ein Testuser testuser eingerichtet werden. Für diesen wird ein neuer Home-Ordner erzeugt -m und die Shell vorgegeben. Im Anschluss muss diesem User noch ein Passwort zugewiesen werden.

useradd -m -s /bin/bash testuser
passwd testuser

Damit kann der User testuser@MAILSERVER mit dem vergebenen Passwort auf sein Postfach zugreifen.

Pakete installieren

Benötigte Pakete:

apt-get install postfix  mailutils

Während der Installation von postfix wird der Netztype abgefragt und in welcher Domäne der postfix-Server betrieben werden soll. Hier sind folgende Optionen auszuwählen.

  • Netztype → lokaler Server (Option: „nur lokal“)
  • Domäne → Rechnername (ansonsten werden die lokalen Nutzer nicht erkannt)

Optionale Pakete: u.a. dovecot als IMAP-Server

apt-get install dovecot-common

Anpassen der postfix-Konfiguration

Die postfix-Konfiguration befindet sich in /etc/postfix/main.cf. Diese Datei ist an die Gegebenheiten anzupassen. Es gibt zwei Möglichkeiten dies zu tun.

  1. mittels des Befehls postconf
  2. direkt in der Datei

Wenn die zweite Variante gewählt wird, sollte zunächst eine Sicherung der main.cf gemacht werden, damit die Änderungen rückgängig gemacht werden können.

Die folgenden Parameter sind an das eigene System anzupassen:

# Deaktivieren von procmail, falls dies versehentlich während der Installation passiert ist; Optional
mailbox_command =

# FQDN des Mailservers einstellen; hier kann zu Testzwecken der Rechnername verwendet werden, wenn keine Verbindung zum Internet besteht; hier: MAILSERVERNAME
mydestination =  MAILSERVERNAME, localhost.localdomain, localhost

# Das Netz, in dem der Mailserver arbeitet; hier: 192.168.0.0/24
mynetworks = 127.0.0.0/8 192.168.0.0/24 [::ffff:127.0.0.0]/104 [::1]/128 

# Aktivieren der Schnittstellen, auf denen der Mailserver lauschen soll; hier: alle
inet_interfaces = all

# Aktivieren der Protokolle auf denen der Mailserver reagieren soll; hier: alle
inet_protocols = all

Mit dem folgenden Befehl kann der postfix-Daemon neu gestartet werden bzw. der Status abgefragt werden.

postfix status

postfix -c /PFADZURCONFIG

service postfix start
service postfix restart

service dovecot restart

dovecot-Konfiguration (POP3 bzw. IMAP)

Für die Kommunikation mit dem Server über die POP3 bzw. IMAP-Schnittstellen wird das Programm dovecot verwendet.

Das folgende Beispiel zeigt die zu ändernden Einträge. Alle anderen Parameter können zunächst unverändert bleiben:

## /etc/dovecot/dovecot.conf
#  imap imaps pop3 pop3s
protocols = imap imaps pop3 pop3s
# mbox
mail_location = mbox:~/mail:INBOX=/var/mail/%u
#oder
# maildir
mail_location = maildir:~/Maildir

Manueller E-Mail Versand

Man kann „zu Fuß“ eine E-Mail per telnet oder wie hier gezeigt mittels netcat versenden. Hierbei werden die einzelnen Bestandteile Schritt für Schritt durchlaufen. Der Server antwortet auf jede Eingabe.

netcat MailServerName 25

ehlo yourdomain.com
mail from: root@yourdomain.com
rcpt to: testuser@MAILSERVERNAME
data
subject: BETREFF

BODY-TEXT
.

E-Mail-Empfang lokal

Die E-Mail wurde bereits an den Testuser versendet (vgl. neuer lokaler Nutzer). Um die E-Mail zu lesen können kann der Befehl mail verwendet werden. Hinweis: Dies muss selbstverständlich als User testuser ausgeführt werden, da er der Empfänger der E-Mail war. Diese Nutzer befindet sich ja als lokaler User direkt auf dem Mailserver.

E-Mail-Empfang per Client (Thunderbird)

Zunächst ist ein neues Konto im Thunderbird ein zu richten. Hierbei muss die Domain mit dem Computername übereinstimmen, da im vorliegenden Szenario OHNE DNS gearbeitet wird.

testuser@MAILSERVERNAME

Der Mailclient Thunderbird akzeptiert diese Vorgehensweise nur widerwillig. Über eine manuelle Konfiguration kann er allerdings dennoch „überredet“ werden. Um den Einrichtungsassistenten überspringen zu können, müssen manuell alle Parameter eingerichtet werden (s. nächste Abbildung).

Vertiefende Aufgaben

Mail-Versand über zwei oder mehrere Server hinweg

2-3 Schüler könnten sich gegenseitig E-Mails senden über die jeweils selbst eingerichteten MTAs, hierzu sind entsprechende Einträge in die /etc/hosts der jeweiligen Mail-Server vorzunehmen.

192.168.0.<Platznummer>         email-server-a.de
192.168.0.<Platznummer>         email-server-b.de
192.168.0.<Platznummer>         email-server-c.de

Alias Unterstützung

Mit dem Konstrukt eines Alias2), können weitere E-Mail-Adresse für ein Postfach eingerichtet werden. Unter Linux werden diese Alias zentral in der Datei /etc/aliases verwaltet.
Wichtig: Nach jeder Bearbeitung von /etc/aliases muss der folgende Befehl ausgeführt werden, damit die Änderungen wirksam werden:

sudo newaliases

Hier ein Beispiel für die Anlage neuer Aliases:

# /etc/aliases
# Mails an root werden sowohl an die lokalen Benutzer user1 und user2
# als auch an root zugestellt.
root:   user1,user2, \root
# lokaler Benutzer "user1" an eine andere E-Mail Adresse "user1@test.de"
user1: user1@test.de

Weiterführende Informationen

Mit dem folgenden Befehl lassen sich die Mail-Informationen zu einer Domain ermitteln (vgl. auch nslookup): Hinweis: Der DOMAINNAME ist als FQDN anzugeben.

dig mx DOMAINNAME

Mehr Informationen zum dig-Befehl finden sich hier.

1)
FQDN: Full Qualified Domain Name; z.B. mail.yourdomain.com
2)
alias: lateinisch sonst

Ergänzungen

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
T Y Q Y G
 
lager/oeff_netze/mail_labor.txt · Zuletzt geändert: 05.07.2018 10:03 (Externe Bearbeitung)