16.04.2014 Views

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ª FUOC • XP04/90785/00019<br />

Software libre<br />

en casa permite conectar varias máquinas sin necesidad <strong>de</strong> que el<br />

proveedor nos proporcione varias direcciones IP. Los routers ADSL<br />

suelen ofrecer algún tipo <strong>de</strong> NAT masquerading , y también posibilida<strong>de</strong>s<br />

<strong>de</strong> firewall. Suele ser bastante común utilizar una combinación<br />

<strong>de</strong> ambas técnicas. En este caso, entra en juego, a<strong>de</strong>más <strong>de</strong> la configuración<br />

<strong>de</strong> la máquina <strong>de</strong>l firewall (los casos vistos antes), la configuración<br />

<strong>de</strong> la red privada interna que queremos proteger.<br />

9.6.2. Netfilter: IPtables<br />

Nota<br />

Netfilter, ver:<br />

http://www.netfilter.org<br />

Ipchains, ver:<br />

http://www.netfilter.org/<br />

ipchains/<br />

El kernel <strong>Linux</strong> (a partir 2.4) proporciona un subsistema <strong>de</strong> filtrado<br />

<strong>de</strong>nominado Netfilter [Net03] que proporciona características <strong>de</strong> filtrado<br />

<strong>de</strong> paquetes y también NAT. Este sistema permite usar diferentes<br />

interfaces <strong>de</strong> filtrado, entre ellas, la más usada se <strong>de</strong>nomina<br />

IPtables. El comando principal <strong>de</strong> control es iptables. Anteriormente<br />

[Hat03a], se proporcionaba otro filtrado <strong>de</strong>nominado ipchains en los<br />

kernel 2.2 [Gre00], el sistema tenía una sintaxis diferente (aunque<br />

parecida). En los kernel 2.0 se utilizaba otro sistema <strong>de</strong>nominado<br />

ipfwadm. Aquí (y en los ejemplos posteriores) vamos a tratar sólo con<br />

Netfilter/IPTables (es <strong>de</strong>cir, con kernels 2.4).<br />

Nota<br />

IPTables aporta diferentes<br />

elementos como las tablas,<br />

chains, y las propias reglas.<br />

La interfaz <strong>de</strong>l comando iptables permite realizar las diferentes tareas<br />

<strong>de</strong> configuración <strong>de</strong> las reglas que afectan al sistema <strong>de</strong> filtrado:<br />

ya sea generación <strong>de</strong> logs, acciones <strong>de</strong> pre y post routing <strong>de</strong> paquetes,<br />

NAT, y forwarding (reenvío) <strong>de</strong> puertos.<br />

Arranque <strong>de</strong>l servicio con: /etc/init.d/iptables start, si no estaba configurado<br />

ya en el runlevel.<br />

ANOTACIONES<br />

El comando iptables -L lista las reglas activas en ese momento en<br />

cada una <strong>de</strong> las ca<strong>de</strong>nas (chains). Si no se han configurado previamente,<br />

suelen ser <strong>de</strong> aceptar todos los paquetes <strong>de</strong> las ca<strong>de</strong>nas (o<br />

chains) <strong>de</strong> input (entrada), output (salida) y forward (reenvío).<br />

El sistema <strong>de</strong> IPTables tiene como nivel superior las tablas. Cada una<br />

contienen diferentes ca<strong>de</strong>nas, que a su vez contienen diferentes reglas.<br />

Las tres tablas que existen son: Filter, NAT y Mangled. La primera<br />

sirve para las propias normas <strong>de</strong> filtrado, la segunda para<br />

realizar traslación <strong>de</strong> direcciones <strong>de</strong>ntro <strong>de</strong> un sistema que utilice<br />

370

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!