ENTWICKLE EIN SICHERES SYTEM mit LIDS

Die Nov 13 16:27:42 CET 2001

LIDS (Linux Intrusion Detection System) ist ein Linux Kernel Patch und Administrations Tools (lidsadm) um den original Linus Kernel zu erweitern. Es implementiert ein Sicherheits Modell, Referenz Modell und ein Mandatory Access Control Modell im Kernel. In diesem Artikel werden wir uns LIDS anschauen und sehen, wass man tun kann und wie man ein sicheres Linux System entwickelt.

Warum LIDS.

Mit der zunehmenden Popularität von Linux auf dem Intenet, mehr und mehr Sicherheitsloecher werden in den Applikationen gefunden. Viele Exploits entstehen durch den verantwortungslosen Umgang der Programmierer, wie z.B. Buffer Over Flow und Format String Attack. Nachdem ein System mit dem Exploit geknackt wurde und der Hacker bekommt RooT Privilegien, wird das ganze System rd durch die Eindringlinge kontrolliert.

Dank der Open Source Gemeinschaft, bekommen wir viele Linux Applikationen mit dem Source Code und können es nach unserem Belieben veraendern. Die Bugs können einfach gefunden werden und koennen auch schnell behoben werden. Wenn das Sicherheitsloch durch die Oeffentlichkeit entdeckt worden ist und der Administrator ist zu schlaff das Loch zu stopfen, ist es sehr einfach so ein System zu knacken und in das ungepatchte System einzudringen und es ist eine Katastrophe dass der eine Root Shell bekommt. Mit dem momentanen GNU/Linux System, er kann alles tun was er will. Das ist das Problem das wir mit LIDS loesen wollen.

Schauen wir, was mit dem momentanen GNU/Linux System nicht in Ordnung ist.

  • Das File System ist ungeschützt. Es gibt viele wichtige Dateien, wie z.B. /bin/login, im System. Wenn ein Hacker einbricht, kann er ein veraendertes login Programm einspielen um das alte zu ersetzen. Damit kann er sich einloggen ohne ein gültiges Login und Passwort zu besitzen. Das wird oftmals als Trojanisches Pferd bezeichnet. Aber diese Dateien müssen nicht oft geändert werden, ausser man will das System Upgraden.

  • Ein Prozess ist ungeschuetzt. Ein laufender Prozess im System dient in irgendeiner Weise dem System, wie z.B. ein HTTPD als Webserver dazu dient Web Inhalt einem entfernten Client zur Verfuegung zu stellen. Als ein Web Server System, es ist sehr wichtig den Prozess von einem Verschwinden zu schuetzen. Aber wir koennen nichts machen, wenn der Angreifer Root Privilegien erlangt.

  • System Administration ist ungeschuetzt. Viel Arbeit bei der System Administration, wie z.B. das Laden/Entladen von Modulen, Routing Konfiguration und Firewall Regeln können modifiziert werden, wenn die ID des User's 0 ist. Es ist unsicher, wenn der Eindringling Root Privilegien erlangt.

  • Superuser (root) kann die Rechte missbrauchen. Root sein bedeutet, man kann alles machen was man will. Selbst die Moeglichkeiten im momentanen System, er kann immer noch die Möglichkeiten veraendern.

Als Zusammenfassung laesst sich sagen, dass die Moeglichkeiten eines normalen Linux Systems nicht genung sind um eine sichere Umgebung zu entwickeln. Wir muessen ein neues Modell dem Kernel beibringen um sich mit diesen Problemen auseinander zu setzen.

Das macht LIDS.

Eigenschaften von LIDS.

Das Linux Intrusion Detection System ist ein Patch und Admin Tools die die Kernel Sicherheit erhoehen. Es implementiert ein Ueberwachungstool und Mandatory Access Control im Linux Kernel. Wenn es aktiviert ist, ausgewaehlter Datei Zugriff, jede System/Netzwerk Administration, jeder Capability Gebrauch, Raw Devices, Speicher und I/O Zugriff kann verunmoeglicht werden, selbst fuer Root. Es benuetzt und erweitert die System Capabilities um das ganze System zu kontrollieren und fuegt ein paar Netzwerk und Datei-System Sicherheit Features im Kernel um die Sicherheit zu erhoehen. Man kann den Schutz online fein tunen, sensible Prozesse schuetzen, Sicherheits Meldungen durch das Netzwerk und mehr.

Mit dem Sicherheits Modell im Kernel, LIDS bietet Ein Schutz, Erkennungs und Antwort im Linux System.

