Workshop: Systemhärtung mit Lynis

Pingeliger Prüfer

Um ein System gegen Angriffe abzudichten, muss ein Administrator zahlreiche Komponenten und Konfigurationsdateien auf Lücken abklopfen. Bei dieser Sisyphusarbeit greift ihm das kleine Werkzeug Lynis unter die Arme. Es spürt nicht nur Probleme auf, sondern gibt auch noch Ratschläge zur Abhilfe.
Das Thema 'Servervirtualisierung & Cloud' steht auf der Agenda des IT-Administrator im Mai. So lesen Sie unter anderem, wie einfach sich OpenStack mit Mirantis ... (mehr)

Nach seinem Start führt Lynis [1] mehrere Hundert Einzeltests durch. Bei jedem prüft die Software die Sicherheit einer ganz bestimmten Komponente. Unter anderem nimmt sie die Konfigurationsdateien der installierten Programme unter die Lupe, wirft einen Blick auf die Firewall-Regeln, findet abgelaufene SSL-Zertifikate und meldet Benutzeraccounts ohne Passwort. Laut der hinter Lynis stehenden Firma CISOfy folgt das Tool dabei allgemeinen Sicherheitsrichtlinien und -Standards.

Am Ende aller Prüfungen spuckt Lynis einen Testbericht aus. In ihm weist das Werkzeug auf die gefundenen Probleme hin und unterbreitet dem Administrator Vorschläge, wie er das System weiter absichern kann. Lynis deckt somit Sicherheitsprobleme auf, kann sie aber nicht selbständig beheben, die Interpretation der Ergebnisse bleibt dem Administrator überlassen. CISOfy sieht den Sinn seines Werkzeugs vor allem in Sicherheitsauditings, bei der Schwachstellenanalyse (Vulnerability Scanning) und als ersten Schritt bei der Absicherung eines Systems (System Hardening).

Lynis lässt sich direkt starten, eine Installation ist nicht notwendig. Administratoren können es folglich leicht in die Werkzeugsammlung auf einem Notfall-USB-Stick aufnehmen. Der Funktionsumfang lässt sich zudem über Plug-ins erweitern. Neben Linux läuft Lynis auch auf anderen Unix-Systemen einschließlich OS X.

Lizenzwahl

Lynis steht unter der GPL v3 und lässt sich somit kostenlos in Unternehmen einsetzen. Ergänzend bietet CISOfy eine kommerzielle Fassung namens Lynis Enterprise an, die Lynis um zusätzliche Funktionen und Tools erweitert. Dazu zählt unter anderem eine Lynis Collector getaufte Komponente, die Prüfergebnisse von mehreren Rechnern einsammelt und dann einer zentralen Managementkonsole zuführt. Des Weiteren liefert Lynis Enterprise etwas umfangreichere Reports. Unter anderem erhalten Administratoren eine Einschätzung, welche ihrer Rechner besonders gefährdet sind. Abschließend bietet CISOfy auch noch Support, auf den man bei der kostenlosen Variante verzichten muss. Lynis Enterprise gibt es als Abonnement in mehreren Ausbaustufen. Pro Monat und System fallen in der einfachsten Variante 1,50 US-Dollar an. Wer den vollen Funktionsumfang benötigt, zahlt 3 US-Dollar pro System und Monat. Weitere Informationen zu Lynis Enterprise finden Interessenten unter [2].

Installation

Viele Linux-Distributionen halten Lynis in ihren Repositories vor, in der Regel im Paket "lynis". Meist handelt es sich dabei jedoch um eine ältere Version des Tools. Der Paketmanager von Ubuntu 14.10 bietet beispielsweise noch die Version 1.5.5 an, zum Redaktionsschluss aktuell war jedoch bereits Lynis 1.6.4. Da neuere Versionen unter Umständen zusätzliche Probleme aufdecken, sollten Administratoren möglichst immer zur aktuellen Fassung von der Lynis-Homepage greifen. Wer das Werkzeug längerfristig nutzen möchte, muss es dann aber auch selbst auf dem aktuellen Stand halten.

