Omet navegació

7.2. Tallafocs (firewall)

El tallafocs (firewall) és un mecanisme, ja siga de programari o maquinari, per a la protecció de xarxes. Un tallafocs actua com una barrera o mur de protecció entre dues xarxes, normalment un privada i altra pública i insegura com pot ser internet.

La ubicació habitual d’un tallafocs és el punt de connexió de la xarxa interna de l’organització amb la xarxa exterior que, normalment, és Internet. Val a dir que, tal com mostra la imatge inferior, és freqüent connectar al tallafocs una tercera xarxa, anomenada zona desmilitaritzada (DMZ, demilitarized zone), en la qual s’ubiquen els servidors de l’organització que han de romandre accessibles des de la xarxa exterior.

Per norma general un tallafocs conté els següents elements:

  • Filtres: elements de maquinari o programari que s'encarregen d'analitzar els paquets i decidir si acceptar-los o rebutjar-los.
  • Node bastió: el dispositiu intermediari situat entre les dues xarxes i que és el que està exposat a atacs des de l'exterior.

Els objectius del servei de tallafocs són:

  • Garantir que no es podrà accedir  als recursos interns des de l'exterior sense permís (arxius compartits, impressores de xarxa, etc.)
  • Filtrar els paquets d'entrada i eixida, permetent o denegant l'accés segons l'origen o el destí, tant en el que respecta a les adreces IP com als ports.
  • Utilitzar ferramentes de software per a dur un control sobre el trànsit de xarxa.
Xarxa desmilitaritzada
Xarxa desmilitaritzada (CC BY-SA)

Un tallafoc disposa de tres tipus direccions: IN, OUT i FORWARD

Firewall: direccions
Firewall: accions
Llicència: CC BY-SA

Un tallafocs es pot configurar de dues formes: permissiu o restrictiu.

En cas de ser permissiu deixa entrar, eixir i passar tot el trànsit. I l'administrador s'encarregarà de restringir allò que estime oportú mitjançant una llista negra (blacklist). El tallafocs restrictiu, en canvi, no deixa entrar, eixir ni passar res i és l'administrador qui permetrarà (obrirà) allò que crega convenient (whitelist).

No obstant això, també es pot optar per solucions mixtes on algunes direccions estiguen restringides i altres permeses.

Situació: configurar un tallafocs restrictiu

El nucli Linux inclou el subsistema Netfilter, que és usat per manipular o decidir el destí del trànsit de xarxa entre o mitjançant la seva xarxa. Totes les solucions tallafocs Linux modernes utilitzen aquest sistema per al filtrat de paquets.

L'eina de configuració predeterminada del tallafoc per a Ubuntu és ufw. Desenvolupat per facilitar la configuració de tallafocs de iptables, ufw proporciona una forma fàcil d'usar per crear un firewall basat en host d'IPv4 o IPv6.

Per defecte el tallafocs està desactivat, cal activar-lo amb el comandament:

$sudo ufw enable

Per a establir la configuració per defecte cal usar:

$ sudo ufw default [deny|allow] [incoming|outgoing|routed]

Per a obrir un port concret, per exemple el 22.

$ sudo ufw allow 22

Per a obrir un port concret en un protocol determinat:

$ sudo ufw allow 22/tcp

Per a obrir un port en un protocol determinat i una direcció concreta out cap a l'exterior.

$ sudo ufw allow out 22

Per permetre un paquet enrutat:

$ sudo ufw route allow in on enp0s8 out on enp0s3 to 192.168.90.1 port 22 proto tcp

Més informació en Tallafocs en Ubuntu Server Guide i UFW ajuda de la comunitat Ubuntu.