Firewall på den gamle pc

I stedet for at smide den gamle, udtjente pc ud, kan man omskabe den til en funktionsdygtig firewall. Det kræver blot en eftermiddags arbejde. Vi benytter Red Hat Linux 7.3 til at skabe en firewall, der forhåbentlig holder uvedkommende datatrafik ude fra vores system.

Pc som firewall

En fast forbindelse til internettet giver masser af muligheder for at etablere lokalnetværk med egen mailserver, webserver og så videre. Men det medfører også, at man bliver nødt til at forholde sig aktivt til sikkerhedsspørgsmål, for ingen er vel interesserede i at få uventede og uønskede besøg.

En af sikkerhedsmekanismerne, der kan beskytte det lokale netværk mod omverdenen, er en firewall, og det behøver hverken være dyrt eller vanskeligt at etablere. Alt hvad det kræver, er modet til at gå i gang med Linux, samt to netkort til den gamle pc.

Pc'en behøver ikke engang være særlig hurtig. En processor omkring 300 MHz er nok til, at man kan bruge den som firewall mellem bredbåndsmodem/-router og resten af netværket.

Det gode ved at have en hardware-baseret firewall er, at brugerne af de pc'er, der ligger bagved firewallen, ikke kan lukke den ned eller ændre på den.

Med en software-firewall risikerer man, at brugere - eller sågar virus - lukker ned for firewall'en, og derefter er der åbent hus for hackere og andet skidtfolk. Desuden kan den sættes op helt gratis, hvis man selv bruger tid på at hente det Linux-operativsystem, som man skal bruge.

Konfiguration

Vi brugte til denne artikel Red Hat Linux 7.3, men det burde ikke skabe de store problemer at bruge en anden Linux distribution, så længe kernen er minimum version 2.4.

Der er tre steder i forbindelse med konfigurationen, man skal være opmærksom:

1) Når man installerer en pc som firewall, bør man ikke installere mere end man ved, man får brug for. Derfor bør man under punktet om, hvilket system pc'en skal bruges som, vælge Custom.

2) Ved netværkskonfigurationen skal man fjerne fluebenet i "Configure using DHCP". Herefter indtaster man den IP-adresse, firewallen skal tildeles.

I vort eksempel benytter vi adresserne 192.168.x.x. Under "IP-adresse" skriver vi derfor 192.168.1.202.

I "Hostname" skrives et navn, man selv vælger, og i "Gateway" indtastes IP-adressen som router/modem er blevet tildelt fra bredbåndsleverandørens side. I "Primary DNS" indtaster man IP-adressen på den DNS-server, man benytter sig af. Derefter vælger man netkortet eth1, og indtaster IP-adressen 192.168.1.201. Brug TAB mellem alle felter, så de øvrige felter autoudfyldes med de nødvendige oplysninger.

3) I "Selecting Package Groups" bør man fjerne alt bortset fra "Gnome" - hvis man vil have den grafiske brugerflade - "Network Support", "Router/Firewall" og "Network Managed Workstation".

Når installationen er færdig, og man har logget sig på som root for første gang, skal man køre følgende kommandoer i et kommandovindue:

Chkconfig --level 0123456 ipchains off
Chkconfig -level 235 iptables on
Rmmod ipchains
Insmod ip_tables

Derefter rettes /etc/modules.conf og følgende linje tilføjes til sidst i filen:

add above ip_conntrack_ip _conntrack_ftp

I samme mappe ændres filen sysctl.conf, hvor linien:

net.ipv4.ip_forward = 0

rettes til:

net.ipv4.ip_forward = 1

Når det er gjort, er det blot at indtaste firewallteksten i en fil og gemme den som firewall.conf i /root/

Indtast derefter følgende kommando, for at gemme indstillingerne:

/etc/rc.d/rc5.d/S08iptables save

Genstart derefter med:

shutdown -r now

Styr tilgangen af datapakker

