Server für umfangreiche Community-Mail

SubNet

New Member
Guten Abend.

Ich bin absolut unerfahren im Bereich Server und soll einen Mail-Server für eine ziemlich umfangreiche Community planen. Folgende Anforderungen soll die Lösung bewältigen:

1) IMAP, POP3 und SMTP für ca. 5.000 aktive Mailnutzer mit einem Mail-Aufkommen von ca 250 bis 400 emfangenen Mails pro Tag und User
2) Mail-Postfach mit durchschnittlich 150 MB je User
3) Mail-Anhänge auf maximal 15 MB begrenzt (ca 60% der User auf 2,5 MB)
4) Spamfilterung mit Graylisting und Spamassassin
5) Virenfilter (ClamAV oder was auch immer)
6) Online-Mailzugriff mittels IlohaMail (PHP-Mail-Client mit IMAP-, POP3- und SMTP-Funktionalität)
7) Adressbuch über LDAP (Anbindung wird extra in PHP programmiert)
8) WebDav-Verzeichnis für jeden User (Größe muß noch geklärt werden - hängt von den Kosten für den Speicher ab)
9) Kalender-Anwendung (wird auch in PHP erstellt)
10) Userverwaltung über Datenbank (MySQL, Postgres, oder auch besser geeignete)

Das ganze fängt warscheinlich mit eher ein paar 100 Usern an, wird aber ziemlich schnell wachsen. Die 5000 User sind ein geschätzter Wert nach ca 12 bis 18 Monaten. Es kann sein, dass das ganze im Endeffekt auch noch erheblich größere Ausmaße annimmt (bis 20.000 User), muss also auch später noch skalieren können.

Die Administration ist noch nicht geklärt, aber ich denke, dass ich einen Großteil machen werde und mir entsprechendes Wissen anlesen oder sonstwie aneignen muss.

Die Hardware soll von einem Provider kommen. Mich interessiert also kein direkter Hardwarevorschlag, sondern eher eine Einschätzung, was ich an CPU, RAM, RAID, Bandbreite, Traffic etc. einkalkuliern sollte und ob das überhaupt eine Maschine bewältigen kann. Das ganze soll unter Linux (Debian oder Ubuntu Server) laufen.

Tja, was soll ich noch sagen ... ich bin gespannt auf Euren Rat und Eure Fragen.

Gruß und Gute Nacht, SubNet
 
400 Mails pro Tag und pro User?
Das heißt jeder eurer User empfängt jeden Tag 400 Mails? :eek:
Bekommt man das E-Mail lesen via Stundenlohn bei euch bezahlt? :D
 
Ich schätze das Phänomen Spam ist auch hier allseits bekannt ;)

Die 400 Mails sind incl der zu filternden Spam-Mails. Im Postfach werden pro User wohl so etwa 20 bis 50 Mails am Tag landen - nach Spam-beseitigung.

Gruß, SubNet
 
Najo 200 bis 350 Spammails am Tag pro User sind trotzdem ein bisschen viel. ;)
Ansonsten würde ich das ganze am Anfang mit einem Server machen und schauen wie die Auslastung liegt.
Jenachdem wo die Flaschenhälse liegen dann dafür einen 2. Server anschaffen.

Denkbar wäre da beispielsweise ein Loadbalancing auf mehrere Webserver oder Auslagern der Datenbanken/LDAP Server auf eine extra Maschine oder das absplitten des Mailservers auf eine extra Maschine.

Genaueres kann man wohl erst sagen wenn es läuft.
 
Was würdest Du denn so als Hardware vorschlagen? Man kann ja mit einem einfachen Dualcore und 2 GB RAM anfangen, aber auch ein dual Quadcore mit 32 GB RAM wären ein Anfang - wo muss ich mich denn da so in etwa drauf einstellen?
Ich kann das überhaupt nicht einschätzen. Was verpulvert Spamassassin, was braucht das Webinterface, Antivirus-Scanner, und der/die Mail-Server?