Fuer mehr Information wie das Sicherheitsmodell von LIDS funktioniert, siehe LIDS Hacking HOWTO.

Schutz.

LIDS bietet den folgenden Schutz.

  • LIDS kann wichtige Dateien und Verzeichnisse auf der Festplatte schuetzen, unabhaengig davon was fuer ein Filesystem eingesetzt wird. Jeder, inklusive Root, kann diese Dateien nicht veraendern.

  • LIDS kann auch wichtige Prozesse davor schuetzen, geschlossen zu werden.

  • LIDS kann rohen (RAW) IO Operationen von einem unauthorisierten Programm schuetzen. Es kann auch die Festplatte, inklusive dem MBR, schuetzen usw.

  • LIDS kann sensible Dateien schuetzen und unerlaubten Zugriff(inklusive Root) von unerlaubten Programmen den Zugriff verweigern.

    Mehr.

Erkennung.

Wenn jemand den Host scanned, erkennt LIDS das und wird den Administrator informieren.

Antwort.

Wenn jemand die Regeln bricht, dann loggt LIDS die Details ueber den Zugriff an ein sicheres Log das von LIDS geschuetzt wird. LIDS kann die Nachricht auch an einen Mail Empfaenger weiterleiten. In diesem Fall kann LIDS die Session des Users auf einmal schliessen

Entwicklung eines sicheren Linux Systems.

Mit den LIDS Features, schauen wir einmal wie man ein sicheres System mit LIDS bekommt und das Schritt fuer Schritt.

Runterladen des LIDS Patch und des dazugehoerigen offiziellen Linux Kernels

Den LIDS Patch und das Admin Tool kann man von http://www.lids.org und ftp://ftp.lids.org und anderen LIDS Mirrors rund um die Welt, schau unter http://www.lids.org fuer eine nahe Mirror Site. Der Patch Name wird lids-x.xx-y.y.y.tar.gz, x.xx zeigt die LIDS Version und y.y.y zeigt die Linux Kernel Version. Z.B. lids-0.9.9-2.2.17.tar.gz entspricht LIDS version 0.9.9 und die entsprechende Kernel Version ist 2.2.17. Man sollte den entsprechenden Patch der zur Kernel Version passt runterladen. Z.B., wenn man lids-0.9.9-2.2.17.tar.gz runterlaedt, sollte man auch den Linux Kernel 2.2.17 Source runterladen. Den Kernel Source bekommt man von ftp://ftp.linux.org oder anderen Mirror Sites.

Nachdem braucht man den Kernel Source und den LIDS Tarball zu entpacken. Z.B. wenn man lids-0.9.9-2.2.17.tar.gz von www.lids.org und linux-2.2.17.tar.bz2 von ftp.us.kernel.org.


1. unkomprimier den Linux Kernel Source
# cd linux_install_path/ 
# bzip2 -cd linux-2.2.17.tar.bz2 | tar -xvf - 


2. unkomprimier den LIDS source und installier das lidsadm tool.
# cd lids_install_path
# tar -zxvf lids-0.9.8-2.2.17.tar.gz

Patch den Linux Kernel mit LIDS

3. Patch LIDS zum Linux Kernel Source.

# cd linux_install_path/linux
# patch -p1 </lids_install_path/lids-0.9pre4-2.2.14.patch

/* link den standard Source Pfad zu der LIDS gepatched Version
# rm -rf /usr/src/linux
# ln -s linux_install_patch/linux /usr/src/linux 

Konfigurier den Linux Kernel


4. Konfigurieren des Linux Kernels
# cd linux
# make menuconfig oder make xconfig 
Jetzt ist es Zeit den Linux Kernel zu konfigurieren. Stell die folgende Option ein,

[*] Prompt for development and/or incomplete code/drivers 
[*] Sysctl support 

Nachdem findest du eine neue Option die am Ende des Konfigurationmenu mit dem
Namen "Linux Intrusion Detection System" aufgefuehrt ist. Selektier dieses Menu
und stell

[*] Linux Intrusion Detection System support  (EXPERIMENTAL) (NEW).
Nach dem konfigurieren der LIDS Kernel Optionen, schliess das Konfigurationsinterface und kompilier den Kernel.
# make dep
# make clean
# make bzImage
# make modules
# make modules_install

Installier LIDS und das Admin Tool im Linux System.

4. Kopieren von bzImage nach /boot/ und anpassen von /etc/lilo.conf

# cp arch/i386/boot/bzImage /boot/bzImage-lids-0.9.9-2.2.17

/* build admin tools */
# cd lids-0.9.8-2.2.17/lidsadm-0.9.8/
# make
# make install 

# less /etc/lilo.conf
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux

image=/boot/vmlinuz-2.2.16-3
        label=linux
        read-only
        root=/dev/hda2

image=/boot/bzImage-lids-0.9.9-2.2.17
        label=dev
        read-only
        root=/dev/hda2
5 ausfuehren von /sbin/lilo um den neuen Kernel zu installieren.
# /sbin/lilo

Konfiguration des LIDS Systems

Bevor man neu startet muss man das LIDS System konfigurieren um die Moeglichkeiten den Beduerfnissen anzupassen. Man kann Dateien schuetzen, Prozesse schuetzen usw.

Standarmaessig, lidsadm wird die standard Konfigurationsdateien in /etc/lids/ installieren. Man muss es nach den eigenen Beduerfnissen anpassen. Zuerst werden die inode/dev Werte von lids.conf geupdated.
# /sbin/lidsadm -U 
Im naechsten Kapitel werden wir uns die Details ansehen.

Neustart des Systems

Nachdem man das Linux System konfiguriert hat, startet man das System. Wenn der LILO erscheint waehlt man den LIDS erweiterten zum laden. Danach betritt man die wunderbare Welt von LIDS.

Absiegeln des Kernels

Nach dem Systemstart, sollte man nicht vergessen den Kernel mit lidsadm abzusiegeln. Man kann den Befehl in die letzte Zeile von /etc/rc.local schreiben.

# /sbin/lidsadm -I 
Im LIDS HOWTO steht, was die einzelnen Optionen von lidsadm zu bedeuten haben.

Online Administration

Nachdem der Kernel abgesiegelt ist, wird das System durch LIDS geschuetzt. Man kann einige Tests machen. Wenn man eine Konfiguration veraendern will, wie z.B. das Aendern der Capability Option, kann man die LIDS sicherheitstufe online durch ein Passwort verändern.

# /sbin/lidsadm -S -- -LIDS 
After you change you lids configuration value, such as lids.conf, lids.cap. You can also reload the configuration file into the kernel by Nachdem ein LIDS konfigurationswert geaendert wurde, wie z.B. lids.conf, lids.cap usw., kann man die Konfiguration mit folgendem Befehl neu laden
# /sbin/lidsadm -S -- +RELOAD_CONF

Konfigurieren des LIDS Systems

In diesem Kapitel wird gezeigt wie man LIDS konfiguriert.

LIDS Konfigurations Verzeichniss -- "/etc/lids/"

Nach dem installieren von lidsadm findet man raus, dass ein LIDS Konfigurations Verzeichnis in /etc/lids/ vorhanden ist. Wenn der Kernel bootet wird die Konfiguration in den Kernel eingelesen um das LIDS System zu initialisieren.

  • lids.conf Diese Datei speichert die LIDS ACL Informationen. Sie beinhaltet die ACLs um einem Objekt einen Zugriffstyp zu geben. Ein Eintrag kann durch lidsadm hinzugefuegt oder geloescht werden.

  • lids.cap Diese Datei enthaltet alle Capabilities auf dem System. Man kann durch editieren dieser Datei entscheiden welche Capability man auf dem System aktivieren oder deaktivieren will. Man entweder ein "+" zum einschalten oder ein "-" zum abschalten der Capability nehmen. Wenn das System installiert wurde, die bekommt die lids.cap einen standard Wert. Man sollte es anpassen nach Bedarf.

  • lids.net Diese Datei deint der Konfiguration um einen Alarm durch das Netzwerk auszuloesen. Man kann den SMTP Server, Port, Subject usw. einstellen.

    Diese Datei wird gebraucht, wenn man den Kernel damit konfiguriert

    [*]   Send security alerts through network (NEW)

  • lids.pw Diese Datei wird gebraucht um das Passwort, dass mit "lidsadm -P" generiert wird zu speichern. Es ist notwendig wenn der Kernel damit konfiguriert wurde
    [*] Allow switching LIDS protections (NEW)
    Notiz: Man sollte "lidsadm -P" ausführen bevor der Kernel neu gestartet wird, wenn man die LIDS Schutzstufe einstellen will.

Schutz von Dateien und Verzeichnissen

Zuerst muss man feststellen welche Dateien man eigentlich schuetzen will. In den meisten Faellen ist sind das die System Binaries und Konfigurationen, wie z.B. /usr/, /sbin/, /etc/, /var/log/.

