Spass mit dem Syslogd

  1. Fassung Februar 2002, Florian Heigl

Heute ist mein produktiver Tag, genauer genommen zumindest mal die nächsten 30 Minuten davon :) An produktiven Tagen fange ich manchmal richtig sinnvolle Dinge an, und diese eine Sache darunter harrt schon lange dieser Minuten...

Im folgenden ein kleiner Abriss meiner Gedanken zu einer sicheren Konfiguration des syslogd. Einen Grossteil dieser Arbeit köntte man sich durch den Einsatz neuerer Software, wie z.B. syslog-ng ersparen, dies kommt momentan in meiner Umgebung nicht in Frage, da mein Netz ja doch 'relativ' heterogen ist, und ich mir den Aufwand der Portierung auf die einzelnen OSse erstmal ersparen ersparen möte, wo der normale syslogger ja letzendes überall verfügbar ist.

Was im folgenden skizziert ist, mag übertrieben scheinen, aber ich möchte das pricipal of last resort soweit machbar ausreizen, und logging, nicht ordentlich gesichert, ist schlichtweg sinnfrei.

Ziele:


  1. Der Loghost: Ausstattung


    Als allererstes gilt es ein System festzumachen, welches dann zum loghost werden soll. Die Hardwareanforderungen sind ässerst moderat, ich nutze bei mir eine Sparcstation 1, in etwa wäre das wohl ein 486 DX/50. 8MB RAM reichen eigentlich locker, dies ist also ein typischer Job für die Reste im Keller. Generell würde ich aber dringendst eben entweder zu einer steinalten Workstation oder aber zu einem 486er aus 'es gibt schon PCI' - Zeiten, da man es ja eigentlich hier darum geht, Software einzurichten, und nicht darum, irgendwelche Hardwarekonflikte auszumerzen. Falls man sich die Option syslog-ng offenhalten möchte, sollte das Ding auf jeden Fall eine FPU haben, also nicht gerade einen sx33 wählen. Der reicht dann zwar für das, was ich hier beschreibe, wird aber später hoffnungslos untergehen, wenn er mit IDEA arbeiten soll. (Meine Sparc hat irgendwie 20 Minuten gebraucht, um ihren ssh-hostkey zu berechnen!!!

    Softwareseitig nutze ich OpenBSD (2.8), welches sich für Securitymässiges doch arg anbietet. Letztlich egal, welches BSD, von Linux würde ich aber dringend abraten. ( Warum? mir fehlt: kern.securelevel=2 und chflags sappend /var/log/* ) Der Rest in Sachen Software: IP will man unterstützen, und eine aktuelle syslog Version installieren, und eine Firewall. Alles weitere, was über ein Basissystem hinausgeht, hat auf dem loghost nix verloren. Achja - - - man will /var/log schon als eigene, freizügig dimensionierte Partition halten.

  2. Der Loghost: Konfiguration:


    Ersteinmal will der syslogd erfahren, dass er auch fremde Pakete akzeptiert! Dazu ist es nötig, die rc.config bei Syslogd-parameters um den Eintrag "-u" zu erweitern. ein kill -SIGHUP auf die PID des Sysloggers reicht hierfüer schon aus. Dann gilt es noch Remotezugänge zum System komplett abzuschaffen, d.h. /etc/inetd.conf so zu bearbeiten, dass alles ausser syslog deaktiviert ist, effektiv nicht auskommentieren, sondern löschen. ssh gehört in der /etc/rc.config ebenso deaktiviert. ein chflags schg hier und da tut den Rest :) .Nach dieser Aktion und einem Reboot sollte ein netstat -na |grep LISTEN nur noch eines anzeigen: syslog! Ansonsten bitte weiter abschalten, wie's nur geht. Damit haben wir einen einsatzbereiten Loghost...

  3. Die Clients: Konfiguration Hosts / syslog.conf

    ...auf welchen noch keiner unserer Rechner loggt. Ergo bearbeiten wir die Clients jetzt noch ein bisschen: Als erstes tragen wir die IP des loghosts in die /etc/hosts ein. Das könnte wie folgt aussehen:

    127.0.0.1 localhost.obstsal.at localhost

    192.168.0.3 meinrechner.obstsal.at meinrechner

    192.168.0.5 hostnamevonloghost.obstsal.at loghost



    Um jetzt das remote Logging zu nutzen, reicht ein einfacher Eintrag in die Konfigurationsdatei /etc/syslog.conf :

    *.* @loghost

    *.* Bedeutet, dass die Meldungen ALLER Prozesse, welche auf syslogd loggen, und jeden 'Informationsgrades' dorthin gelogged werden sollen. Übermässig viel spricht da nicht gegen, da wir ja heute alle grosse Festplatten haben, und der newsyslogd normalerweise f¨r Ordnung sorgt.

  4. Ich bin angekommen :P Ciao,
    Florian.

    mailto:Florian.NOSPAM@m4f.net