Ubuntu

Osquery installeren en gebruiken in Ubuntu

Osquery installeren en gebruiken in Ubuntu
Osquery is een open source en platformonafhankelijke softwarehulpprogramma dat kan worden gebruikt om een ​​besturingssysteem als relationele database te gebruiken. We kunnen gegevens van het besturingssysteem krijgen door op SQL gebaseerde query's uit te voeren. In deze blog zullen we zien hoe te installeren Osquery in Ubuntu en hoe het te gebruiken om gegevens van het besturingssysteem te krijgen.

Osquery installeren in Ubuntu

Osquery pakketten zijn niet beschikbaar in de standaard Ubuntu-repository, dus voordat we het installeren, moeten we de Osquery apt repository door de volgende opdracht in de terminal uit te voeren:.

[e-mail beveiligd]:~$ echo "deb [arch=amd64] https://pkg.osquery.io/deb deb main" |
sudo tee /etc/apt/sources.lijst.d/osquery.lijst

Nu zullen we de ondertekeningssleutel importeren door de volgende opdracht in de terminal uit te voeren:.

[e-mail beveiligd]:~$ sudo apt-key adv --keyserver keyserver.ubuntu.com
--recv-sleutels 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B

Na het importeren van de ondertekeningssleutel, werkt u nu uw systeem bij door de volgende opdracht in de terminal uit te voeren:.

[e-mail beveiligd]:~$ sudo apt-get update

Nu installeren Osquery door het volgende commando uit te voeren:

[e-mail beveiligd]:~$ sudo apt-get install osquery

Na installatie Osquery, nu moeten we controleren of het correct is geïnstalleerd door de volgende opdracht uit te voeren:

[e-mail beveiligd]:~$ osqueryi --versie

Als het de volgende uitvoer geeft, is het correct geïnstalleerd:

Osquery gebruiken

Nu na installatie zijn we klaar voor gebruik Osquery. Voer de volgende opdracht uit om naar de interactieve shell-prompt te gaan:

[e-mail beveiligd]:~$ osqueryi

Hulp krijgen

Nu kunnen we op SQL gebaseerde query's uitvoeren om gegevens van het besturingssysteem te krijgen. We kunnen hulp krijgen over Osquery door de volgende opdracht in de interactieve shell uit te voeren:.

osquery> .helpen

Alle tafels krijgen

Zoals eerder gezegd, Osquery stelt gegevens van het besturingssysteem bloot als een relationele database, zodat het alle gegevens in de vorm van tabellen heeft. We kunnen alle tabellen krijgen door de volgende opdracht in de interactieve shell uit te voeren:

osquery> .tafels

Zoals we kunnen zien, kunnen we door het bovenstaande commando uit te voeren een aantal tabellen krijgen. Nu kunnen we gegevens uit deze tabellen halen door op SQL gebaseerde query's uit te voeren.

Informatie over alle gebruikers weergeven

We kunnen alle informatie over gebruikers zien door de volgende opdracht in de interactieve shell uit te voeren:

osquery> SELECT * FROM gebruikers;

De bovenstaande opdracht geeft gid, uid, beschrijving enz. weer. van alle gebruikers

We kunnen ook alleen de relevante gegevens over gebruikers extraheren, we willen bijvoorbeeld alleen de gebruikers zien en geen andere informatie over gebruikers. Voer de volgende opdracht uit in de interactieve shell om de gebruikersnamen te krijgen:

osquery> SELECT gebruikersnaam FROM gebruikers;

De bovenstaande opdracht toont alle gebruikers in uw systeem

Op dezelfde manier kunnen we gebruikersnamen krijgen samen met de map waarin de gebruiker bestaat door de volgende opdracht uit te voeren:.

osquery> SELECT gebruikersnaam, directory FROM gebruikers;

Op dezelfde manier kunnen we zoveel velden opvragen als we willen door de vergelijkbare commando's uit te voeren.

We kunnen ook alle gegevens van specifieke gebruikers krijgen. We willen bijvoorbeeld alle informatie over de rootgebruiker krijgen. We kunnen alle informatie over de rootgebruiker krijgen door de volgende opdracht uit te voeren:.

osquery> SELECTEER * FROM gebruikers WAAR gebruikersnaam = "root";

We kunnen ook specifieke gegevens uit specifieke velden (kolommen) halen. We willen bijvoorbeeld de groeps-ID en gebruikersnaam van de rootgebruiker. Voer de volgende opdracht uit om deze gegevens te krijgen:.

