Es un metodo para abrir puertos desde un host remoto en un firewall mediante una secuencia de intentos de conexión a puertos que debe establecer con anterioridad que se encuentran cerrados. Cuando esta secuencia de “golpes” a los puertos es coincidente con el orden establecido, las reglas del firewall se modifican para permitir al host que introdujo la secuencia conectarse a un host predeterminado.

Este metodo es usado como un nivel de seguridad, ya que se evita el escaneo de puertos por parte de un intruso, ya que estos puertos solo se abren mediante una secuencia de “golpes”, normalmente se encuentran cerrados.

Implementar Port-Knocking es bastante facil, para este procedimiento usare dos maquinas virtuales de backtrack y se deben seguir estos pasos.

* Intalar tanto en el servidor como en el cliente el demonio para el Port-Knocking con el comando apt-get install knockd

* Vamos a editar los archivos /etc/default/knockd

* En este archivo, cambiaremos el 0 por un 1, para que el demonio se inicie automáticamente; y ademas estableceremos la intefaz por la cual el demonio escuchara. (En las dos maquinas)

* En el servidor, estableceremos la secuencia de “golpes” para abrir o cerrar un puerto determinado, ademas del protocolo con el que se deben ejecutar estos golpes.

* Reiniciamos el servicio en ambas maquinas.

/etc/init.d/knockd restart

* Como este procedimiento lo estoy realizando desde maquinas virtuales, configurare las maquinas en red interna.

* Realizamos un escaneo de puertos desde el cliente al servidor, para verificar que el puerto ssh se encuentre cerrado.

* Realizamos el correspondiente “golpeteo” de puertos.

* Verificamos que el puerto haya sido abierto exitosamente.

Con esto el host desde el cual se hizo el Port-Knocking, estara habilitado para conectarse al servidor por el puerto 22 (ssh).