Port Knocking instalación y configuración

port knocking

En la entrada de hoy vamos a ver cómo configurar port knocking (golpeo de puertos). Gracias a port knocking, no será necesario tener abiertos determinados puertos en el servidor, podremos abrirlos y cerrarlos cuando lo necesitemos, enviando al servidor una combinación de puertos previamente configurada y solo se permitirá el acceso desde la ip del cliente que ha enviado esa combinación de puertos. En este ejemplo vamos a ver cómo configurar port knocking para el servicio ssh.

Instalamos los paquetes necesarios:

$ sudo apt-get install knockd

Editamos el fichero “/etc/default/knockd” y modificamos el valor de “START_KNOCKD” a 1, con esto haremos que el servicio arranque al inicio. También le indicamos la interfaz en la que habilitaremos el port knocking(en el ejemplo la eth0):

$ sudo nano /etc/default/knockd

/etc/default/knockd

Editamos el fichero “/etc/knockd.conf“. En este fichero es donde configuraremos los diferentes servicios en los que queramos habilitar el port knocking. En el ejemplo vemos la configuración por defecto que trae configurada para el servicio ssh. Recomiendo que modifiquéis la secuencia de puertos a otros que no sean los que trae por defecto. Si el ssh lo tenéis configurado para que escuche en otro puerto, también tendréis que modificar en el comando el puerto de destino al que corresponda con el de vuestro servidor ssh:

$ sudo nano /etc/knockd.conf

/etc/knockd.conf

Una vez configurado, iniciamos el servicio:

$ sudo service knockd start

Comprobamos las reglas de iptables y vemos que el actualmente no tengo configurada ninguna regla que permita el acceso ssh al servidor:

reglas iptables

Para configurar vuestras reglas en el firewall podéis hacerlo editando el fichero “/etc/rc.local“. En la siguiente captura os muestro un ejemplo de como lo tengo configurado yo para este caso:

/etc/rc.local

Como veis, en mi configuración de iptables, las políticas por defecto no aceptan ningún paquete y posteriormente he creado las reglas especificas para el tipo de tráfico que necesito permitir en el servidor.

Para el tráfico entrante, permito el acceso a los puertos udp 9777 y tcp 80 y 8080, solo desde mi red local. Permito que el servidor responda las peticiones ICMP(ping). Permito todo al propio servidor y en la última regla de entrada, permito solo las conexiones establecidas o relacionadas con las ya establecidas, pero no nuevas conexiones.

En cuanto al tráfico saliente, permito tanto las nuevas conexiones, como las ya establecidas o relacionadas…

Esto es tan solo un pequeño ejemplo, vosotros tendréis que realizar la configuración acorde a vuestras necesidades especificas.

Ahora es el momento de comprobar el correcto funcionamiento del port knocking desde un cliente. Para ello también instalaremos en el cliente el paquete “knockd“.

$ sudo apt-get install knockd

Una vez instalado, ejecutamos el comando “knock” seguido de la IP del servidor y de la combinación de puertos que hemos definido en el servidor(el parámetro -v es opcional, tan solo nos mostrará por pantalla las peticiones a los diferentes puertos):

$ knock -v 192.168.1.10 7000:tcp 8000:tcp 9000:tcp

comando knock

Ahora podremos conectarnos al servidor por ssh y podemos comprobar como se ha creado la nueva regla levantando el puerto ssh solo para la ip del cliente desde el que hemos ejecutado el knock:

puerto ssh abierto

Ahora para cerrar de nuevo el puerto ssh, enviaremos la combinación de puertos que tengamos definida en el fichero de configuración:

$ knock -v 192.168.1.10 9000:tcp 8000:tcp 7000:tcp

En el ejemplo la comprobación se ha realizado desde otro equipo linux, pero podemos encontrar clientes knock también para windows, android, ios…

Anuncios

0 Responses to “Port Knocking instalación y configuración”



  1. Dejar un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




TELDAT CTI
VCA-DCV
JNCIA
CCNA

Introduce tu correo electrónico y recibe todas las actualizaciones

Únete a otros 146 seguidores

enero 2017
L M X J V S D
« Dic    
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

Actualizaciones de Twitter

Blog Stats

  • 422,701 Visitas
Creative Commons

A %d blogueros les gusta esto: