Pour rendre certains services invisibles aux scans, les serveurs peuvent utiliser une fonctionnalité de Port Knocking.
Les ports sensibles ne sont ouverts qu'une fois une séquence particulière de paquets reçus, idéalement en UDP.
Cette fonctionnalité peut être implémentée directement dans le routeur, le firewall ou l'application.
Envoyer un unique paquet vide en UDP sur le port 1337
nc -u -z localhost 1337
Envoyer une série de paquets vides sur les port UDP 1337 4444 6666
nc -u -z localhost 1337 4444 6666
Envoyer un unique paquet contenant le message KnockKnockKnock sur le port UDP 1337
printf KnockKnockKnock | nc -u -q1 localhost 1337
Envoyer une série de paquets contenant le message KnockKnockKnock sur les port UDP 1337 4444 6666
for i in 1337 4444 6666; do printf Knock | nc -u -q1 localhost $i; done