Sobald das ".tar.gz"-Archiv mit Lynis auf der Festplatte weilt, prüfen Sie am besten dessen Authentizität über die SHA1- oder SHA256-Prüfsumme. Unter Linux klappt Letzteres etwa per:

sha256sum lynis-version.tar.gz

Den generierten Hash vergleichen Sie mit den von CISOfy auf der Download-Seite [3] im Kasten "File Integrity Information" abgelegten Werten. Nur wenn die Prüfsummen übereinstimmen, liegt ein unverändertes Archiv vor. Wer auf Nummer sicher gehen möchte, lädt sich noch die "digital signature" herunter. Sie findet sich ebenfalls im Kasten "File Integrity Information". Mit GnuPG lässt sich dann die Quelle verifizieren:

wget https://cisofy.com/files/cisofy-software.pub
gpg --import cisofy-software.pub
gpg --list-keys --fingerprint

Statt "wget" können Nutzer von Mac OS X "curl" verwenden:

curl https://cisofy.com/files/cisofy-software.pub -o cisofy-software.pub

Der beim letzten Befehl ausgespuckte Fingerabdruck (Fingerprint) für CISOfy sollte jetzt identisch mit demjenigen sein, den das folgende Kommando anzeigt:

gpg --verify lynis-1.6.4.tar.gz.asc lynis-1.6.4.tar.gz

Die Versionsnummern sind gegebenenfalls anzupassen. Des Weiteren muss der Fingerprint mit dem in der offiziellen Dokumentation abgedruckten vollständig übereinstimmen [4].

Rechte vor Inbetriebnahme testen

Passen Prüfsumme und Fingerprint, können Sie Lynis endlich in Betrieb nehmen. Dazu genügt es, das Archiv zu entpacken und dann das Skript "lynis" mit dem Parameter "-c" zu starten: »./lynis -c.« Der Parameter weist das Tool an, sämtliche Tests durchzuführen. Ohne ihn würde Lynis nur eine Hilfe anzeigen, mit »./lynis --view-manpage« bringt der Administrator die

recht knapp gehaltene Manpage auf den Schirm. Ob die aktuelle Version von Lynis zum Einsatz kommt, verrät ein Aufruf von »./lynis --check-update« .

Um alle Ecken des Systems inspizieren zu können, benötigt Lynis Root- beziehungsweise Administratorrechte. Starten Sie es als normaler Nutzer, deckt das Werkzeug unter Umständen nicht alle Probleme auf. In jedem Fall benötigt Lynis Schreibrechte für die Verzeichnisse »/tmp« und »/var/log« . In Letztgenanntem legt das Tool seine Prüfberichte ab.

Nach seinem Start berichtet Lynis noch einmal, mit welchen Rechten es läuft, ob es alle Tests durchführen kann und ob es eine Log-Datei unter »/var/log« ablegen kann (Bild 1). Sind Sie mit dieser Ausgangssituation einverstanden, starten Sie den Testlauf mit der Eingabetaste.

Bild 1: Hier hat ein normaler Benutzer Lynis gestartet, wodurch das Tool einige Tests nicht ausführen und mangels Schreibrechte keine Log-Datei unter "/var/log" anlegen kann.

Unter Umständen beschwert sich Lynis über falsche Dateirechte beziehungsweise -besitzer. Dies müssen Sie mit den von Lynis angezeigten Kommandos beheben, erst danach lässt sich das Werkzeug einsetzen. Unter Linux korrigiert der folgende Befehle alle angeprangerten Besitzverhältnisse auf einmal:

sudo chown root:root ./include/*

Sind Lynis die Besitzer genehm, fasst es noch einmal die Situation zusammen. Unter anderem nennt es seine Programmversion, das Betriebssystem und den Speicherort der Log- und Report-Dateien. Landen die beiden Letztgenannten im Mülleimer »/dev/null« , darf Lynis nicht in das Verzeichnis »/var/log« schreiben. Derzeit gibt es keine Möglichkeit, einen anderen Speicherort vorzugeben, Nutzer dürfen lediglich das Anlegen der Log-Datei über den Parameter "--no-log" unterbinden.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023