Zweitens, muss man entscheiden welchen Weg man einschlagen will umd die Dateien zu schuetzen. LIDS bietet 4 schutztypen:

DENY Zugriff an jederman.

Die Datei oder Verzeichniss als DENY markiert bedeutet, dass es niemand sehen oder modifizieren kann. Die kritischsten Dateien sollte als DENY konfiguriert werden. Z.B., kann man /etc/shadow als DENY markieren und damit den Zugriff fuer irgendjemanden sperren.

Benuetzung
	lidsadm -A -o datei_zum_schuetzen -j DENY

# lidsadm -A -o /etc/shadow -j DENY
Danach Neustart oder ein RELOAD der Konfigurationsdatei. Man sieht
# ls /etc/shadow
ls: /etc/shadow: No such file or directory
Danach, wenn irgendein Programm probiert auf diese Dateien zuzugreifen, z.B. wenn sich jemand einloggt und das /bin/login Programm diese Datei lesen lesen muss, aber sie als DENY markiert ist, macht man folgendes

Benuetzung
	lidsadm -A -s SUBJECT_PROGRAM -o OBJECT_PROGRAM -j READ/WRITE/APPEND
# lidsadm -A -s /bin/login -o /etc/shadow -j READ  
Nachdem die Konfiguration eingesetzt wird (Neustart des Systems oder RELOAD des konfigurationsfiles), kann man sich einloggen aber man kann nicht das /etc/shadow mithilfe eines anderen Programmes zugreiffen. Das ist ein Beispiel von MAC(mandatory access control).

Nur-Lese Dateien

Die Dateien die mit Nur-Lesen markiert sind, bedeuten dass niemand diese Dateien aendern kann. Wir glauben, folgende Dateien gehoeren dazu: /etc/passwd, /bin/passwd usw.

USAGE:
lidsadm -A -o file_to_protect -j READ 

beispiel,

1. schuetz im gesamten System /sbin um nur zu lesen

 # /sbin/lidsadm -A -o /sbin/ -j READ

2. schuetz /etc/passwd als nur-lese zugriff

 # /sbin/lidsadm -A -o /etc/passwd -j READ

READ-ONLY FILES

Die meisten der Anhaenge-Nur Dateien sind System Log Dateien, wie z.B. /var/log/message oder /var/log/secure. Diese Dateien koennen nur mit Append Modus geoeffnet werden und koennen nicht geloescht oder modifiziert (frueherer Inhalt) werden.

USAGE:
lidsadm -A -o filename_to_protect -j APPEND

Beispiel,

1. um die System Logs zu schuetzen

# /sbin/lidsadm -A -o /var/log/message -j APPEND
# /sbin/lidsadm -A -o /var/log/secure -j APPEND

2. um die Apache httpd Log Dateien zu schuetzen

# /sbin/lidsadm -A -o /etc/httpd/logs/ -j APPEND

WRITE

Dieser Mode einem Objekt zugewiesen kann Schreibzugriff gewaehren.

Mandatory Access Control beim Dateischutz

Mann kann definieren welches Subject (Programm) auf welches Object(Datei) mit welchen Zugriffs Modi - READ, APPEND und WRITE, zugreifen darf.

Z.B. kann man /home/httpd auf DENY für jedermann setzen und nur /usr/sbin/httpd kann von diesem Verzeichniss READ (lesen). In diesem Fall kann der Webserver seine Dienste ganz normal fortsetzen, aber der Inhalt und Programme unter /home/httpd kann nicht gesehen oder modifiziert werden (MACL). Wenn der Eindringling eine Root Shell bekommt durch Sicherheitsloecher in httpd, sieht er nicht mal die Dateien in der Root Shell. Selbst wenn er gefaehrlichen Code in httpd indem er den Stack ueberschreibt, kann er nur die Dateien unter /home/httpd lesen, aber er kann sie nicht modifizieren.


# lidsadm -A -o /home/httpd -j DENY
# lidsadm -A -s /usr/sbin/httpd -o /home/httpd -j READ

Beispiel

Hier ist ein Beispiel vom LIDS HOWTO von Philippe Biondi

