Artikel top billede

(Foto: Computerworld)

Guide: Sådan sikrer du dit netværk med IPFire

Alt for ofte tager vi vores netværkssikkerhed for givet. Men at overlade din internetforbindelses integritet til routeren tangerer det glade vanvid. Den enhed er sandsynligvis udvalgt af din internetudbyder, et firma, der lever af at ramme de lavest mulige priser.

Af Torben Okholm, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Det drejer sig om hardware, der sandsynligvis ikke er blevet opdateret i evigheder, og som rummer de dertil hørende sårbarheder og programfejl i en maskine, der knap har overlevet port-scanninger og hackerondskab i årenes løb. Der er imidlertid en god nyhed: Det er slet ikke svært at installere en professionel netværksbeskyttelse.

Linux-distroen IPFire kan klare opgaven glimrende, forudsat at du har den fornødne hardware. Der kræves ikke de helt vilde specifikationer – en tidlig Pentium er nok – men du skal bruge mindst to ethernet-porte. En billig USB-ethernet-dongle kan fungere som en ekstra port. Det virkede i hvert fald for os.

1 Hent materialerne

Hvad er det i grunden, vi foretager os her? Vi bygger en netværksløsning, og det vil sige et stykke hardware, der er knyttet til ens netværk og udfører specifikke opgaver. Din eksisterende router kunne for eksempel agere som en netværksløsning. En IPFire-boks har imidlertid ikke kun en opgave. Den er først og fremmest en firewall, men vi kan få den til at gøre meget mere.

Den kan således styre DNS og DHCP for dit netværk. Når du installerer den, skal du bruge en dedikeret pc, der er kabelforbundet mellem din internet-forbindelse og resten af enhederne på dit netværk. Du får ikke brug for mus eller tastatur, når det hele er ordnet, men når du skal forbinde det hele, skal du have mindst to ethernet-porte og den relevante version af IPFire-distributionen fra www.ipfire.org.

Sørg for, at du udvider download-mulighederne [Billede A] på sitet, for vi vil foreslå, at du installerer den på en USB-nøgle (hent diskbillede-versionen i stedet for ISO-installeren). Hvis du kører på ældre hardware (vi har støvet en ti år gammel Intel Atom-netbook af), skal du måske bruge 586- eller ARM-versioner i stedet for den X64, der bliver tilbudt som standard. Bemærk, at et korrekt konfigureret par VirtualBox-virtuelle maskiner er tilstrækkeligt til at teste IPFire, hvis du ikke har den fornødne hardware. Vi overlader trygt den bestemte konfiguration som en opgave til dig.

Billede A

2 I gang med installationen

