Mailserver

Mailserver:

Basierend auf Postfix (Version 1.1.11) , Fetchmail (Version: 5.9.11-6), Cyrus Imap (Version: 1.5.19-9), auf Debain 2.4 Server.

Folgende Pakete werden gebraucht und mit apt-get install „Paket“ installiert
• fetchmail
• postfix
• cyrus-common
• cyrus-imapd
• cyrus-admin

Die Mails werden von einem Provider (mein_provider.de) mit fetchmail abgeholt. Um den gemeinsamen Zugriff von mehreren Usern auf einen Mailordner zu realisieren, wird der Imap-Server Cyrus verwendet. Mails werden aus dem lokalen Netzwerk über den Provider mein_provider.de versendet. Der Server hat den Hostnamen testserver, die lokale Arbeitsgruppe heißt agruppe. Mails sollen unter dem Namen der Domain, in diesem Beispiel meine_domain.de versendet werden.

1. Konfiguration Postfix:

apt-get install postfix

Datei /etc/postfix/main.cf (Hauptkonfigurationsdatei von Postfix) editieren:
( Die unten aufgeführten Einträge sind ausschließlich die editierten, alle anderen sind nicht aufgeführt und wurden im Original belassen)

mailserver: /etc/postfix # more main.cf:

# Hostname, zusammengesetzt aus Servernamen und dem Namen der lokalen Arbeitsgruppe:
myhostname = mailserver.agruppe
# Angabe in welchen Format Namensaliases ungesetzt werden sollen:
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
# Angabe, in welchem Format virtuelle Hosts angegeben werden sollen
virtual_maps = hash:/etc/postfix/virtual
virtual_database = hash:/etc/postfix/virtual
# Namen, unter denen der Server im Netz erreichbar ist. home.de wurde als virtuelle Domain
# fuer den internen Mailverkehr eingerichtet
mydestination = meinedomain.de, mailserver.agruppe, localhost.agruppe, localhost, home.de
# Name des smtp Servers ueber den die Mails versendet werden (beim Provider zu erfragen)
relayhost = mail.mein_provoder.de
# Netzwerk, das local auf den Mailserver zugreifen darf
mynetworks = 192.168.100.0/24 127.0.0.0/8
# Transportagent des Mailservers
mailbox_transport = cyrus

In der /etc/postfix/master.cf wurde in diesem Beispiel im Original uebernommen.

2.Konfiguration des Cyrus Daemons:

Um Accounts anlegen zu koennen muss dem admin des Daemons ein user zugewiesen werden. Dies ist die einzige Veraenderung in der Datei, der Rest wurde unveraendert uebernommen.

mailserver:/etc# more imapd.conf

# Configuration directory
configdirectory: /var/lib/cyrus

# Die default Mailordner werden im folgenden Verzeichnis abgelegt
defaultpartition: default
partition-default: /var/spool/cyrus/mail

# Die default Newsordner liegen in folgendem Verzeichnis
partition-news: /var/spool/cyrus/news
newsspool: /var/spool/news

# Folgender User hat Adminisatrtionsrechte
admins: cyrus

# Anonyme Logins werden nicht erlaubt
allowanonymouslogin: no

# Minimale Zeit in Minuten, in der der Pop Port abgefragt wird
popminpoll: 1

# Rechte fuer dir Cyrus-Programme
umask: 077

Im Anschluss daran wurde der Administrator fuer den Cyrus Server angelegt.

useradd –s /bin/false –c“Admin Cyrus“ cyrus
passwd cyrus “geheim”
Unter diesem Account (cyrus) erfolgt das Anlegen der Mailboxen fuer User mit den Cyrus eigenen Befehlen.

Mit dem Befehl:
cyradm localhost -user cyrus
passwd „geheim“
wird sich nun angemeldet und die Mailboxen erstellt erstellt. Mit help koennen die Befehlsparameter abgefragt werden. Hier ein Auszug.

localhost> help
createmailbox, cm create a mailbox
deletemailbox, dm delete a mailbox
listmailbox, lm list mailboxes
quit exit program

Erstellen einer Mailbox fuer die Userin Margit und die Userin ma-intern.
(wichtig ist hierbei die Baumstruktur zu beachten)

Cm user.Margit
Cm user.Margit.wichtig

cm.user.ma-intern
cm.user.ma-intern.wichtig
….

Mit lm koennen alle angelegten Mailboxen betrachtet werden. Mit quit wird das Programm verlassen.

Konfiguration von fetchmail:

Fetchmail wird zentral über /etc/fetchmailrc gesteuert.

mailserver:/etc# cat /etc/fetchmailrc
poll mail.mein_provider.de protocol pop3
username Margit[a]mein_provider.de
password “passwd-beim-provider”
is Margit;

Konfiguration der virtuellen Domain:

mailserver: /etc# cat /etc/postfix/virtual
home.de anything
ma-intern[a]home.de ma-intern
Margit[a]meine_domain.de Margit

Mit postmap virtual wird die virtual.db erstellt.

Troubleshooting:
Via telnet kann der smtp Port abgefragt werden.
Postfix logged per default in die /var/log/syslog.