lidsadm -Z
lidsadm -A -o /boot -j READ
lidsadm -A -o /vmlinuz -j READ
lidsadm -A -o /lib -j READ
lidsadm -A -o /root -j READ
lidsadm -A -o /etc -j READ
lidsadm -A -o /sbin -j READ
lidsadm -A -o /usr/sbin -j READ
lidsadm -A -o /bin -j READ
lidsadm -A -o /usr/bin -j READ
lidsadm -A -o /usr/lib -j READ
lidsadm -A -o /var/log -j APPEND 
Eine Beispiel lids.conf kommt mit dem lidsadm Paket in /etc/lids/ nachdem man lidsadm installiert hat, muss man "lidsadm -U" laufen lassen um die inode/dev Werte zu updaten und rekonfigurationen vorzunehmen und es anzupassen.

Prozesse schuetzen.

UN-killable Prozesse

LIDS kann Prozesse schuetzen deren Vater init(pid=1) ist, so dass man die Capability wie folgt konfiguriert (/etc/lids/lids.cap)
-29:CAP_INIT_KILL

Versteckte Prozesse

Man markiert den Prozess als HIDDEN (versteckt), so dass wenn der prozess aufstartet er nicht in der prozess tabelle gefunden wird, die jeder mit "ps" auflisten kann oder als Dateien in "/proc".

Bespiel,
	lidsadm -A -s /usr/sbin/httpd -t -o CAP_HIDDEN -j INHERIT

Schutz mit Capabilities.