Installation af IPFire er nemmere, end man skulle tro. Udpak den gzippede .img.gz-fil med for eksempel 7-zip eller WinRAR, og skriv derefter den heraf følgende .img-fil til et USB-drev eller et SD-kort ved hjælp af Win32DiskImager (https://sourceforge.net/projects/win32diskimager), idet du sikrer dig, at du skriver til det rigtige flytbare drev.

Det er ikke nogen umådelig besværlig proces, og eftersom IPFire normalt kører sig selv fra en ram-disk, er der ingen grund til at bekymre sig for, at omfattende skrivninger finder sted på ssd-medier. Hvis du imidlertid hellere vil installere IPFire direkte, kan du gøre det ved at bruge ISO-billedet i stedet. Boot fra det medie, som IPFire er installeret på, og så kan vi begynde den indledende konfiguration. Vælg dit tastatur og din tidszone.

Giv din maskine et værtsnavn, eller hold fast ved standardnavnet. Du skal også levere et domænenavn. Hvis du allerede kører et domæne på dit netværk, skal du huske at skrive det samme navn her. Det ville ikke give megen mening at køre IPFire på et separat domæne. Skriv nu et rod-kodeord (og det skal være et godt et, fordi IPFire formodes at være din vigtigste forsvarslinje), og tilføj et kodeord til admin-brugeren, som også har rettigheder til at bruge dets webinterface.

3 Netværksopsætning

Konfiguration af IPFires indledende netværksfunktioner [Billede B] er sandt at sige en anelse skræmmende, men der er ingen grund til bekymring. Vælg “Green + Red” under menuen “Network configuration type” (i “Zone-begrænsninger” til højre kan du se, hvad de forskellige farver betyder). Brug menuen “Drivers and card assignments” til at allokere en af dine ethernet-porte til den røde internetzone og den anden til din grønne zone, der er hjemsted for dit lokale netværk.

Hvis du har et identisk par kort, skal du blot vælge det ene og være forberedt på at skifte kabler mellem portene, hvis IPFire ikke ser ud til at virke. Gå til menuen “Address settings”, og giv den ethernet-adapter, der er tilsluttet din grønne zone, en ip fra det lokale område. Vi vil anbefale noget i retning af 192.168.1.1, men muligheder som 10.x.x.x og 172.16.x.x er lige så anvendelige. Det er på denne adresse, du senere vil tilgå IPFires webinterface. Skriv den derfor ned.

Billede B

Til dit røde interface antager vi, at du bruger en bredbåndsforbindelse med et modem, der ikke kræver specielle adgangsprivilegier. I dette tilfælde vælger du blot “DHCP” [Billede C], så klarer IPFire resten. Til sidst skal vi konfigurere “DNS and gateway settings.” Man kan eventuelt indsætte en offentlig DNS-server her, men det kan betyde et ekstra lag af integritet for din forbindelse, og DHCP-serveren bestemmer, hvilke adresser der bliver gjort tilgængelige for enheder på dit netværk. Sørg for, at din IPFire-boks er indstillet som det primære, og at alt kører på det samme undernet.

Billede C

4 Vi nærmer os

Så må vi være klar, ikke? Ikke helt. Hvis du slutter IPFire til en kombineret modem/router, skal du sørge for, at den kører i router-tilstand. Trådløs adgang før din IPFire-installation går helt udenom, og det var jo ikke meningen. Du skal også frakoble DHCP på eventuelle trådløse routere, som du sætter ind i den grønne zone (vi vil have IPFire til at lange adresserne ud).

Og her er et trick, som vi ikke lærte, før vi havde knaldet hovedet imod det i timevis: Lad være med at slutte din grønne zone-port til “internet”-porten på din trådløse router. Slut den i stedet til en af dine andre porte. Det er muligt, at routeren klager over ikke at kunne få forbindelse til internettet, men ifølge vores erfaring betyder det ikke spor, hvis den kun skal bruges til at generere trådløse forbindelser.

zone-begrænsninger

Rød: Alt, hvad der ikke er under IPFires kontrol, er placeret i den røde zone. Dette er dens input, formentlig kommende direkte fra internettet. Hver IPFire-opsætning omfatter en rød zone; hvis den ikke gjorde det, ville det slet ikke give mening at bruge IPFire.

Grøn: Dit kabelnetværk hører til den grønne zone. Dette område er til enheder, der hører under IPFires direkte beskyttelse, idet de er genstande for dine firewallregler og andre begrænsninger. Det burde i teorien være et sikkert netværk.

Orange: Et valgfrit DMZ (demilitariseret zone). Hvis du har servere, som du vil gøre web-tilgængelige og unddrage bestemte netværksregler, skal du lægge dem i den orange zone.

Blå: Her lægger du trådløse enheder. Men husk, at du skal bruge speciel trådløs hardware, og du skal eksplicit give tilladelse til alle enheder, der har forbindelse til den blå zone. Det kan være bedre for hjemmebrugere at tørre dem af på grøn.

5 Ansigtet udadtil

Hvis alt er vel, burde IPFire nu være oppe at køre. Genstart hele historien (modem, IPFire-boksen og eventuel netværkshardware i den anden ende) for en sikkerheds skyld, og gå så til IPFires webinterface, som du enten finder ved https://ipfire.localdomain:444 (standard) eller ved at erstatte ip-adressen med den, du tidligere valgte, ved https://192.168.1.1:444.

Log ind med brugernavnet “admin” og det kodeord, du tidligere angav. Nu kan du begynde at snuse rundt. Begynd med at se på “DHCP server”-siden i “Network”-sektionen og se, om IPFire leverer disse interne ip-adresser korrekt. Hvis alt fungerer, bør du se en tabel med ip’er nederst på siden. Hvis du ikke har ændret værdien under installationen, bliver hver af disse adresser udlejet for en kort periode.

Hvis du trykker på “Add”-knappen ud for en enhed, du har tillid til, allokerer du den ip-adresse permanent [Billede D]. Det kan være særdeles nyttigt at vide, hvor noget er, når det gælder fejlfinding på dit netværk senere hen, og det er derfor umagen værd. Brug nu “Edit”-pennen. Du kan også ændre enhedens label, hvis den ikke er indlysende nok.

 

Billede D

6 Blokering

IPFires placering mellem din internetforbindelse og dit netværk betyder, at du kan gøre nogle ret nyttige ting. En af dem er webfiltrering, idet du kan skærme små øjne fra nettets rædsler. Men før du kan konfigurere det, skal du aktivere IPFires proxy (“Network > Web Proxy”), der tjener til at blokere trafik. Aktiver boksene for både “Enable” og “Transparent” på dit grønne netværk, og tjek så “URL filter”-funktionen nedenunder, før du blader ned og klikker “Save and Restart.” Når siden er genindlæst, går du til “Network > URL Filter.”

I dets mest enkle form kan du bruge filtret til at blokere specifikke domæner og adresser ved at skrive dem ind i blacklist-boksene og kikke i boksen forneden. Hvis du virkelig vil blokere for hovedparten af dit netværk, er en whitelist over accepterede sites måske mere din stil. Hvis du tidligere gav din hovedmaskine en permanent ip-adresse, vil vi anbefale, at du føjer den til “Unfiltered”-sektionen længere nede, således at der er mindst én maskine på netværket, der bevarer fuld internetadgang.

Der er endnu en mulighed: Hent en enorm liste over tvivlsomme sites fra en færdiglavet blackliste. Det kan du gøre automatisk via IPFires interface, men vi vil ikke anbefale det, medmindre du kører på muskuløs hardware. Hvis alt skal tjekkes op mod en enorm database, kan websurfing bliver forfærdelig langsom.

7 Brandslukning

Naturligvis ligger IPFires nøglefunktion i navnet: Dens detaljerede og ubønhørlige firewall. Når du har fået den op at køre en stund, går du til “Logs > Firewall Logs” for at se de sager, som den fanger ved standardindstillingen. Du vil sikkert se en masse udgaver af “DROP_INPUT”. Det er dubiøse pakker, som IPFire med held har afvist. Du ser måske også nogle få udgaver af “DROP_NEWNOTSYN” på interne enheder.

Det er uundgåelige tegn på en lettere skrøbelig netværksstak på mindst en af dine maskiner, men der er ingen grund til bekymring. Hvis du vil kende kilden bag eksterne forsøg – navnlig hvis noget banker løs på dit netværk – er der flag, som viser oprindelseslandet, og du kan klikke på enhver adresse for at få en hurtig Whois-anmodning og finde ejeren. Lidt mere læselig, om end mindre detaljeret, statistik om firewallens politiindsats kan man finde under “Logs > FW-Loggraphs” [Billede E].

Billede E

8 Nye regler

Man kan også give firewallen regler, der dirigerer trafik mere passende. Gå til “Firewall > Firewall Rules” for at se listen, der som standard er tom. Det betyder ikke, at firewallen ikke bestiller noget, men at du endu ikke har anbragt nogen undtagelser her. Man kan dykke dybt ned i detaljerne med det her, men lad os blot oprette en hurtig eksempelregel, der udpeger en af maskinerne på dit netværk som webserver. Klik “New rule”.

I “Source”-sektionen klikker du på knappen “Standard networks”og lader “Any” være valgt i dens rulleliste. Klik ud for “Use Network Address Translation” og skriv så adressen på din servermaskine i boksen forneden. I “Protocol” vælger du “TCP”, og så stiller du destinationsporten til 80, standardporten til webtrafik. Læg en notits om din regel i “Remark”-boksen og klik “Add”. Nu går enhver webtrafik, der når din WAN-adresse, til din udvalgte maskine.

Hvis du er veludstyret med systemressourcer (du skal bruge mindst 2 GB ram og en stærk cpu), kan du også køre et system, der afslører indtrængende, analyserer pakker på dit netværk og holder dig informeret om potentielle angreb. Gå til “Services > Intrusion Detection” for at slå det til. IPFire bruger Snort (www.snort.org), der er helt gratis, og som du kan bruge på dit netværk.

9 Lav tilføjelser

IPFires kernefunktionalitet er temmelig omfattende. Bortset fra alt det andet, vi har dækket, er der en funktion til at cache Windows-opdateringer, således at alle maskiner på dit netværk kan nå dem fra din centrale server snarere end at gendownloade dem (“Network > Update Accelerator”), en tjeneste, der kan styre NTP-tidsservere over dit netværk (“Services > Time Servers”), timede adgangsbegrænsninger (“Network > Connection Scheduler”) og indbyggede VPN faciliteter (“Services > OpenVPN”) for blot at nævne nogle få.

De udgør dog ikke grænsen for, hvad man kan gøre. Du kan installere nye applikationer ved hjælp af Pakfire (“IPFire > Pakfire”), der omfatter en lang liste over ting fra konsol-apps såsom htop – læs mere om IPFires kommandolinje under “Kommando & kontrol” – til komplette add-ons til IPFires funktioner.

Det mest interessante for os er pakken tor-x.x.x, der giver mulighed for at drage nytte af The Onion Router, der styrker privatlivets fred og endda tilbyder den som et relæ, således at den kan fungere som en routing-node eller som exit-point for andre folks trafik. Fremhæv den ved at klikke på den, klik på den blå plusknap, og bekræft så, at du gerne vil installere pakkerne.

Kommando & kontrol

IPFire er en Linux-distro – om end en enestående en, idet den ikke er bygget ovenpå for eksempel Debian, Red Hat osv. – og du kan få adgang til IPFires kommandolinje-interface fra enhver maskine på dit netværk, så snart du har aktiveret den via “System > SSH access.” Windows understøtter ikke naturligt SSH, og du skal derfor bruge et værktøj, der kan forbinde til det (PuTTY fra www.putty.org, er ideel), og IPFire bruger en ikkestandard-port af sikkerhedsgrunde, og derfor skal du have forbindelse til port 222, og ikke 22.

Når du har forbindelse, kan du lave alle mulige fikse netværks-ting. Prøv at pinge enheder på dit netværk ved at skrive ping , eller test din internetforbindelse ved at pinge en webadresse. Gå endnu længere, og brug kommandoen traceroute til at se hele stien til en enhed. Se, hvad der kører på din IPFire-boks, og hvilke ressourcer der bliver brugt, ved at installere htop fra menuen “IPFire > Pakfire”, og kør så htop fra kommandolinjen. Du kan endda oprette bruger-id til alle i dit hjem og give dem alle en Linux-shell at lege med. Det er helt op til dig.

10 I gang med tor

Når du har installeret, finder du en ny konfigurationsside for Tor ved “IPFire > Tor” [Billede F]. Klik i den relevante boks for at aktivere Tor-serveren, vælg eventuelt placeringen på din foretrukne exit-node, og klik så “Save”-knappen nederst på siden.

Nu kan du dirigere webbrowsere på dit netværk til at bruge SOCKS-serveren på port 9050 i din IPFire-boks til temmelig privat internet-adgang. Hvis du vil gøre det med Chrome, for eksempel, skal du lave en ny Chrome-genvej og tilføje flagene --proxy-server =”socks5://192.168.1.1:9050” --host-resolver-rules=”MAP * 0.0.0.0 , EXCLUDE myproxy” efter den eksekverbare fil, idet du skifter ip-adressen for den, der gælder for din IPFire-box.

Hvis du vælger at aktivere et Tor-relæ, skal du huske, at det sandsynligvis vil få en enorm indflydelse på din båndbredde, og det strider måske mod din internetudbyders servicebetingelser. 

Billede F