Administrer brannmurer med Ansible UFW -modulen

Administrer brannmurer med Ansible UFW -modulen
Cybersecurity er en av de mest avgjørende bekymringene i vår tid. Når teknologien går videre, gjør også malware, virus og alle slags hacks. Heldigvis har vi antivirusprogramvare og brannmurer for å beskytte oss mot disse truslene.

En brannmur er ansvarlig for å overvåke den innkommende og utgående trafikken gjennom et nettverk. Overvåkningsprosessen parametriseres av sikkerhetskravene i systemet som brannmuren skal forsvare.

Ansible har en modul som heter UFW -modulen som lar brukerne administrere brannmurene på eksterne verter. La oss finne ut hva denne modulen er og hvordan den fungerer!

Hva er UFW -modulen?

Før vi kommer til UFW -modulen, må vi først sjekke ut hva UFW er i utgangspunktet. UFW står for ukomplisert brannmur-en brukervennlig applikasjon designet for å gjøre brannmurstyring enkelt på Linux-systemer. Det kommer forhåndsinstallert i alle Ubuntu -versjoner etter 8.04 LTS.

Det gode med UFW er at det gir en intuitiv frontend som alle kan lære å bruke raskt. Det er et CLI (kommandolinjegrensesnitt) basert program, men det er GUI-versjoner også tilgjengelig. UFW fungerer spesielt bra med vertsbrannmurer, noe som mest sannsynlig er hvorfor det er støtte for det i Ansible.

Ansible har en UFW -modul som tilhører samfunnet.Generell samling, noe som betyr at det ikke er inkludert i Ansible-core. Imidlertid, hvis du har installert Ansible -pakken, har du det sannsynligvis allerede den. I tilfelle du ikke gjør det, referer du til neste avsnitt for installasjonsinstruksjoner.

Installere UFW -modulen

Du kan sjekke om UFW -modulen er inkludert i Ansible -installasjonen din ved å kjøre kommandoen nedenfor.

$ ansible -doc -l

Kontroller utdataene. Hvis du ikke har UFW -modulen, kjør kommandoen nedenfor for å installere den.

$ Ansible-Galaxy Collection Install Community.generell

Når det er gjort, er vi alle på samme side angående installasjonen av UFW -modulen. La oss komme inn på hvordan du kan bruke den!

Bruke UFW -modulen

Nedenfor er noen viktige parametere som hver bruker skal vite før de bruker UFW -modulen.

  • standard eller policy - tar tillater eller nekter eller avviser og endrer gjeldende sikkerhetspolicy for nettverkstrafikk.
  • slett - tar nei (standard) eller ja. Sletter en regel.
  • Retning - Angir retningen på en regel I.e., inn, innkommende, ut, utgående eller dirigert.
  • FRA_IP, FRA FRA_PORT - RETURNS Source IP -adresse og port.
  • Sett inn - Legger til en regel identifisert av dets regelnummer eller NUM. (Tall starter fra 1 i UFW)
  • Grensesnitt - Angir grensesnittet (drevet av retningsparameteren) for emneregelen.
  • Logg - tar nei (standard) eller ja. Slår av og på og på for nye tilkoblinger som er gjort til regelen.
  • Logging - Endrer innstillinger.
  • rute - tar nei (standard) eller ja. Bruker den spesifiserte regelen på videresendte/rutede pakker.
  • Regel - Legg til en ny brannmurregel. Tar de samme argumentene som standardparameteren.
  • State - tar aktivert å laste inn på nytt og kjøre brannmur ved oppstart, deaktivert for å losse og slå av brannmuren ved oppstart, tilbakestilles for å deaktivere brannmuren og bruker standardinnstillinger, lastet inn for å laste inn brannmuren på nytt.
  • to_ip, to_port - returnerer destinasjons -IP -adresse og port henholdsvis.

Når du har mestret inn og ut på disse parametrene, er du på god vei til å bli UFW -ekspert. Hvis du vil lære mer, kan du gå til Documentation for Ansible UFW -modulen. Når det er sagt, la oss gå videre til noen eksempler som demonstrerer bruken av denne modulen.

Eksempel 1: Aktiver UFW

I dette første eksemplet lærer du hvordan du aktiverer UFW mens du tillater all trafikk. Dette kan gjøres med følgende kode.

- Navn: Aktivering av UFW, tillater all trafikk
samfunnet.generell.UFW:
Stat: aktivert
Policy: Tillat
- Navn: Angi logging
samfunnet.generell.UFW:
logger på'

Kjør nå denne spillboken ved hjelp av følgende kommando i Linux -terminalen:

Ansible-Playbook Testbook.yml

Som du ser har vi brukt stat parameter og sett den til aktivert - slå på brannmuren. Deretter tillater vår policy eller standardparameter alt. Endelig har vi slått på logging.

Eksempel 2: Avvisende trafikk

Tilkoblinger fra en avsender kan avvises på flere måter ved å bruke benekte og avvise. Å bruke benekt informerer imidlertid ikke avsenderen om at de har blitt nektet. I mange tilfeller kan det være lurt å varsle brukerne om at forbindelsene deres blir nektet. I et slikt tilfelle, bruk avvisningsargumentet.

- samfunnet.generell.UFW:
Regel: Avvis
Port: Auth
Logg: Ja

Vi logger også de avviste tilkoblingene ved å stille inn logg til ja.

Eksempel 3: Å nekte og gi tilgang til en bestemt port

I dette eksemplet vil vi gå over hvordan du kan nekte tilgang til en bestemt port. Dette kan oppnås ved ganske enkelt å sette regelen som benekter og passerer antallet på porten du vil ha.

- Navn: nektet tilgang til port 35
samfunnet.generell.UFW:
Regel: nekt
Port: '35'

Vi kan også endre ting litt ved å gi all tilgang til en TCP -port også. Slik vil det bli gjort.

- Navn: Tillater alt tilgang til port 53
samfunnet.generell.UFW:
Regel: Tillat
Port: '53'
Proto: TCP

Her er proto -parameteren bestått TCP, bare å sette protokollen. Andre mulige argumentverdier inkluderer UDP, IPv6, esp, Ah, noen, og mer.

Disse teknikkene er også anvendelige for en rekke porter. La oss si at du vil tillate eller nekte tilgang til et bredt spekter av porter, men du må spesifisere en regel for hver port en etter en. Ikke nødvendigvis. Faktisk kan du passere en hel rekke porter som trenger samme regel. Her er et eksempel på hvordan det ville fungere.

- Navn: Tillat Port Range 60000-61000
samfunnet.generell.UFW:
Regel: Tillat
Port: 60000: 61000
Proto: TCP

Alle portene mellom 60000 og 61000 vil få full tilgang.

Konklusjon

I denne guiden har vi utforsket Ansible UFW -modulen. Det lar oss administrere brannmurer på eksterne verter effektivt. Vi så også på et par eksempler der vi demonstrerte hvordan vi kan tillate eller nekte tilgang, administrere porter og mer. Forhåpentligvis har det vært en informativ lesning for deg!