c.- Denegar la conexion al puerto 25, protocolo tcp, de la interfaz eth1
Para el resto de ejercicios emplearé una máquina virtual con tres interfaces:- eth0: 10.0.2.15 – NAT con la tarjeta física para salida a Internet
- eth1: 192.168.56.10 – red sólo anfitrión para comunicarse con otras máquinas virtuales
- eth2: 192.168.0.195 – modo puente para comunicarme vía inalámbrica con equipos de la red.
Para la realización de este ejercicio debemos poner la política por defecto a ACCEPT, ya que sino lo rechazaría sin que insertáramos ninguna nueva regla:
iptables -F
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
iptables -A FORWARD j ACCEPT
y para realizar las pruebas ponemos netcat a la escucha en el puerto 25 del equipo.
netcat -l -p 25
finalmente me conecto desde otro equipo virtual -la intefaz eth1 está conectada en modo sólo anfitrión- y me conecto empleando netcat en modo cliente a dicho puerto:
Vemos que conecta sin problemas, lo comprobamos desde iptraf, iptstate y wireshark:
Finalmente pruebo el listado de conexiones, dónde se puede ver que existe una conexión confirmada entre ambos equipos con: conntrack -L -s 192.168.56.102
Para denegar el tráfico simplemente inserto la siguiente regla:
iptables -A INPUT -p tcp --dport 25 -i eth1 -j DROP
y vemos cómo ahora nos aparece denegada la conexión, además en el listado detallado de iptables vemos como aparecen paquetes que se han ajustado a esa regla y han sido, por tanto, rechazados:
Inicio el servidor
Intento conectarme al puerto:
pero se puede apreciar fácilmente como iptables está denegando el tráfico destinado al puerto 25 de la interfaz eth1:
Dado que sólo hemos estamos filtrando el tráfico que entra por eth1 podríamos conectarnos desde cualquier otro interfaz, por ejemplo si hacemos un escáner -empleando nmap- del puerto 25, veremos como por la interfaz eth2 seguimos teniendo acceso al equipo al estar abierto:
y nos conectamos:
y vemos la conexión realizada, como siempre:
y desde wireshark:
No hay comentarios:
Publicar un comentario