Sicher sind die 350 Spams hoch gegriffen, aber wenn ich mich so umhöre bekommen die meisten Leute heute so ca 6 bsi 10 mal soviel Spam, wie Ham :(

Gruß, SubNet
 
Hallo!

Sicherlich kann bei einem hohen Mailaufkommen SA den Server entsprechend auslasten, da ja eine ganze Menge gemacht werden muß, aber Du hast ja auch in deinem Eröffnungsposting davon gesprochen Greylisting einzusetzen und das ist auch nach meinen Erfahrungen die erste Wahl. Es ist deutlich performanter als SA und die Spam werden erst garnicht zugestellt. Nur was durch das Greylisting durchkommt wird dann entsprechenden von SA und ClamAV untersucht.

Aber wie gesagt, die Hauptlast an Spam sollte bereits durch Greylisting entsorgt werden (siehe meine Statistik in der Anlage).

Gruß flyingoffice
 

Attachments

  • grey.png
    grey.png
    24.5 KB · Views: 214
Last edited by a moderator:
Hallo society!

Selbst ist der Mann / die Frau, sprich eine Eigenentwicklung :D

Gruß flyingoffice
 
Was würdest Du denn so als Hardware vorschlagen? Man kann ja mit einem einfachen Dualcore und 2 GB RAM anfangen, aber auch ein dual Quadcore mit 32 GB RAM wären ein Anfang - wo muss ich mich denn da so in etwa drauf einstellen?
Ich kann das überhaupt nicht einschätzen. Was verpulvert Spamassassin, was braucht das Webinterface, Antivirus-Scanner, und der/die Mail-Server?

Sicher sind die 350 Spams hoch gegriffen, aber wenn ich mich so umhöre bekommen die meisten Leute heute so ca 6 bsi 10 mal soviel Spam, wie Ham :(

Gruß, SubNet

Hallo,

handelt es sich hier um nur eine Domain die den Spam empfängt? Wenn ja, kann ich eine kostengünstige Lösung anbieten um den Spam schon vor dem Server zu filtern! Bei Interesse einfach kurz melden :)
 
Guten Abend.

Ich bin absolut unerfahren im Bereich Server und soll einen Mail-Server für eine ziemlich umfangreiche Community planen.

Autsch. Bist du dir im klaren, was das bedeutet?

Folgende Anforderungen soll die Lösung bewältigen:
1) IMAP, POP3 und SMTP für ca. 5.000 aktive Mailnutzer mit einem Mail-Aufkommen von ca 250 bis 400 emfangenen Mails pro Tag und User
2) Mail-Postfach mit durchschnittlich 150 MB je User
3) Mail-Anhänge auf maximal 15 MB begrenzt (ca 60% der User auf 2,5 MB)
4) Spamfilterung mit Graylisting und Spamassassin
5) Virenfilter (ClamAV oder was auch immer)
6) Online-Mailzugriff mittels IlohaMail (PHP-Mail-Client mit IMAP-, POP3- und SMTP-Funktionalität)
7) Adressbuch über LDAP (Anbindung wird extra in PHP programmiert)
8) WebDav-Verzeichnis für jeden User (Größe muß noch geklärt werden - hängt von den Kosten für den Speicher ab)
9) Kalender-Anwendung (wird auch in PHP erstellt)
10) Userverwaltung über Datenbank (MySQL, Postgres, oder auch besser geeignete)

Das ganze wird für eine einzelne Kiste schon ziemlich schwierig. Wenn ich mal grob überschlage, werden das knapp 1 TB an Netto-Speicherplatz nur für die Mails. Dazu kommen kalkulierte 2 Mio Mails am Tag, was gleichmässig verteilt ungefähr 23 Mails pro Sekunde. Rechne dann realistischerweise im Peak mit 100 Mails pro Sekunde.

Das ganze fängt warscheinlich mit eher ein paar 100 Usern an, wird aber ziemlich schnell wachsen. Die 5000 User sind ein geschätzter Wert nach ca 12 bis 18 Monaten. Es kann sein, dass das ganze im Endeffekt auch noch erheblich größere Ausmaße annimmt (bis 20.000 User), muss also auch später noch skalieren können.

Dann überleg dir sehr schnell, wie du so eine Lösung auf mehrere Rechner aufteilen kannst.

Die Administration ist noch nicht geklärt, aber ich denke, dass ich einen Großteil machen werde und mir entsprechendes Wissen anlesen oder sonstwie aneignen muss.

