¡Hola! Bienvenido a Desde Linux. ¿Acaso estás harto de los pantallazos azules y los virus? Entonces, no dudes en migrar a Linux. Si recién empiezas, te recomendamos pasar por nuestra sección para Novatos. En caso de que estés buscando una Distribución Linux, tenemos guías para ayudarte a elegir la mejor. También contamos con un listado de Programas para reemplazar a los que usabas en Windows. No olvides utilizar la barra aquí debajo para obtener ayuda adicional.

iptables para novatos, curiosos, interesados

Siempre he pensado que la seguridad nunca está de más, y nunca es suficiente (por eso ya elav me tilda de maniático obsesivo y psicótico de la seguridad…), por eso aún cuando uso GNU/Linux, no descuido la seguridad de mi sistema, mis passwords (generados aleatoriamente con pwgen), etc..

Además, aún cuando los sistemas tipo Unix son sin dudas muy seguros, se recomienda sin dudas usar un Firewall, configurarlo como es debido, para estar lo mejor protegidos posible :)

Aquí les explicaré sin muchos líos, enredos o detalles complejos cómo conocer lo básico de iptables.

Pero … ¿qué demonios es iptables?

iptables es la parte del kernel Linux (un módulo) que se ocupa de filtrar paquetes. Esto dicho de otra forma, significa que iptables es la parte del kernel cuyo trabajo es saber qué información/datos/paquete quieres que entre a tu ordenador, y cuáles no (y hace más cosas, pero centrémosnos en esto por el momento jeje).

Explicaré esto de otra forma :)

Muchos en sus distros usan firewalls, Firestarter o Firehol, pero estos firewalls en realidad ‘por detrás’ (en el background) usan iptables, entonces … ¿por qué no usar directamente iptables?

Y eso es lo que explicaré de forma breve aquí :)

¿Hasta aquí queda alguna duda? :D

Para trabajar con iptables es necesario tener permisos administrativos, por lo que acá usaré sudo (pero si entras como root, no hay necesidad).

Para que nuestro ordenador sea realmente seguro, tenemos que solo permitir lo que nosotros queramos. Vean su ordenador como si fuera su propia casa, en su casa ustedes por defecto NO dejan que nadie entre, solo pueden entrar determinadas personas específicas que ustedes hayan aprobado antes no? Con los firewalls sucede igual, por defecto nadie puede entrar a nuestro ordenador, solo podrán entrar quienes nosotros deseemos :)

Para lograr esto que explico, aquí los pasos:

1. Abran una terminal, en ella pongan lo siguiente y presionen [Enter]:

sudo iptables -P INPUT DROP

Esto bastará para que nadie, absolutamente nadie pueda entrar a su ordenador… y, este “nadie” los incluye a ustedes mismos :D

Explicación de la línea anterior: Con ella indicamos a iptables, que la política por defecto (-P) para todo lo que desee entrar a nuestro ordenador (INPUT) es obviarlo, no hacerle caso (DROP)

Nadie es bastante general, absoluto de hecho, ni ustedes mismos podrán navegar por internet ni nada, es por eso que debemos en esa terminal poner lo siguiente y presionar [Enter]:

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

… no entiendo una mierda, ¿qué hacen ahora esas dos líneas raritas?

Simple :)

La primera línea lo que dice es que el propio ordenador (-i lo … por cierto, lo = localhost) puede hacer lo que le plazca. Algo obvio, que puede parecer hasta absurdo… pero créanme, es tan importante como el aire jaja.

La segunda línea la explicaré usando el ejemplo/comparación/metáfora que usé antes, me refiero a comparar al ordenador con la casa :) Por ejemplo, supongamos que vivimos con más personas en nuestra casa (madre, padre, hermanos, novia, etc). Si alguna de estas personas sale de casa, ¿es obvio/lógico que dejaremos que entre una vez regrese no?

Precisamente eso es lo que hace esa segunda línea. Todas las conexiones que nosotros iniciemos (que salgan desde nuestro ordenador), cuando por esa conexión quiera entrar algún dato, iptables dejará que ese dato entre. Poniendo un ejemplo más para explicarlo, si usando nuestro navegador intentamos navegar por internet, sin estas 2 reglas no podremos, pues sí… el navegador se conectará a internet, pero cuando intente bajar datos (.html, .gif, etc) hacia nuestro ordenador para mostrárnoslo, no podrá pues iptables le negará la entrada de paquetes (datos), mientras que con estas reglas, como nosotros iniciamos la conexión desde dentro (desde nuestro ordenador) y esa misma conexión es la que intenta entrar datos, sí se le permitirá el acceso.

Con esto listo, ya tenemos declarado que nadie puede acceder a ningún servicio de nuestro ordenador, nadie excepto el propio ordenador (127.0.0.1) y además, excepto conexiones que se inicien en el propio ordenador.

Ahora, explicaré un detalle más de forma rápida, pues la 2da parte de este tutorial explicará y abarcará más sobre esto jeje, no quiero adelantar mucho :D

Sucede que por ejemplo, tienen un sitio web publicado en su ordenador, y desean que ese sitio web todos lo puedan ver, como antes declaramos que todo por defecto es NO permitido, excepto no se indique lo contrario, nadie podrá ver nuestro sitio web. Ahora haremos que cualquiera pueda ver el o los sitios webs que tengamos en nuestro ordenador, para ello ponemos:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Esto es muy simple de explicar :D

Con esa línea estamos declarando que acepte o permita (-j ACCEPT) todo tráfico al puerto 80 (–dport 80) que sea TCP (-p tcp), y que además sea tráfico entrante (-A INPUT). Puse puerto 80, porque ese es el puerto del host web, o sea … cuando un navegador intenta abrir un sitio de X ordenador, siempre mira por defecto en ese puerto.

Ahora … qué hacer cuando se sabe qué reglas poner, pero cuando reiniciamos el ordenador vemos que los cambios no se guardaron? … bueno, para eso ya hice otro tutorial hoy mismo:

Como iniciar reglas de iptables automaticamente

Ahí lo explico detalladamente :D

Y aquí termina el 1er tutorial sobre iptables para novatos, curiosos e interesados ;) … no se preocupen, no será el último jeje, el próximo tratará de esto mismo, pero reglas más específicas, detallando todo un poco más y aumentando en la seguridad. No deseo extender este mucho más, pues en realidad es necesario que las bases (esto que leyeron acá al inicio) lo entiendan a la perfección :)

Saludos y… venga, las dudas las aclaro, siempre que sepa la respuesta LOL!! (no soy ni de lejos un experto en esto jajaja)


KZKG^Gaara

KZKG^Gaara: Usuario de GNU/Linux y administrador de red desde hace algunos años. Intento mantenerme en el lado oscuro de la fuerza, pues es donde está lo divertido de la vida. Administrador y Fundador de todo esto que ven, pero uno más dentro de la familia.


No olvides dejar tu comentario

Tu dirección de correo electrónico no será publicada.

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *

  1. ezitoc lector
    • autor
  2. lector
  3. lector
    • autor
  4. lector
    • autor
  5. lector
  6. colonglz lector
  7. lector
    • autor
  8. lector
  9. lector
  10. lector
  11. lector
  12. lector
  13. lector
  14. lector
    • autor
  15. lector
    • autor
      • lector
        • autor
          • lector

DesdeLinux y DesdeFirefoxOS se encuentran felizmente hosteados en GNUTransfer