Logfiles? Brauch ich nicht! (de)

Logfiles? Brauch ich nicht! (de)

This is my Slidedeck from the Open Source Workshop Deutsche Bahn - on 2016-11-24 in Frankfurt am Main.

8bf1b7d831c3818f6f3997e260f9ad3d?s=128

Jan Doberstein

November 24, 2016
Tweet

Transcript

  1. Logfiles? Brauch ich nicht!

  2. Jan Doberstein ( @jalogisch ) 17+ Jahre IT Administrator Support

    Engineer bei Graylog ( @graylog2 )
  3. Warum sollte ich vergänglichen und unnützen Daten Aufmerksamkeit schenken?

  4. Was sind Logs?

  5. – Wikipedia „Eine Logdatei enthält das automatisch geführte Protokoll aller

    oder bestimmter Aktionen von Prozessen auf einem Computersystem.“
  6. – Wikipedia „ Außer dem Betriebssystem selbst schreiben meist Hintergrundprogramme

    (z. B. ein E-Mail- Server, ein Proxyserver und anderes) in Logdateien, um Aktionsmeldungen, Fehlermeldungen und Hinweise persistent (dauernd) oder temporär verfügbar zu halten. Ähnliches gilt für Installationsprogramme, Firewalls, Virenscanner und dergleichen. “
  7. Logs geben die Möglichkeit Dinge zu einem späteren Zeitpunkt nachzuvollziehen

  8. https://twitter.com/janl/status/785456374566223872

  9. Was sind Logs? (ein Beispiel)

  10. Aug 16 18:18:19 d8.jalogis.ch sshd[26944]: fatal: Unable to negotiate a

    key exchange method [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: reverse mapping checking getaddrinfo for hn.kd.ny.adsl [222.138.139.252] failed - POSSIBLE BREAK-IN ATTEMPT! Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Invalid user admin from 222.138.139.252 Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: input_userauth_request: invalid user admin [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Connection closed by 222.138.139.252 [preauth] Aug 16 18:19:16 d8.jalogis.ch sshd[26948]: fatal: Unable to negotiate a key exchange method [preauth]
  11. None
  12. ohne Logs ist schlecht.

  13. lokales Sammeln • Linux ( syslog / journald ) •

    Windows ( Eventlog )
  14. lokales Sammeln root@d8:/var/log# grep -v "fatal: Unable to negotiate a

    key exchange method" auth.log | grep -v „pam_unix(cron:session)“ Aug 16 18:12:18 d8.jalogis.ch sshd[26930]: Connection closed by 45.114.50.54 [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: reverse mapping checking getaddrinfo for hn.kd.ny.adsl [222.138.139.252] failed - POSSIBLE BREAK- IN ATTEMPT! Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Invalid user admin from 222.138.139.252 Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: input_userauth_request: invalid user admin [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Connection closed by 222.138.139.252 [preauth]
  15. lokales Sammeln root@d8:~# grep -v 'pam_uni(cron:session)' /var/ log/auth.log | grep

    'fatal: Unable to negotiate a key exchange method' | wc -l 3082
  16. None
  17. lokales Sammeln • Ist der Host nicht erreichbar, gibt es

    kein Log • Lokale Logs erlauben es nicht, dezentrale Ereignisse zu verfolgen • Kompromittierte Systeme sind manipuliert
  18. (simples) zentrales Sammeln • OS Grundausstattung • geringer Aufwand Syslog

  19. (simples) zentrales Sammeln

  20. None
  21. Datenbank & Interface

  22. Elasticsearch ist eine dokumentbasierte Datenbank die auf Apache Lucene aufsetzt

    und eine vollständige REST API bietet.
  23. > host:d8.jalogis.ch AND programname:sshd AND message:"*invalid user*"

  24. None
  25. • Anreicherung • Filterung • Normalisierung

  26. zentrales Sammeln & Anreichern

  27. Aug 16 18:18:19 d8.jalogis.ch sshd[26944]: fatal: Unable to negotiate a

    key exchange method [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: reverse mapping checking getaddrinfo for hn.kd.ny.adsl [222.138.139.252] failed - POSSIBLE BREAK-IN ATTEMPT! Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Invalid user admin from 222.138.139.252 Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: input_userauth_request: invalid user admin [preauth] Aug 16 18:18:39 d8.jalogis.ch sshd[26946]: Connection closed by 222.138.139.252 [preauth] Aug 16 18:19:16 d8.jalogis.ch sshd[26948]: fatal: Unable to negotiate a key exchange method [preauth]
  28. None
  29. None
  30. None
  31. None
  32. Datenbank & Interface

  33. None
  34. Syslog

  35. Syslog App Hardware

  36. App GELF / JSON Logfile Shipper

  37. App RAW Hardware Syslog

  38. None
  39. None
  40. Komplexes Sammeln • andere Transportwege und Protokolle • Warteschlangen (queue)

    • Paralleles Bearbeiten
  41. None
  42. None
  43. Einheitliche Betrachtung • verminderte Zugriffsrechte auf Server • schneller und

    einfacher Zugriff auf Informationen • einfache Administration
  44. None
  45. Fragen? (Live Demo gerne nachher …) @jalogisch @graylog2 http://graylog.org http://elastic.co

  46. None
  47. None