Die Technik hinter dem FreeXP-Server
FreeXP Admin
admin at freexp.de
Son Aug 1 13:30:43 CEST 2004
<Versionsstand dieses Textes ist der 08.05.2004>
In diesem Text finden sich wichtige Hinweise zur Technik hinter dem
Server von freexp.de. Ob sich etwas an diesem Text geändert hat, erkennt
man an obigem Datum.
1. Das Grundsystem:
freexp.de wird auf einem vServer small von vollmar.net gehostet
(virtueller Server mit 5GB Plattenplatz). Siehe dazu auch die
Seiten von vollmar.net unter http://www.vlinux.de
Virtuelle Server sind Server, die auf einem größeren System so
gehostet werden, das sie sich fast wie ein dedizierten Server
verhalten. Nur müssen sich natürlich alle virtuellen Server die
Rechenleistung, die Netzbandbreite und den Speicher teilen.
Plattenplatz ist ebenfalls begrenzter als bei echten dedizierten
Servern. Für freexp.de reichen die Kapazitäten allerdings völlig
aus.
Mehr zu virtuellen Servern: http://www.linux-vserver.org
2. Die Systemsoftware:
Der FreeXP-Server wird mit Software aus der Debian Sarge Linux-
Distribution betrieben. Als Linux-Kernel kommt ein aktueller
2.4er-Kernel mit vServer-Patch zum Einsatz. Der Kernel kann
allerdings von FreeXP *nicht* beeinflußt werden, da es sich wie
bereits in Punkt 1 erläutert beim FreeXP-Server um einen virtuellen
Server handelt. Bei virtuellen Servern nutzen alle auf demselben
System gehosteten Server den gleichen Linux-Kernel.
3. Die Serversoftware:
3.1 Der Webserver:
Es wird der jeweils für Debian Sarge aktuelle Apache 2 benutzt.
PHP4 wird als CGI angebunden.
3.2 Der FTP-Server:
Beim FTP-Server handelt es sich um den jeweils aktuellen ProFTPd
aus Debian Sarge. Er ist so konfiguriert, daß man ihn nur zum
anonymen Download benutzen kann. Ein Upload auf den FreeXP-Server
ist aus Sicherheitsgründen weder anonym noch per namentlichem Login
möglich.
3.3 Die Textkonsole:
Administrativer Zugang per Textkonsole ist ausschließlich via SSH
möglich. Hierzu kommt das aktuelle OpenSSH aus Debian Sarge zum
Einsatz.
3.4 CVS-Server:
Auf dem FreeXP-Server ist der jeweils aktuelle CVS-Server aus
Debian Sarge im Einsatz. Er ist als pserver konfiguriert und
erlaubt anonym nur das Beziehen der aktuellen FreeXP-Sourcen. Um
Änderungen selbst einspielen zu können, ist ein persönlicher
CVS-Account notwendig.
Näheres zum CVS-Server ist auf der Webseite
http://www.freexp.de/sources.php nachzulesen.
3.5 Die Zeit, wo ist sie geblieben:
Per NTP kann beim FreeXP-Server die Zeit erfragt werden. Der
eingesetzte NTP-Server verbindet sich zwecks Syncronisation direkt
mit ntp1.ptb.de
3.6 Der Mailserver:
Bis 06.05.2004:
Als SMTP-Server kam Exim 3.36 zum Einsatz. Um diverse Müllplagen
einzudämmen, wurden folgende Filter eingesetzt:
- Exiscan als Virenscan-Modul, das mittels Clamav alle ankommenden
Mails auf Viren überprüfte. Wurde ein Virus entdeckt, wurde die Mail
nicht zugestellt, sondern in Quarantäne genommen und nach einigen
Tagen gelöscht. Aufgrund der derzeit großen Müllmenge ist eine
manuelle Prüfung jeder Virenmail vor dem Löschen *nicht* möglich.
Auch erfolgte keine Benachrichtigung des Empfängers, da die
Virenmeldungen sonst überhand genohmen hätten.
Der Absender der Mail wurde ebenso nicht benachrichtigt - zu viele
Viren bzw. Würmer fälschen inzwischen auch den Absender.
- SpamAssassin als Spamfilter für alle auf dem FreeXP-Server
existierenden Mail-Accounts.
Ab 07.05.2004 erfolgten folgende Änderungen:
Als SMTP-Server kommt Exim 4.31 zum Einsatz bzw. der jeweils aktuelle
Exim4 aus Debian Sarge. Um diverse Müllplagen einzudämmen, werden folgende
Filter eingesetzt:
- Exiscan-acl als Virenscan-Modul, das mittels Clamav alle ankommenden
SMTP-Connections auf Viren überprüft. Wird ein Virus entdeckt, wird
die Einlieferung der Mail mit einem Fehlercode 550 verweigert.
Eine Benachrichtigung des Empfängers der so nicht eingelieferten
Mail erfolgt nicht. Der Absender wird durch seinen Mailserver darüber
in Kenntnis gesetzt das seine Mail nicht eingeliefert werden konnte.
Diese Benachrichtigung ist möglich, da das Abweisen der Mail bereits
während des SMTP-Dialogs erfolgt und nicht wie bisher unter Exim3
später.
- SpamAssassin als Spamfilter für alle auf dem FreeXP-Server
existierenden Mail-Accounts.
Derzeit noch klassisch wie bei Exim3. An einer Lösung auf Ebene
des SMTP-Dialogs arbeite ich noch. Ebenso am Abweisen von
BadMIME-Mails.
Gleichgeblieben ist:
Um den Mißbrauch des FreeXP-Servers für Spam als Open Relay zu
verhindern. wird Mailrelaying nur nach Authentifizierung via
SMTP-AUTH unterstützt.
- Als POP3-Server kommt pop3d aus Debian Sarge zum Einsatz.
- Als IMAPS-Server wird uwimapd benutzt.
3.7 Der Mailinglisten-Manager:
Als Mailinglisten-Manager kommt ein von uns modifizierter Mailman
zum Einsatz, der Message-IDs beim Gaten nicht verändert. Dadurch
ist eine funktionierende Bezugsverkettung in beiden Richtungen
gewährleistet. Mailman ist so konfiguriert, daß es als Mail2News-
Gate funktioniert und alle Mailinglisten-Mails, die an eine der
öffentlichen Mailinglisten auf dem FreeXP-Server gesendet wurden,
an die korrespondierende Newsgroup gatet. Neue Postings in eine
Newsgroup werden im Gegenzug als Mail an die entsprechende
Mailingliste zurückgegated.
Mailman testet via SpamAssassin jede Mailinglisten-Mail auf Spam
und entsorgt automatisch jede Mail, die mit hoher Wahrscheinlich-
keit Spam ist. Bezüglich Viren ist zu beachten, daß Virenmails an
Mailinglisten bereits durch Exiscan nach der Einlieferung per SMTP
an Exim aus dem System genommen werden.
Bitte beachten: Auch wenn hier auf Viren gescannt wird, ist nicht
ausgeschlossen, daß das System Viren übersieht und
sie somit zugestellt werden.
3.8 Der Newsserver:
Wir verwenden den aktuellen INN2.4 aus Debian Sarge. Die Haltezeit
der Postings auf news.freexp.de ist auf unendlich eingestellt.
Entsorgt werden alte Postings dennoch irgendwann. Dies passiert, da
wir hier als Speichermethode CNFS (Cyclic News File System)
benutzen, sobald das CNFS dieselbe Speicherstelle wiederverwendet
hat. Es existieren 2 CNFS-Spools: ONE und TWO.
ONE wird für die Gruppen crosspoint.freexp.bin und
crosspoint.freexp.cvs verwendet, TWO für alle anderen.
Beide Spools sind 100.000.000 Bytes (ca. 97MB) groß.
Wer also wissen will, wann ein von ihm abgesetztes Posting vom
Server entfernt wird, der kann dies nicht anhand einer Anzahl Tagen
abschätzen, sondern muß sehen das erst 97 MB in denselben Spool
geschrieben werden müssen, bis ein Posting weg ist.
CNFS sind Ringbuffer.
Es existieren derzeit folgende Feeds zu anderen Newsservern:
news.t-online.de T-Online
news.ping.de PING e.V.
3.9 Webforen:
Als Foren-Software kommt PHPBB2 zum Einsatz. Mittels Newssync
werden die Webforen mit dem Newsserver synchron gehalten. Das
Aktualisierungsintervall liegt bei 10 Minuten.
3.10 MRTG:
Wer den Verlauf der Aktivitäten auf dem FreeXP-Server graphisch
verfolgen will, kann dies unter http://www.freexp.de/mrtg/ tun.
4. Fehlt etwas ?
Dann schreibt einfach an admin at freexp.de
Martin Wodrich <mw at freexp.de>
Mehr Informationen über die CVS-List Mailingliste