Firewall FreeBSD

 

Firewall

 

Firewalls gør det muligt at filtrere den indgående og udgående trafik, der strømmer gennem et system. En firewall kan bruge et eller flere sæt "regler" til at inspicere netværkspakker, når de kommer ind eller ud af netværksforbindelser og enten tillader trafikken igennem eller blokerer den.

Firewalls kan øge sikkerheden for en vært eller et netværk. De kan bruges til at gøre en eller flere af følgende ting:

FreeBSD leverer flere firewalls for at imødekomme de forskellige krav og præferencer for en lang række brugere. Hver bruger bør vurdere, hvilken firewall der bedst opfylder deres behov.

I den her vejledning gennemgås opsætning af IPFW firewall til stationær eller bærbar computer.

Note:

Da alle firewalls er baseret på inspektion af værdierne af udvalgte pakkekontrolfelter, skal skaberen af firewallregelsættet have en forståelse af, hvordan TCP/IP fungerer, hvad de forskellige værdier i pakkekontrolfelterne er, og hvordan disse værdier bruges i en normal sessionssamtale. For en god introduktion henvises til Daryls TCP/IP Primer

Firewall koncepter

Et regelsæt indeholder en gruppe regler, som sender eller blokerer pakker baseret på værdierne i pakken. Den tovejsudveksling af pakker mellem værter omfatter en sessionssamtale. Firewall regelsættet behandler både de pakker, der kommer fra det offentlige internet, såvel som de pakker, der produceres af systemet som et svar på dem. Hver TCP/IP-tjeneste er foruddefineret af dens protokol og lytteport. Pakker, der er bestemt til en specifik tjeneste, stammer fra kildeadressen ved hjælp af en uprivilegeret port og målretter mod den specifikke tjenesteport på destinationsadressen. Alle ovenstående parametre kan bruges som udvælgelseskriterier til at skabe regler, som vil videregive eller blokere tjenester.

For at finde ukendte portnumre, se /etc/services. Alternativt, kan du besøge http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers og foretage et portnummeropslag for at finde formålet med et bestemt portnummer.

Tjek dette link for portnumre, der bruges af Trojans.

FTP har to tilstande: aktiv tilstand og passiv tilstand. Forskellen ligger i, hvordan datakanalen erhverves. Passiv tilstand er mere sikker, da datakanalen hentes af den ordinære ftp sessionsanmoder. For en god forklaring af FTP og de forskellige tilstande, se http://www.slacksite.com/other/ftp.html.

Et firewall regelsæt kan enten være "exclusive" eller "inclusive". En exclusive firewall tillader al trafik igennem undtagen den trafik, der matcher regelsættet. En inclusive firewall gør det omvendte, da den kun tillader trafik, der matcher reglerne, og blokerer alt andet.

En inclusive firewall giver bedre kontrol over den udgående trafik, hvilket gør den til et bedre valg for systemer, der tilbyder tjenester til det offentlige internet. Det styrer også typen af trafik, der stammer fra det offentlige internet, og som kan få adgang til et privat netværk. Al trafik, der ikke matcher reglerne, blokeres og logges. Inclusive firewalls er generelt mere sikre end exclusive firewalls, fordi de reducerer risikoen for at tillade uønsket trafik markant.

Sikkerheden kan skærpes yderligere ved hjælp af en "stateful firewall". Denne type firewall holder styr på åbne forbindelser og tillader kun trafik, som enten matcher en eksisterende forbindelse eller åbner en ny, tilladt forbindelse.

Stateful filtrering behandler trafik som en tovejsudveksling af pakker, der omfatter en session. Når tilstand er angivet på en matchende regel, genererer firewallen dynamisk interne regler for hver forventede pakke, der udveksles under sessionen. Den har tilstrækkelige matchningsmuligheder til at afgøre, om en pakke er gyldig til en session. Alle pakker, der ikke passer ordentligt til sessionsskabelonen, afvises automatisk.

Når sessionen er fuldført, fjernes den fra den dynamiske tilstandstabel.

Stateful filtrering giver mulighed for at fokusere på at blokere/passere nye sessioner. Hvis den nye session er bestået, tillades alle dens efterfølgende pakker automatisk, og eventuelle bedragerpakker afvises automatisk. Hvis en ny session er blokeret, er ingen af dens efterfølgende pakker tilladt. Stateful filtrering giver avancerede matchningsevner, der er i stand til at forsvare sig mod strømmen af forskellige angrebsmetoder, der anvendes af angribere.

NAT står for Network Address Translation. NAT-funktionen gør det muligt for det private LAN bag firewallen at dele en enkelt ISP tildelt IP-adresse, selvom denne adresse er dynamisk tildelt. NAT tillader hver computer i LAN at have internetadgang uden at skulle betale internetudbyderen for flere internetkonti eller IP-adresser.

NAT vil automatisk oversætte den private LAN IP-adresse for hvert system på LAN til den enkelte offentlige IP-adresse, efterhånden som pakker forlader firewallen, der er bundet til det offentlige internet. Den udfører også den omvendte oversættelse for returnerende pakker.

Ifølge RFC 1918 er følgende IP-adresseområder reserveret til private netværk, som aldrig vil blive dirigeret direkte til det offentlige internet, og derfor er tilgængelige til brug med NAT:

Advarsel:

Når du arbejder med firewall reglerne, skal du være meget forsigtig. Nogle konfigurationer kan låse administratoren ude. For at være på den sikre side bør du overveje at udføre den indledende firewall konfiguration fra den lokale konsol i stedet for at gøre det eksternt via ssh.

Hvis du vil vide mere om firewall, så læs afsnittet om Blacklistd og Avanceret netværk.

 

