Mailserver

Aus Linupedia.org
Wechseln zu: Navigation, Suche
Vorsicht, obsoleter Artikel: Für SuSE 9.3 gibt es keinen Support mehr

Da die diesem Artikel zugrundeliegende Linuxdistribution schon seit 30.4.2007 aus dem offiziellen Support seitens Novell ausgeschieden ist, liegt dieser Artikel nur noch zu Archivzwecken und für User die auf eben diese Version angewiesen sind hier. Ein Update auf eine zumindest noch im offiziellen Support befindliche Distribution wird dringendst angeraten.


Autor: mmp5 Der Artikel muss an einigen Stellen noch mal überarbeitet werden:

http://www.linux-club.de/viewtopic.php?t=47681

Also hab nen Mailsever auf einfachste Art und Weise versucht aufzusetzen. Änderungen erwünscht, da er noch nicht 100% läuft.

  • 1. Minimalinstallation (mhh ich hab mit KDE genommen schlimm?)
  • 2. Grafische Bedieneroberfläche Runlevel 5 (ohne ist 3)
  • 3. Ports in der für Kommunikation zwischen (Mailclient -> via IMAP, Smtp -> Mailserver) (zu erlaubender Dienst: Mailserver) (für Remote: SSH feischalten)
  • 4. ggf. Proxy Einstellungen
  • 5. Netzwerkeinstellungen (IP-Adresse, Standartgateway )
  • 6. (separater Router mit eingebauter Firewall)
  • 7. Servernamen setzen (Hostname und Nameserver)
  • 8. yast installiert einige Pakete; Nach Internettest – update (neusten Patches – außer Kernel)
  • 9. Authentifizierung: Lokal (+ neuer Benutzer) (+ Systemmail empfangen)
  • 10. Nach erfolgreicher Installation; yast konfigurieren
  • 11. yast konfigurieren (mirror: Software Installationsquellen)
  • 12. Software installieren ((amavisd-new, antivir, clamav), cyrus-imapd, fetchmail, (spamassassin))
  • 13. MTA configuration (postfix) [Netzwerkdienste/Mail transfer Agent]
  • Verbindungsart = Permanent
  • Häckchen bei Virusüberprüfung
  • Name des Mail-relay beim Provider (z.B. t-online = smtprelay.t-online.de)
  • Bei Autentifizierung = Benutzername und PW
  • Masquerading (vervollständigen), „Domain für den haeder,Von“, „Domainname für die lokale Mailzustellung“ einstellen (Optional)

14. Mailempfang

  • Einstellung: „Entfernte Smtp-verbindung akzeptieren“
  • Den Smtp Port öffen (damit verbindungen durch firewall kommen)

15. Abholen

  • Kasten Herunterladen = Einstellungen für fetchmail
  • Server = Adresse der abzuholenden Post (z.B. pop3.gmx.net)
  • Protokoll = Meist POP3
  • Entfernter Benutzer + PW = Zugangsdaten für das Konto
  • Lokaler Benutzer = Benutzer an den die Mail weitergeleitet werden soll
  • Weitere Postfächer zum abfragen = „Details“
  • Auslieferungsmodus:
  • Direkt = /var/spool/mail/<Benutzer> (umgeht alle Filtermöglichkeiten)
  • Procmail = Stellt Mail über einige Filter zu
  • An cyrus IMAP-server
  • Einstellungen: Welche Ziel-Domains in Email-adressen der MTA als lokal interpretieren soll, damit Mails an diese nicht fälschlich ins Internet geroutet werden (ja)

Man muss noch einstellen,dass cyrus und Saslauth automatisch gestartet werden. Im Runlevel editor von yast geht das.

16. Sicheres abrufen (SSL verbindung)

  • Öffnen /etc/fetchmailrc
  • Poll …
  • User …
  • With password … „ssl“;
  • Zeitintervall von fetchmail: /etc/sysconfig/fetchmail -> (FETCHMAIL_POLLING_INTERVAL=600)

17. Desinfizieren/Antivir

  • alles automatisch

18. Aktualisierungen:

  • Clamav updates = freshclam-Dienst (Aktivieren – Runlevel-editor von yast)
  • Aktualisierungen pro tag: /etc/freshclam.conf
  • parameter: Checks
  • H+BEDV update: antivir –update
  • Besser: /etc/cron.hourly Datei (unbestimmter Name) anlegen,
  • Inhalt datei: #!/bin/sh
  • /usr/bin/antivir --update

19. Speicher: Nur vierenfreie Mails werden an den IMAP server weitergeleitet

  • Damit Mail bei lokalen Benutzern ankommt: Benutzer anlegen
  • „Sicherheit und Benutzer“ (um Benutzer zu authentifizieren benutzt IMAP-daemon SASL; Saslauthd greift auf PAM zu = Passwort zur anmeldung = authentifizierung von IMAP Nutzern (Systemkonto alleine reicht nicht))
  • Benutzer benötigt zusätzlich ein Postfach in das IMAP Mails legen kann
  • Postfach anlegen mit Administrationstool von Cyrus
  • cyradm
  • Benutzerrechte Cyrustool: /etc/imapd.conf
  • Benutzer & Passwort anlegen: (Standartben.: cyrus Kein PW)
  • PW erstellen: passwd cyrus
  • PW einschalten: /etc/imapd.conf: sals_mech_list: Plain
  • Restart: /etc/init.d/cyrus restart
  • Cyrus start: cyradm –u cyrus localhost + PW
  •  ? = Kommandos von cyrus
  • Postfach einrichten (createmailbox): cm user.mmp4
  • Postfach = INBOX für Mailclients
  • Rechte des Postfachs: lam user.mmp4
  • Berechtigungen erteilen: sam user.mmp4 mmp5 lrs (lrs = kürzel; mmp4 erlaubt mmp5)
  • Öffentliche Mailbox für alle: z.B. für Rundschreiben o.ä. cm pub.Mailingslists sam pub.Mailinglists anyone lrs