osquery> SELECT gebruikersnaam, gid FROM gebruikers WHERE gebruikersnaam=”root”

Op deze manier kunnen we alles wat we willen van een tabel opvragen.

Alle processen weergeven

We kunnen de eerste vijf processen weergeven die in ubuntu worden uitgevoerd door de volgende opdracht in de interactieve shell uit te voeren:

osquery> SELECT * FROM processen LIMIT 5;

Omdat er veel processen in het systeem draaien, hebben we slechts vijf processen weergegeven met het trefwoord LIMIT.

We kunnen de proces-ID van een specifiek proces vinden, we willen bijvoorbeeld de proces-ID van mongodb vinden, dus we zullen de volgende opdracht in de interactieve shell uitvoeren

osquery> SELECT pid FROM processen WHERE name="mongod";

Versie van Ubuntu vinden

We kunnen de versie van ons Ubuntu-systeem vinden door de volgende opdracht in de interactieve shell uit te voeren:

osquery> SELECT * FROM os_version;

Het zal ons de versie van ons besturingssysteem laten zien

Netwerkinterfaces en IP-adressen controleren

We kunnen het IP-adres, het subnetmasker van netwerkinterfaces controleren door de volgende vraag in de interactieve shell uit te voeren:.

osquery> SELECT interface,adres,masker FROM interface_adressen
WAAR interface NIET ZOALS '%lo%';

Ingelogde gebruikers controleren

We kunnen ook ingelogde gebruikers op uw systeem controleren door gegevens op te vragen uit de tabel 'logged_in_users'. Voer de volgende opdracht uit om ingelogde gebruikers te vinden.

osquery> SELECT gebruiker, host, tijd VAN ingelogde_gebruikers WAAR tty NIET LIKE '-';

Systeemgeheugen controleren

We kunnen ook het totale geheugen, het vrije geheugen in de cache enz. controleren. door een op SQL gebaseerd commando uit te voeren in de interactieve shell. Voer de volgende opdracht uit om het totale geheugen te controleren:. Dit geeft ons het totale geheugen van het systeem in bytes.

osquery> SELECT memory_total FROM memory_info;

Voer de volgende query uit in de interactieve shell om het vrije geheugen van uw systeem te controleren:

osquery> SELECT memory_free FROM memory_info;

Wanneer we de bovenstaande opdracht uitvoeren, krijgen we vrij geheugen beschikbaar in ons systeem

We kunnen ook het cachegeheugen van het systeem controleren met behulp van de memory_info-tabel door de volgende query uit te voeren:.

osquery> selecteer cache uit memory_info;

De groepen weergeven

We kunnen alle groepen in uw systeem vinden door de volgende query uit te voeren in de interactieve shell:

osquery> SELECT * UIT groepen;

Luisterpoorten weergeven

We kunnen alle luisterpoorten van ons systeem weergeven door de volgende opdracht in de interactieve shell uit te voeren:

osquery> SELECT * FROM listen_ports;

We kunnen ook controleren of een poort luistert of niet door de volgende opdracht in de interactieve shell uit te voeren:

osquery> SELECT poort, adres FROM listen_ports WHERE port=27017;

Dit geeft ons output zoals weergegeven in de volgende afbeelding:

Conclusie

Osquery is een zeer nuttig softwarehulpprogramma om informatie over uw systeem te vinden. Als u al op de hoogte bent van op SQL gebaseerde query's, dan is het heel gemakkelijk voor u te gebruiken of als u niet op de hoogte bent van op SQL gebaseerde query's, dan heb ik mijn best gedaan om u enkele belangrijke query's te laten zien die handig zijn om gegevens te vinden. U kunt alle soorten gegevens uit elke tabel vinden door vergelijkbare zoekopdrachten uit te voeren.

Beste Linux-distributies voor gaming in 2021
Het Linux-besturingssysteem heeft een lange weg afgelegd van zijn oorspronkelijke, eenvoudige, servergebaseerde uiterlijk. Dit besturingssysteem is de...
Hoe u uw gamesessie op Linux kunt vastleggen en streamen
In het verleden werd het spelen van games alleen als een hobby beschouwd, maar met de tijd zag de game-industrie een enorme groei in termen van techno...
Beste spellen om te spelen met handtracking
Oculus Quest introduceerde onlangs het geweldige idee van handtracking zonder controllers. Met een steeds toenemend aantal games en activiteiten die f...