Det mest interessante er uden tvivl selve konfigurationen af firewallen. En vigtig detalje ved firewalls er muligheden for at filtrere datapakker. Man kan simpelthen sætte firewallen op til kun at modtage datapakker fra andre computere på internettet, hvis en klient på lokalnetværket selv har spurgt efter dem.

Hvis man uhæmmet tager imod "fremmede" datapakker, er der en god chance for, at netværket kan blive hacket, eller på anden måde forstyrret. Man kan også helt blokere for uønskede websites, som man ikke ønsker trafik fra, eksempelvis pop-up-reklamernes servere.

Når pc'en modtager en datapakke, kigger firewallen i pakkens header, og hvis den ikke overholder firewall-reglerne, bliver den smidt bort. Afsenderen af datapakken får ikke noget svar tilbage, og pakken anses simpelthen for tabt.

Det er netop den slags filtrering, som "iptables" i firewall-filen hjælper med. De steder i filen, hvor der står 192.168.2.0/2, betyder det, at vi tillader tre computere på det interne netværk - med adresserne 192.168.2.0, 192.168.2.1 og 192.168.2.2 - og ingen andre at bruge disse porte/services.

Konfigurationsfilen firewall.conf består altså af en række kommandoer, men er egentlig blot en tekstfil, der skal gemmes i den rigtige mappe. Så er man klar til at beskytte sit netværk. Firewall.conf kan for eksempel se således ud:

Punkt A: Alle tidligere regler nulstilles så man er sikker på at have et korrekt udgangspunkt:

iptables -F FORWARD
iptables -F INPUT
iptables -F OUTPUT
iptables -t nat -F POSTROUTING

Punkt B: Her bliver standard-reglen for firewallen sat op. Alt bliver smidt væk (DROP), med mindre man konfigurerer firewall'en til at beholde bestemte former for datapakker, hvilket vi begynder på i Punkt C. Dette er den mest sikre metode at begynde med. Til gengæld skal alle anvendte porte/services tillades specifikt:

iptables -P FORWARD DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP

Punkt C: Her starter vi med at fortælle firewallen, hvilke porte vi gerne vil kunne bruge. Port 20 og 21 er FTP-trafik og port 25 er til SMTP-mail. Port 80 er beregnet til http-trafik, port 110 er pop-mail, port 443 bruges i forbindelse med sikre websteder (SSL/TLS) og port 6667 er standard-porten til IRC (Internet Relay Chat). Som udgangspunkt er det her, man skal tilføje de porte man vil bruge, eller som bestemte programmer anvender. Samtidig bør man også fjerne de porte man ikke har brug for. Jo mindre, der er tilladt, jo mindre er risikoen for at blive hacket:

iptables -A FORWARD -p tcp -d 192.168.2.0/2 -m multiport \
--sport 20,21,25,80,110,443,6667 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.2.0/2 -m multiport \
--dport 21,25,80,110,443,6667 -m state --state NEW,ESTABLISHED -j ACCEPT

Punkt D: Dette tillader pc'er at bruge DNS-servere uden for det lokale netværk. Med mindre man kan IP-adresserne på de websteder man vil besøge i hovedet, er der reelt set ingen internetadgang uden dette punkt:

iptables -A FORWARD -p udp -d 192.168.2.0/2 --sport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.2.0/2 --dport 53 -j ACCEPT

Punkt E: Dette punkt tillader, at browseren kan bruges som FTP-klient. Bruger man i stedet en rigtig FTP-klient, kan man roligt fjerne dette punkt:

iptables -A FORWARD -p tcp -s 192.168.2.0/2 -m state \
--state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp -d 192.168.2.0/2 -m state \
--state ESTABLISHED -j ACCEPT

Punkt F: At kunne "pinge" andre computere kan være en værdifuld ting når man skal fejlsøge netværk. Dog er det ikke så smart selv at kunne blive pinget, da det afslører, at her er en computer, som man måske kan bryde ind i. Mange vil faktisk ikke have brug for det, og den bør helt udelades hvis det er tilfældet:

iptables -A FORWARD -p ICMP -d 192.168.2.0/2 \
--icmp-type echo-request -j DROP
iptables -A FORWARD -p ICMP -s 192.168.2.0/2 \
--icmp-type echo-reply -j DROP

Punkt G: Dette punkt fjerner en af de muligheder som hackere bruger, når der laves Denial of Service angreb. Disse IMCP-beskeder er i det hele taget noget usikre, og benyttes også af hackere til at scanne netværk eller omdirigere trafik. Det er nærmest en hel videnskab for sig at omgå disse beskeder, for man kan ikke lukke af for dem alle sammen, uden at ens interne netværk risikerer at blive gjort ukampdygtigt. Derfor gælder det i høj grad om at overvåge IMCP-trafikken og derefter skride til handling, hvis der er uregelmæssigheder:

iptables -A FORWARD -p ICMP -s 192.168.2.0/2 \
--icmp-type redirect -j DROP

Punkt H: Vi åbner for IMCP-sluserne og håber det bedste:

iptables -A FORWARD -p ICMP -j ACCEPT

Punkt I: Her får computerne adgang til firewall-maskinen, og hinanden:

ipchains -A input -i $LOCAL_INTERFACE \
-s $LOCALNET -j ACCEPT

ipchains -A output -i $LOCAL_INTERFACE \
-d $LOCALNET -j ACCEPT

Punkt J: Source Network Address Translation eller IP-masquerading. Uanset hvilken IP-adresse netværkstrafikken kommer fra på det interne netværk, vil det for verden uden for, se ud som om det sker fra én og samme IP-adresse. På den måde undgår man at afsløre, hvilke pc'er, der er bag firewallen:

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 192.168.1.202

Hele den ovenstående konfigurationsfil kan hentes her, så man ikke behøver at skrive den selv.

Denne artikel stammer fra den trykte udgave af PC World.




Brancheguiden
Brancheguide logo
Opdateres dagligt:
Den største og
mest komplette
oversigt
over danske
it-virksomheder
Hvad kan de? Hvor store er de? Hvor bor de?
Advania Danmark A/S
Hardware, licenser, konsulentydelser

Nøgletal og mere info om virksomheden
Skal din virksomhed med i Guiden? Klik her

Kommende events
Industry 4.0 – sådan udnytter du AI og digitalisering til optimering af din produktion.

På denne konference fokuserer på en digitaliseret optimering af processer i produktions- og procesorienterede virksomheder. Herved bliver du f.eks. i stand til at kombinere maskiner med sales forecasting og derved planlægge anvendelsen af produktionsapparat og medarbejderallokering effektivt – samt begrænse materialespild og nedetid ved at optimere produktionsplanlægning og omstilling af produktionsmateriel.

04. september 2024 | Læs mere


Roundtable for sikkerhedsansvarlige: Hvordan opnår man en robust sikkerhedsposition?

For mange virksomheder har Zero Trust og dets principper transformeret traditionelle tilgange til netværkssikkerhed, hvilket har gjort det muligt for organisationer at opnå hidtil usete niveauer af detaljeret kontrol over deres brugere, enheder og netværk - men hvordan implementerer man bedst Zero Trust-arkitekturer i et enterprise set up? Og hvordan muliggør Zero Trust-arkitekturen, at organisationer opnår produktivitetsfordele med AI-værktøjer samtidig med, at de forbliver sikre i lyset af fremvoksende trusler?

18. september 2024 | Læs mere


Nye forretningsmæssige gevinster med Microsoft Dynamics 365

Eksperter fra CGI stiller skarpt på hvordan, du lærer også hvorfor det er vigtigt at have fokus på både processer, teknologi og mennesker - og hvordan du kommer i gang med løbende optimering af forretningsudvikling.

25. september 2024 | Læs mere