Willst du dir vollständig ohne Linuxerfahrung so einen Schuh anziehen? Ich würde das nicht tun. Das ist eine Geschichte, für die man einen Admin benötigt, der mit dem Mailsystem auf "per du" sein sollte. Mit den üblichen Admin-Tools wie plesk ist bei sowas nichtmehr arg viel zu reissen.

Grössere Erfahrung in der Problem Analyse unter Unix-Systemen wäre dann auch nicht verkehrt.


Die Hardware soll von einem Provider kommen. Mich interessiert also kein direkter Hardwarevorschlag, sondern eher eine Einschätzung, was ich an CPU, RAM, RAID, Bandbreite, Traffic etc. einkalkuliern sollte und ob das überhaupt eine Maschine bewältigen kann. Das ganze soll unter Linux (Debian oder Ubuntu Server) laufen.

Wenn du unbedingt ein Sizing willst: Die minimale Umgebung wären in meinen Augen 2 Server (jeweils 2 Kerne, 4G RAM), die den Mailspool auf einem schnellen RAID1 liegen haben; die Mailboxen in einem RAID5, das mittels drbd gespiegelt wird; dazu noch die Systemplatten (auch RAID1). Beide agieren als Mailserver (incoming wie outgoing) und auf beiden fährst du deine Weboberfläche. Loadbalancing im einfachsten Fall per Round-Robin-DNS, ansonsten hängst du noch einen Loadbalacing-Daemon davor (auf diesselben Maschinen). Damit hast du zumindest minimalste Redundanz.

Wenn du uns jetzt noch verrätst, wie tragisch ein Ausfall dieses Maildienstes für einen Tag ist und wieviel dich ein Komplett-Verlust deiner Daten kostet, können wir weiterplanen.

Zumindest deutet das für mich auf etwas hin, was man nicht mal so geschwind am Feierabend verwaltet.
 
Autsch. Bist du dir im klaren, was das bedeutet?
Naja, ich denke nur halbwegs, aber daher frage ich ja auch Profis, um mir ein Bild machen zu können - das bleibt sicher nicht der letzte Thread von mir ...

Dann überleg dir sehr schnell, wie du so eine Lösung auf mehrere Rechner aufteilen kannst.
Das ist ja eines der Probleme ... Redundanz in der Praxis, Speichersysteme, Verteilbarkeit sind alles hole Begriffe, die ich erstmal noch füllen muss.

Willst du dir vollständig ohne Linuxerfahrung so einen Schuh anziehen? Ich würde das nicht tun. Das ist eine Geschichte, für die man einen Admin benötigt, der mit dem Mailsystem auf "per du" sein sollte. Mit den üblichen Admin-Tools wie p+lesk ist bei sowas nichtmehr arg viel zu reissen.
Ich habe schon Linuxerfahrung - bin seit 1,5 Jahren reiner Ubuntu-User. Also sowohl die Shell, als auch die Struktur etc sind mir nicht fremd. Dass ich das Mailsystem gut kennen muss ist mir mehr als klar - die Zeit drängt nicht.

Grössere Erfahrung in der Problem Analyse unter Unix-Systemen wäre dann auch nicht verkehrt.
Das habe ich noch nicht wirklich bedacht. Was genau verstehst Du denn unter Problemanalyse? Logs lesen, wissen, wo ich in /proc nach Infos suchen muss. Das ist mir alles noch nicht wirklich geläufig, aber wie man sieht habe ich auch schon davon gehört ;)

Wenn du unbedingt ein Sizing willst: Die minimale Umgebung wären in meinen Augen 2 Server (jeweils 2 Kerne, 4G RAM), die den Mailspool auf einem schnellen RAID1 liegen haben; die Mailboxen in einem RAID5, das mittels drbd gespiegelt wird; dazu noch die Systemplatten (auch RAID1). Beide agieren als Mailserver (incoming wie outgoing) und auf beiden fährst du deine Weboberfläche. Loadbalancing im einfachsten Fall per Round-Robin-DNS, ansonsten hängst du noch einen Loadbalacing-Daemon davor (auf diesselben Maschinen). Damit hast du zumindest minimalste Redundanz.
Das hört sich nach einem ganz guten Anfang an.

Wenn du uns jetzt noch verrätst, wie tragisch ein Ausfall dieses Maildienstes für einen Tag ist und wieviel dich ein Komplett-Verlust deiner Daten kostet, können wir weiterplanen.
Komplettverlust der Daten ist absolut nicht akzeptabel, muss also ausgeschlossen sein. Der Ausfall für einen ganzen Tag käme auch einer mittleren Katastrophe nahe. Maximale Ausfallzeit sollte 2 Stunden sein, besser wäre auch hier "absolute" Ausfallsicherheit.

Zumindest deutet das für mich auf etwas hin, was man nicht mal so geschwind am Feierabend verwaltet.
Das Projekt soll bis Ende des Jahres / Anfang nächsten Jahres fertig und online sein.
 
Ich habe schon Linuxerfahrung - bin seit 1,5 Jahren reiner Ubuntu-User. Also sowohl die Shell, als auch die Struktur etc sind mir nicht fremd. Dass ich das Mailsystem gut kennen muss ist mir mehr als klar - die Zeit drängt nicht.

Ich glaube nicht, daß diese Erfahrung nicht ausreichen wird. Ein Desktop-System hat andere Knöpfe als ein Serversystem.

Das habe ich noch nicht wirklich bedacht. Was genau verstehst Du denn unter Problemanalyse? Logs lesen, wissen, wo ich in /proc nach Infos suchen muss. Das ist mir alles noch nicht wirklich geläufig, aber wie man sieht habe ich auch schon davon gehört ;)

Das ist einfach;schwieriger wird es, wenn die Mails unerklärlicherweise nur noch langsam reintröpfeln. Oder wenn sich Mails in den Mail-Queues immer weiter anstaut.

Da braucht es schon ein gewisses Maß an Erfahrung, um zu wissen, mit welchen Mitteln man da am schnellsten zur Ursache vorstösst, um also die richtigen Stichworte für google zu finden.


Das hört sich nach einem ganz guten Anfang an.

Ist aus meiner Sicht aber ein absolutes Minimal-Setup (wenn man deine prognostizierten Zahlen berücksichtigt).

Komplettverlust der Daten ist absolut nicht akzeptabel, muss also ausgeschlossen sein. Der Ausfall für einen ganzen Tag käme auch einer mittleren Katastrophe nahe. Maximale Ausfallzeit sollte 2 Stunden sein, besser wäre auch hier "absolute" Ausfallsicherheit.

Gut, dann brauchst du ein vernünftiges Backup-Konzept für deine Menge an Daten. Mit diesen Ausfallzeit kommst du ausserdem schon langsam in die HA-Ecke.

Du solltest dir ein brauchbares Konzept überlegen, wie du das ganze strukturieren willst. Getrennte Front- (Mail, Web,Antispam und Antiviren) und Backends (Maildaten,Userdaten) wären sicherlich nicht schlecht, da bist du in Sachen Skalierbarkeit etwas flexibler. Allerdings kostet der Spaß dann richtig Geld; willst du es richtig machen, bist du problemlos im sechsstelligen Bereich (Gekaufte Rechner mit 3 Jahren Vor-Ort-Garantie, 8h Reaktionszeit; Storage-System inklusive Backuptechnik).

Und dann würde ich mir professionelle Hilfe einkaufen, das macht den Kohl auch nicht mehr fett. Alternativ sogar die ganze Geschichte bei einem der grossen Mailanbieter einkaufen. Wäre eindeutig die stressfreieste Lösung.
 
Darf man mal Fragen was da dahintersteckt? Möchtest du eine Alternative zu GMX oder web.de anbieten? Wie möchtest du innerhalb einer so kurzen Zeit auf so viele Mitglieder kommen?
 
Ich weiß gar nicht, was ihr habt...

1.500.000 Mails am Tag können problemlos mit zwei Dual-Core Prozessoren mit 8GB Ram verarbeitet werden. Das ist zumindest unsere Erfahrung mit optimiertem Postfix.

Wichtig ist, dass Greylisting eingesetzt wird, um die Performance zu stabilisieren und nur das nötigste zu scannen.
 
Back
Top