20. Aussieben (automatisierte Kategorie Einordnung = Sieve von Cyrus)

  • Um Regeln in Sieve bekannt zu machen:
  • sieveshell l
  • Um Sieve auszuführen:
  • Sieveshell localhost (wobei localhost der PC ist, wo der IMAP deamon läuft)
  • Wenn das Regelwerk in der Datei „default“, verschieben und Aktivieren:
  • put default
  • activate default


  • Sieve (z.B. INBOX.eBay)
  • If anyof (header :contains “from” [“ebay.de”, ”ebay.com”] header :contains [“In-Reply-To”, “Message-ID”] “JavaMail.ebayapp”) {

fileinto “INBOX.eBay”

  • Sieve (z.B. zitate.at und header “Zitat des Tages”)
  • elsif allof ( header :contains “from“ “zitate.at”, header :contains “subject” “Zitat des Tages”) { fileinto “pub.Mailinglists.Zitate”;

}

  • Bei keiner Filterregel alles in die INBOX
  • else {fileinto “INBOX“; }
  • Bei Mails, die eine bestimmte Größe überschreiten:
  • If size :over 10M {reject “Bitte keine Mails größer als 10 MByte“; }


ich musste z.B. noch zusätlich SASL von cyrus installieren

mmp (Falls ich irgedwelche Copyrightrechte (wenn die bei Linux gibt verletztensollte SRY ))

Ich musste weiter ergänzen:

Zitat: Email-Server nach c’t einstellen & folgendes:

/etc/sysconfig/mail

  • MAIL_CREATE_CONFIG auf „no”.


Postfix einstellungen in /etc/postfix/master.cf:

  • flags=R user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -m ${extension} ${user}

Postfix einstellungen in /etc/postfix/main.cf:

  • relayhost=”smtp.web.de”
  • defer_transports = smtp
  • program_directory = /usr/lib/postfix
  • command_directory = /usr/sbin
  • daemon_directory = /usr/lib/postfix
  • queue_directory = /var/spool/postfix
  • default_privs = nobody
  • mail_spool_directory = /var/mail
  • mailbox_command = /usr/lib/cyrus/bin/deliver
  • mailbox_transport = cyrus
  • local_destination_concurrency_limit = 2
  • default_destination_concurrency_limit = 10
  • debug_peer_level = 2
  • mynetworks = 192.168.100.0/24, 127.0.0.0/8
  • myhostname = mmp3.deltaplus.local
  • mydomain = mmp3.deltaplus.de
  • myorigin = $mydomain
  • mail_owner = postfix
  • default_transport = smtp
  • canonical_maps = hash:/etc/postfix/canonical
  • smtpd_banner = $myhostname ESMTP
  • alias_maps = hash:/etc/aliases
  • alias_database = hash:/etc/aliases
  • setgid_group = maildrop
  • luser_relay = $root@mail.space.mil


Postfix einstellungen in /etc/aliases:

  • postmaster root
  • MAILER-DAEMON: postmaster
  • root: mmp3
  • Zusätzlich ausführen: newaliases

Postfix (neu) starten (bei Fehlermeldung tail -fn20 /var/log/messages)

Test von Postfix:

  • rcpostfix status

linux: # ps ax | grep postfix 13438 ? S 3:30 /usr/lib/postfix/master 14001 pts/4 S 0:00 grep postfix linux: # - linux: # telnet localhost 25 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to linux. Escape character is ’^[’. 220 mailserver.space.mil ESMTP - helo mmp3 mail from: meinnamebeiwebde@web.de rcpt to: deinnamebeideinemanbieter@deinanbieternamebla.de data Subject: Hello World! . quit -

Cyrus einstellungen in /etc/cyrus.conf:

  • lmtpunix cmd=”lmptd” listen=”/var/lib/imap/socket/lmtp” prefork=0

Cyrus einstellungen in /etc/imapd.conf:

  • configdirectory: /var/lib/imap
  • partition-default: /var/spool/imap
  • admins: cyrus root
  • srvtab: /var/lib/imap/srvtab
  • allowanonymouslogin: no
  • autocreatequota: 50000
  • reject8bit: no
  • quotawarn: 90
  • timeout: 480
  • sasl_pwcheck_method: pam (nicht wirklich auf saslauth belassen)
  • lmtpsocket: /var/lib/imap/socket/lmtp


Test von Cyrus:

  • rccyrus start

- linux: # telnet localhost imap Trying 127.0.0.1... Connected to localhost. Escape character is ’^[’.

  • OK localhost Cyrus IMAP4 v2.0.16 server ready

. logout

  • BYE LOGOUT received

. OK Completed - Cyrus einstellungen in cyradm (zu starten: /usr/bin/cyradm)

  • zunächst Benutzer bei Unix version Anlegen:
  • cyradm -user root localhost
  • createmailbox user.mmp3
  • listmailbox
  • setquota user.mmp3 102400
  • listquotaroot user.mmp3


Firewall einstellungen in yast:

Stoppen: ports öffnen: bla:

übertragen und bearbeitet: --Yehudi 11:02, 25. Aug 2006 (CEST)


Zurück zu Mail