Bygg en egen nätverkstapp med en Raspberry Pi

Att köpa en nätverkstapp från företag såsom Ixia (tidigare Net Optics), Gigamon eller Datacom Systems kan vara kostsamt. Vissa switchar stödjer även span-portar som möjliggör tappning av datatrafik och den som är riktigt snål kan använda en gammal hubb.

På eBay går det att hitta begagnade nätverkstappar aningens billigare men frakten kan ibland bli en dyr historia.

Därför kan ett val vara att bygga en egen nätverkstapp av en Raspberry Pi som du ansluter ett extra nätverkskort till samt hårddisk till, ungefär enligt följande bild:

På ovan setup så ser du en svart Raspberry Pi med två nätverkskablar anslutna. Det ena i ett USB-nätverkskort och den andra i inbyggda nätverksporten. Även har jag anslutit en extern hårddisk där jag lagrar ner pcap-filer.

Installation

Installera Raspbian på ett SD-kort som du ansluter och startar upp din Raspberry Pi på. Hur du installerar Raspbian är utanför denna guide men raspberrypi.org har en bra guide.

När du sedan anslutit via ssh och sett till att din extra hårddisk fungerar så rekommenderar jag att använda Luks eller liknande för att kryptera hårddisken där du kommer att lagra dina pcap-filer.

Du måste även kontrollera att insida och utsida av det nätverket du vill tappa av har anslutning till din Raspberry Pi. ifconfig, mii-tool samt tcpdump är tre bra kommandon för att kontrollera detta.

För att trafik ska flöda fritt mellan de två interfacen så måste du installera paketet bridge-utils genom att skriva:

# apt install bridge-utils

Sedan skapar du upp en brygga på följande sätt:

# brctl addbr br0
# brctl addif br0 eth0
# brctl addif br0 eth1

Och för att inställningarna ska sparas och aktiveras vid en omstart så bör du lägga in följande i filen /etc/network/interfaces

auto br0
  iface br0 inet manual
  bridge_ports eth0 eth1
  bridge_stp off
  bridge_fd 0
  bridge_maxwait 0

Toppen, då var vi nästan färdiga. Det sista men viktigaste steget är att skriva ner all trafikdata som flödar genom vår Raspberry Pi till disk.

Verifiera att hårddiskrypteringen ser bra ut för den externa disken:

Sedan monterar vi på disken och ställer oss i rätt katalog där vi vill skriva ner pcap-filer:

mkdir /u0/pcap/
cd /u0/pcap/
nohup tcpdump -i eth0 -G 86400 -w 'trace_%Y-%m-%d_%H:%M:%S.pcap' -Z pi &

Och efter ett tag så har du förhoppningsvis en bra samling med filer som du kan börja att analysera med diverse verktyg:

Rekommenderat är dock att du gör analys på ett fristående system. Är du extra paranoid kan du även begränsa utgående anslutningar från nätverkstappen.

Prestanda

När jag testar med Bredbandskollen och kör före och efter tester så är skillnaden mycket liten. Ungefär 1% skillnad ser jag i resultatet när jag mäter på en förbindelse på 100 Mbit/s.

Detta är testat med en Raspberry Pi 3 modell b.

Jonas Lejon

Om Jonas Lejon

En av sveriges främsta cybersäkerhetsexperter med nästan 20 års erfarenhet inom området och en bakgrund från FRA och Försvarsmakten. Kontakta mig gärna på telefonnummer 010 1018099 eller [email protected] om Er organisation behöver hjälp med cybersäkerhet. LinkedIn Twitter

Skriv en kommentar

Du kan använda följande HTML HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>