VirtualBox

Hvis der bruges VirtualBox til at installere FreeBSD er der noget der skal tilrettes. Hvis der ikke bruges VirtualBox kan dette afsnit springes over.

Åbn VirtualBox og klik på Indstillinger.

Instillinger VirtualBox

Du vil så komme frem til dette skærmbillede.

Slet FreeBSD

Klik på Lagerenheder, og højreklik på FreeBSD og vælg Fjern tilslutning.

VirtualBox kommer med virtuelle grafik/lyddrivere, som FreeBSD kan have problemer med at identificere. For at løse problemer der kan opstå, skal der installeres virtualbox-ose-additions. log ind som almindelig bruger og skift til root med su.

Men inden vi gør noget skal du først opdatere arkivet og kontrollere om der er opdateringer.

Opdater arkivet:

pkg update

Installer pakkehåndtering

Her får jeg så at vide:

The pacage mangement tool is not yet installed on your system. Do you want to fetch and install it now? Det vil jeg selvfølgelig, så jeg indtaster y og slår Enter.

Kontroller om der er opdateringer til systemmet:

freebsd-update fetch install

Opdater system

Der var så ingen opdateringer i det her tilfælde.

Installer VirtualBox gæstetilføjelsespakkerne:

pkg install emulators/virtualbox-ose-additions

virtualbox-ose-additions

Der er 19 programpakker der skal installeres. Indtast y og slå Enter.

Start service

Indtast sysrc vboxguest_enable="YES" og slå Enter.

sysrc vboxguest

Indtast sysrc vboxservice_enable="YES" og slå Enter.

vboxservice

Nu skal computeren genstartes, så det kan træde i kraft. Indtast reboot og slå Enter.

Kontrol af service

Log ind som almidelig bruger og indtast cat /etc/rc.conf Som det kan ses er vboxguest og vboxservice aktiveret ved opstart af computeren.

Gruppen wheel

VboxSVGA

 

IPFW firewall

Der er tre firewall muligheder på FreeBSD. Den internt byggede IPFW, den 'gamle' IPF (kendt som IP Filter) og PF som er porteret fra OpenBSD. Her gennemgår vi opsætning af IPFW firewall til stationær og bærbar computer (arbejdsstation). IPFW er en stateful firewall". Denne type firewall holder styr på åbne forbindelser og tillader kun trafik, som enten matcher en eksisterende forbindelse eller åbner en ny, tilladt forbindelse.

IPFW er skrevet til FreeBSD, som understøtter både IPv4 og IPv6. Den består af flere komponenter: kernel firewall filter rule processor og dens integrerede integrated packet accounting facility, logningsfaciliteten, NAT, dummynet(4) traffic shaper, en forward facility, en bridge facility, og en ipstealth facility.

Blandt de tre mulige firewalls på FreeBSD er IPFW den internt byggede som standard, og en nem måde at opsætte en firewall på. Men hvis man har brug for at bygge en boks til at fungere som en dedikeret netværksenhed med pakkefiltrering kapacitet, er finjustering af IPFW firewall konfigurationen nødvendig. Det kan du læse mere om i afsnit 31.4.2. IPFW Rule Syntax i FreeBSD håndbogen. Hvis du tilfældigvis har Michael W. Lucas' sidste udgave af ' Absolute FreeBSD, kan en genlæsning af kapitel 7 og 8 være nyttig. Jeg har selv anskaffet bogen. Albert Valbuena har også skrevet en god vejledning til hvordan IPFW firewallen på FreeBSD konfigureres.

FreeBSD leverer et eksempelregelsæt i /etc/rc.firewall, som definerer flere firewalltyper for almindelige scenarier for at hjælpe nybegyndere med at generere et passende regelsæt. IPFW giver en kraftfuld syntaks, som avancerede brugere kan bruge til at lave tilpassede regelsæt, der opfylder sikkerhedskravene i et givet miljø.

IPFW er som sagt inkluderet i den grundlæggende FreeBSD installation som et kerneindlæsbart modul, hvilket betyder, at en brugerdefineret kerne ikke er nødvendig for at aktivere IPFW.

 

Opsætning af IPFW firewall

Skift ti root

Log ind som almidelig bruger og skift til root med su.

Vejledning til opsætning af firewall finder du herunder når de forskellige kommandoer er udført.

Aktiver firewall

Så skal firewall aktiveres ved at du indtaster sysrc firewall_enable="YES" og slår Enter.

Quiet firewall

Næste skridt er indtast sysrc firewall_quiet="YES" og slå Enter.

Workstation firewall

Næste skridt er indtast sysrc firewall_type="workstation" og slå Enter.

Logdeny firewall

Næste skridt er indtast sysrc firewall_logdeny="YES" og slå Enter.

Start firewall

Næste skridt er at starte firewall. indtast service ipfw start og slå Enter.

Du får så at vide at Firewall rules er loaded.

Status firewall

Næste skridt er at se status på firewaal. indtast service ipfw status og slå Enter.

Du får så at vide at ipfw is enabled. D.V.S. at firewall er aktiveret.

Hvis du vil se om firewall reglerne er loaded under opstart, så indtast cat /etc/rc.conf | grep firewall og slå Enter.

Aktiveret firewall

Og som du kan se er firewall reglerne aktiveret i /etc/rc.conf ved opstart af computeren.

Hvis du vil se standard reglerne for IPFW fireewall, så indtast grep firewall /etc/defaults/rc.conf | less og slå Enter.

Standard firewall regler


Forklaring på opsatte firewall regler:

Det var så opsætning af IPFW til stationær eller bærbar computer.

Det næste er at installere MATE Desktoppen efter opsætning af firewall.

 

FreeBSD projektet