Eine der größten Stärken von Osquery ist seine einfache Installation. Für die gängigen Linux-Distributionen stehen ebenso fertige Installationspakete bereit wie für alle relevanten Windows-Versionen. Für macOS existiert ein Installer in Form einer PKG-Datei, die alle nötigen Dateien mitbringt. Die einfache Möglichkeit, Osquery zu installieren, kommt nicht von ungefähr: Wer Osquery für das Monitoring großer Server-Flotten nutzt, muss das Programm ganz zwangsläufig in ein Automationsschema integrieren, sodass Osquery etwa direkt von Ansible installiert werden kann. Diese Anforderung erfüllt das Werkzeug mit Leichtigkeit. Eine Übersicht der verfügbaren Linux-Pakete, Windows-Dateien sowie macOS-Installer findet sich in [1].
Ist Osquery installiert, stehen dem Admin mehrere Wege offen, um an die Daten für sein Monitoring zu kommen. Die einfachste Variante ist die Verwendung der interaktiven Osquery-Shell "osqueryi". Es genügt, diese in der Kommandozeile aufzurufen, wobei es hier einen Fallstrick gibt: Soll "osqueryi" auch Daten vom System anzeigen, zu deren Erlangung die Rechte von "root" nötig sind, muss das Programm auch als "root" ausgeführt werden. Das genannte Beispiel mit der "sudo"-Nutzung der vergangenen Stunden auf macOS wäre ein solcher Fall.
Viel mehr zu beachten gibt es allerdings nicht: Sobald "osqueryi" installiert ist, lässt es sich auch benutzen – damit es funktioniert, muss auf dem System kein zusätzlicher Dienst laufen. Der Clou: Die "osqueryi"-Shell setzt für Abfragen auf ein SQL-ähnliches Format. Um herauszufinden, wer auf macOS in jüngerer Vergangenheit "sudo" genutzt hat, eignet sich etwa dieser Befehl:
SELECT time, message FROM asl WHERE facility = 'authpriv' AND sender = 'sudo';
Auf allen unterstützten Betriebssystemen lässt sich die Ansicht der gerade auf dem System eingeloggten Nutzer so auf den Bildschirm holen:
SELECT * FROM logged_in_users;
Eine beispielhafte Antwort zeigt Bild 2.