El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

download El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

of 3

Transcript of El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

  • 8/17/2019 El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

    1/3

    El cortafuegos utilizado para gestionar las conexiones en Linux es iptables. Las posibilidadesde iptables son prácticamente infinitas y un administrador que quiera sacarle el máximoprovecho, puede realizar configuraciones extremadamente complejas. Para simplificar, diremosque básicamente, iptables permite crear reglas que analizarán los paquetes de datos queentran, salen o pasan por nuestra máquina, y en funcin de las condiciones queestablezcamos, tomaremos una decisin que normalmente será permitir o denegar que dicho

    paquete siga su curso.

    El cortafuegos controla las comunicaciones entre la red y el exterior 

    Para crear las reglas, podemos analizar muchos aspectos de los paquetes de datos. Podemos

    filtrar paquetes en funcin de!

    Tipo de paquete de datos:

    • "ipo #$P%"! paquetes que llegan a nuestra máquina

    • "ipo &%"P%"! paquetes que salen de nuestra máquina

    • "ipo '&()*(+! paquetes que pasan por nuestra máquina

    Interfaz por la que entran (-i = input) o salen (-o = output) los paquetes

    • eth, eth-, lan, ppp, ...

    IP origen de los paquetes (-s = source)

    • #P concreta, ej! -..-./

    • (ango de red, ej! -..-.01

    IP destino de los paquetes (-d = destination)

    • #P concreta, ej! -..-./

    • (ango de red, ej! -..-.01

  • 8/17/2019 El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

    2/3

    Protocolo de los paquetes (-p = protocol)

    • "cp, udp, icmp...

    Hacer !T (modificar IP origen y destino para conectar nuestra red a otra red o a

    Internet) y"""

    • 'iltrar antes de enrutar! P(E(&%"#$2

    • 'iltrar despu3s de enrutar! P&4"(&%"#$2

    #os paquetes pueden entrar$ salir o pasar 

    %na forma sencilla de trabajar con iptables es permitir las comunicaciones que nos interesen y

    luego denegar el resto de las comunicaciones. Lo que se suele hacer es definir la pol5tica por

    defecto aceptar 6*77EP"8, despu3s crear reglas concretas para permitir las comunicaciones

    que nos interesen y finalmente, denegar el resto de comunicaciones. Lo mejor será crear un

    script en el que dispondremos la secuencia de reglas que queremos aplicar en nuestro sistema.

    %n ejemplo t5pico podr5a ser el siguiente!

    9:0bin0sh

    9 4cript cortafuegos.sh para la configuracin de iptables

    9

    9 Primero borramos todas las reglas previas que puedan existir 

    iptables ;'

    iptables ;<

    iptables ;=

    iptables ;t nat ;'

    9 +espu3s definimos que la politica por defecto sea *7EP"*(

    iptables ;P #$P%" *77EP"

    iptables ;P &%"P%" *77EP"

    iptables ;P '&()*(+ *77EP"

    iptables ;t nat ;P P(E(&%"#$2 *77EP"

    iptables ;t nat ;P P&4"(&%"#$2 *77EP"

    9 Para evitar errores en el sistema, debemos aceptar 

    9 todas las comunicaciones por la interfaz lo 6localhost8

    iptables ;* #$P%" ;i lo ;j *77EP"

    9 *ceptamos las comunicaciones que nos interesan y luego denegamos el resto.

    9 Ejemplo! +enegamos acceso al aula -

    iptables ;* '&()*(+ ;s -..-.0>? ;j +(&P

  • 8/17/2019 El Cortafuegos Utilizado Para Gestionar Las Conexiones en Linux Es Iptables

    3/3

    9 *ceptamos 4@"P, P&P/ y '"P 6correo electrnico y ftp8

    iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport >A ;j *77EP"

    iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport -- ;j *77EP"

    iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport > ;j *77EP"

    iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport >- ;j *77EP"

    9 B""P y B""P4 no es necesario porque nuestro servidor será servidor proxy

    9 +ejamos comentadas las l5neas, por si algCn d5a las necesitamos

    9iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport 1 ;j *77EP"

    9iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport ??/ ;j *77EP"

    9 +$4 no es necesario porque nuestro servidor será servidor +$4

    9 +ejamos comentadas las l5neas 6tcp y udp8, por si algCn d5a las necesitamos

    9iptables ;* '&()*(+ ;s -...01 ;p tcp ;;dport A/ ;j *77EP"

    9iptables ;* '&()*(+ ;s -...01 ;p udp ;;dport A/ ;j *77EP"

    9 *l P7 del +irector le damos acceso a todo 6cliente D#P8

    iptables ;* '&()*(+ ;s -... ;j *77EP"

    9 +enegamos resto de comunicaciones 6no funcionará el p>p8

    iptables ;* '&()*(+ ;s -...01 ;j +(&P

    9 Bacemos $*" si #P origen -...01 y salen por eth

    iptables ;t nat ;* P&4"(&%"#$2 ;s -...01 ;o eth ;j @*4F%E(*+E

    9 *ctivamos el enrutamiento

    echo - G 0proc0sys0net0ipv?0ipHforard

    9 7omprobamos cmo quedan las reglas

    iptables ;L ;n

    En el script anterior vemos una serie de reglas que se van a ir ejecutando secuencialmente

    conformando la configuracin del cortafuegos iptables. 7uando indicamos I;* '&()*(+I nos

    referimos a paquetes que van a pasar por nuestro servidor. &tras opciones son I;* #$P%"I y I;

     * &%"P%"I. *cto seguido ponemos las condiciones. 4i ponemos I;s -...01I nos referimos

    a paquetes cuya #P origen está en el rango -...01. 7uando ponemos I;p tcpI nos referimos

    a paquetes que utilizan el protocolo tcp. 7uando indicamos I;;dport >AI nos referimos a

    paquetes cuyo puerto de destino es el >A, es decir, protocolo 4@"P 6correo saliente8. 4i en una

    regla no ponemos la condicin ;p ni la condicin ;;dport, significa que no nos importa el

    protocolo 6cualquier protocolo8 ni nos importa el puerto destino 6cualquier puerto destino8. Por

    ejemplo, en la regla donde damos acceso al P7 del +irector, no hemos indicado ni protocolo ni

    puerto, por lo que dejará pasar todos los protocolos y todos los puertos