OpenSnitch: Lär dig hur denna Linux-programvägg fungerar

Linux-baserade operativsystem har ett stort antal skydd för att mildra attacker, förhindra eskalering av privilegier och andra mycket vanliga attacker mot detta operativsystem. Även om Linux är mycket säkert om det är korrekt konfigurerat, bör vi inte sluta ta hand om vårt operativsystem helt, eftersom hot fortsätter att existera. För närvarande finns det flera Linux-brandväggar tillgängliga, som vi kan installera och använda för att göra vårt Linux-system säkrare och tillförlitligare. Idag ska vi se ett av verktygen som ingår i brandväggar med en mycket lovande framtid, OpenSnitch.

Vad är OpenSnitch?

OpenSnitch är en brandvägg applikation skriven i Python för GNU / Linux-baserade operativsystem, så i princip är alla GNU / Linux-baserade operativsystem kompatibla med detta program, vilket ger extra säkerhet.

OpenSnitch

OpenSnitchs driftsmetod är att kontrollera alla Internetanslutningsförfrågningar från alla applikationer som har installerats i operativsystemet. Detta program gör det möjligt att skapa specifika regler för de olika applikationer som vi har installerat på vår dator eller Linux-server. Dessa regler tillåter eller nekar åtkomst till Internet när de begär det. Det är möjligt att, ett program som inte har skapat en regel, försöker komma åt Internet, i det ögonblicket visas en textruta som ger oss möjlighet att tillåta anslutningen eller neka den utan att behöva gå så specifikt till skapa en regel för den specifika applikationen.

Andra tillgängliga alternativ är möjligheten att spara beslutet som regel så att det förblir på listan nästa gång en specifik applikation kräver internetåtkomst. Vi kan tillämpa regeln på den exakta webbadressen till domänen som du försöker nå. . Vi kommer också att ha möjlighet att tillåta det tillfälligt, och att när vi startar om servern eller datorn försvinner denna tillagda regel.

Alla regler som vi skapar i OpenSnitch kommer att sparas som JSON-filer (typ av fil som endast OpenSnitch kan hantera), på detta sätt kan vi ändra dem senare om det behövs manuellt. OpenSnitch har ett mycket intuitivt grafiskt användargränssnitt, vilket gör att vi kan se vilka applikationer som har åtkomst till internet just nu, vilken IP-adress som används av utrustningen, vilken användare som använder både systemet och OpenSnitch själv och vilken port som används Begagnade. använder för allt det.

Ett annat mycket användbart alternativ som OpenSnitch har är att skapa en rapport i CSV-format med all information, här hittar vi brandväggskonfigurationen och alla sparade applikationer.

Installerar OpenSnitch på Linux

Vi kommer att fortsätta med installationen av OpenSnitch, eftersom du kan se alla kommandon som vi kommer att använda för installationen är avsedda för Debian eller ubuntu användare så, om du använder en annan distribution, måste du justera kommandona till den distribution som du har installerat på ditt team.

Först installerar vi allt som behövs så att OpenSnitch kan fungera, inklusive Go och även Git, båda är helt nödvändiga för rätt installation, eftersom vi inte har Opensnitch i de officiella förvaren för de olika Linux-distributionerna. Hur kan det vara annorlunda, vi måste logga in som root i vårt operativsystem eller utföra kommandot "sudo" framför installationskommandot genom förvaren. Vår rekommendation, eftersom vi kommer att behöva utföra flera steg och installera flera program, är att du loggar in med den populära "sudo su" för att redan ha superanvändarbehörigheter och inte behöver utföra "sudo" framför varje kommando.

sudo apt-get install protobuf-compiler libpcap-dev libnetfilter-queue-dev python3-pip golang git

gå och skaffa github.com/golang/protobuf/protoc-gen-go

gå och hämta -u github.com/golang/dep/cmd/dep

python3 -m pip install –användare grpcio -verktyg

Därefter måste vi klona OpenSnitch-förvaret. Vid start kommer installationen sannolikt att returnera ett meddelande om att inga Go-filer hittades. Vi kommer att ignorera detta meddelande, men om en annan misshandlar oss och säger att vi saknar git måste vi sluta installera det. Som standard är "GOPATH" in / home / user / go

go get github.com/evilsocket/opensnitch

cd $ GOPATH / src / github.com / evilsocket / opensnitch

Om $ GOPATH miljövariabeln inte är korrekt inställd kommer vi att få ett felmeddelande om att den här mappen inte hittades i kommandot ovan. För att lösa detta använder vi cd kommandot för att gå till platsen för mappen “/home/usuario/go/src/github.com/evilsocket/opensnitch” som fanns i serie i systeminstallationen. Nu installerar vi det på det typiska sättet:

make

sudo gör installationen

När de väl är installerade korrekt aktiverar vi det enligt följande:

sudo systemctl enable opensnitchd

sudo-tjänsten öppnar nitchd start

opensnitch-ui

Och vi kommer åt det grafiska användargränssnittet där vi kommer att ha all information och åtgärder som vi kan utföra med det här fantastiska programmet.

Använd erfarenhet av OpenSnitch

Detta program är verkligen användbart för att tillåta eller neka nätverkstrafiken för de olika applikationerna, webbläsare, FTP-klienter, program som Skype, Google Drive och alla program som behöver en internetanslutning för att fungera. Med OpenSnitch kan vi styra alla anslutningar i detalj och tillåta eller förneka allt på applikationsnivå, och inte på IP-adress eller portnivå, vilket är fallet med den populära brandväggen för iptables eller nftables som Debian-baserade operativsystem innehåller som standard.

Det är möjligt att vi i början har dussintals meddelanden som indikerar att en applikation har försökt komma åt Internet, detta är helt normalt först, eftersom alla applikationer måste vara specifikt tillåtna i programmet, därför kommer vi att ha bästa möjliga säkerhet eftersom den är konfigurerad i restriktivt läge. Som standard är allt blockerat, förutom vad som är specifikt tillåtet i programmets brandvägg.

Slutligen vill vi indikera att alla regler som skapas vid en viss tidpunkt enkelt kan exporteras i JSON-format, importeras till ett annat Linux-operativsystem, det vill säga vi kan utföra tester lokalt eller i en virtuell maskin och senare kopiera den här JSON-filen på servern i produktion, utan att ha några problem.

Tack vare OpenSnitchs goda funktion, kommer vi att kunna kontrollera alla åtkomst till alla program som vi har i vår utrustning. Om du vill ha en komplett brandvägg på applikationsnivå är den här programvaran idealisk för dig.