Capabilities sind wie Privilegien die man einem Prozess geben kann. Ein Root Prozess hat alle Capabilities. Aber es existiert eine Tabelle mit Capabilities an die gebunden werden kann. In einem normalen Kernel, wenn man eine Capability von der Verknuepfung loest, kann sie niemand mehr wieder gebrauchen, bis wieder neu gestartet wird. (siehe http://www.netcom.com/~spoon/lcap fuer den normalen Gebrauch).

LIDS modifiziert dieses Verhalten um sie ein- und auszuschalten, wannimmer man will. Ein Zugriff zum /proc/sys/kernel/cap_bset ist abgefangen und sendet einen Sicherheits Alert. lidsadm macht den ganzen Job.

Man kann all die Capabilties in einem LIDS mit lidsadm auflisten und man sieht was die exakte Bedeutung von jedem Capability ist.

System Capability Konfiguration.

Der System Capability Wert ist in /etc/lids/lids.cap gespeichert. Man muss diese Datei editieren um sie an die Beduerfnisse anzupassen. Wir diskutieren hier zwei von ihnen,

  • CAP_SYS_RAWIO Mit diesem Capability koennen wir,
           erlauben von ioperm/iopl und /dev/port Zugriff, 
           erlauben von /dev/mem und /dev/kmem Zugriff und
           erlauben von raw block devices (/dev/[sh]d??) Zugriff
    Wenn wir dieses Capability deaktivieren, koennen wir alle Prozesse auf dem System so einstellen, dass sie keinen Zugriff zu dem Raw Devices, wie z.B. den lilo laufen zu lassen.

    Aber manche Prozesse brauchen dieses Capability um laufen zu koennen, wie z.B. XF86_SVGA. In diesem Fall kann man das Programm in die Ausnahmeliste wenn man den Kernel kompiliert reintun.

  • CAP_NET_ADMIN Dieses Capability bekommt folgende Eigenschaft,
    Interface Konfiguration
    Administration einer IP Firewall, masquerading und Accounting
    Setzen von Debug Optionen auf Sockets
    Modifikationen der Routing Tabellen
    Setzen von zufaelligen Prozessen / Prozess Gruppen Zugehoerigkeiten auf Sockets
    Binden an irgendein beliebige Adresse fuer einen transparenten Proxy
    Setzen von TOS (type of service)
    Setzen von Promiscuous Mode
    Löschen der Treiber Statistiken
    Multicasting
    Lese/Schreiben von Geraete-spezifischen Registern
    Fuer diesele weise, sollte man es nicht erlauben Netzwerk Konfigurationen zu verändern. Wenn man es ausschaltet, die Firewall Regeln werden nicht geaendert.

Konfigurieren der lids.cap.

Man kann eine Capability aktivieren indem man ein "+" vor den Capability Namen setz oder ein "-" schreibt um die Capability zu deaktivieren.


### 0: In a system with the _POSIX_CHOWN_RESTRICTED option defined, this overrides the restriction
### 0: of changing file ownership and group ownership.
#
-0:CAP_CHOWN

### 1: Override all DAC access, including ACL execute access if _POSIX_ACL is defined. Excluding
### 1: DAC access covered by CAP_LINUX_IMMUTABLE.
#
+1:CAP_DAC_OVERRIDE
Das obige Beispiel ist um CAP_CHOWN zu deaktivieren(-) und CAP_DAC_OVERRIDE(+) zu aktivieren. Man sollte überpruefen ob das File (lids.cap) um zu ueberpruefen welche Capability man benuetzen will und welche nicht.

Kennzeichnen von einzelnen Prozessen mit Capabilities

Man kann einem Prozess sagen, dass er mit mit aktivierten Capabilities laufen soll, wen sonst das Capability deaktiviert ist.

Z.B. kann man CAP_SYS_RAWIO als deaktiviert(-) in /etc/lids/lids.cap markieren. Aber man braucht immer noch den X Server welcher diese spezielle Capability braucht um zu starten. So kann man
# lidsadm -A -s /usr/X11R6/bin/XF86_SVGA -t -o CAP_SYS_RAWIO -j INHERIT
um den XF86_SVGA mit dem Capability CAP_SYS_RAWIO auszustatten waehrend andere Programme nicht an CAP_SYS_RAWIO rankommen.

Absiegeln des Kernels

Nach dem Kernelboot, die System Capabilities sind nicht aktiviert bevor man nicht den Kernel absiegelt. Man *MUSS* folgende linie in /etc/rc.d/rc.lcoal einfuegen. Bei RedHat Systemen oder anderen Systemen ist das an einem anderen Ort,
#/sbin/lidsadm -I

Netzwerk Sicherheit.

LIDS bietet einige Netzwerk Sicherheitserweiterungen.

Netzwerk Sicherheit mit Capabilities.

Mit diesem Capability, koennen wir die Netzwerk Sicherheit erhoehen. Wie z.B. Anti-Sniffing, kann man nicht an den Port binden der kleiner als 1024 ist oder koennen nicht die Firewall und Routing Tabellen aendern. Also was man empfiehlt ist, die Bedeutung jeder Capability sorgfaeltig zu studieren.

Scanner Detektor im Kernel

LIDS bietet ein Scan Detektor im Kernel an um rauszufinden wer unser System scanned. Der Scanner kann half-open Scans, SYN stealth port scan, Stealth FIN, Xmas, oder Null Scan usw. Tools wie nmap, satan koennen entdeckt werden durch den Detektor.

Es ist nueztlich wenn Raw Sockets deaktiviert ist. In diesem Fall, ein Userland Detektor basierend auf Sniffing wird nicht arbeiten. Der Detektor braucht keinen Socket, er wird sicherer als ein Userland Detektor. Wenn man dieses Feature will, sollte man die Option anwaehlen wenn man den Kernel kompiliert.

Intrusion Responsive System.

Wenn LIDS etwas entdeckt das gegen die Regeln verstoesst, kann es nach folgender Methode Antwort geben.

Loggen der Nachricht.

Wenn jemand die Regeln bricht, lids_security_log wird eine log message an klogd schicken. Das Logging hat auch die Möglichkeit um anti_logging_flood zu machen. Man es einstellen wenn man den Kernel kompiliert.

Loggen der Nachricht via einen Mailserver

Jetzt, LIDS hat ein paar Features um die Nachricht zu seinem Mail Account zu mailen. Man kann die Mailserver IP definieren, die out-coming Mail Adresse usw., in /etc/lids/lids.net, fuer mehr Details schau bitte in dieser Datei nach.

Hier ist ein Beispiel.

MAIL_SWITCH=1

# MAIL_RELAY=hex IP:port
# IP11.1 of the machine that will be directly connected by LIDS
# for relaying its mails. Port is usually 25, but who knows...
MAIL_RELAY=210.73.88.149:25

# MAIL_SOURCE=source machine :
# Name of the source machine, used for the ehlo identification.
# Note that a bad name here could make the mail relay refuse your
# mails.
MAIL_SOURCE=lids.chinacluster.com
In diesem Beispiel, der SMTP Server hat zu relayen an 210.73.88.149, auf Port 25. Der Mail Source wird fuer EHLO Identifikation benoetigt.

Auflegen der Konsole.

Wenn ein Benutzer die Regeln bricht, kann die aktuelle User Konsole runtergefahren werden.

Danke.

First of all, I want thank my dear kate , who always encourage me to write document of that, this document is dedicated to her.

I also want to thank Philippe Biond and Christophe Long who give many helps to the project. Without them, the project can not even develop to this step.

Many thanks must go to all the LIDS users, without their contribution and discussion, LIDS can not has so many great ideas.

More thanks will go here if you sent your contribution to the LIDS project, especially this documentation error corrections. Any suggestion is welcome!

The German translator congratulates the whole LIDS team for this great piece of software.