Le port knocking se produit lorsque le port 22, par exemple vers le service SSH, est fermé par défaut, mais lors de l'envoi séquentiel de paquets vers d'autres ports du service knockd, par exemple 1234, 1111, 2321, le service le voit et ouvre le port 22 sur le pare-feu pour que vous puissiez vous connecter.
En termes simples - quand par défaut il n'y a pas de trou de serrure dans la porte, mais lorsque vous appuyez sur la porte dans un certain ordre, il apparaît.
D’une part, il semble que ce soit une bonne solution – mais ce n’est qu’un début. Si vous y réfléchissez, la solution est toujours mauvaise et voici pourquoi:
1. Nouveaux ports et un service supplémentaire
Le service lui-même ouvre des ports pour recevoir la séquence, et la présence de ports supplémentaires, quoi qu'il en soit, ne fait qu'ajouter des vulnérabilités.
2. Possibilité d'interception
Par défaut, le service knockd fonctionne sans cryptage et il est possible d'intercepter la séquence des paquets envoyés.
Il existe des solutions modifiées comme cryptknock où une chaîne spécifique est envoyée et une correspondance est vérifiée, mais le package lui-même n'a pas été mis à jour depuis 8 ans.
3. Script PHP comme alternative
Par exemple, si le port 443 est ouvert par défaut pour votre site, une option plus sûre serait un script php, qui à son tour permettra l'accès à ssh et ne nécessite aucun service supplémentaire.
4. Actions supplémentaires
Cette fonctionnalité implique des actions supplémentaires régulières, ce qui provoque de la fatigue, ce qui réduit la commodité de l'interaction et, par conséquent, l'efficacité du travail.
En conclusion, utiliser le port knocking est une mauvaise solution.
5. Proxy et VPN
Si nous parlons de sécurité et de commodité, surtout lorsqu'il est nécessaire de l'implémenter sur plusieurs serveurs, alors le port knoking ressemble à une méthode complètement improvisée lorsque vous pouvez simplement créer un VPS avec une IP statique et autoriser l'accès uniquement à partir de celui-ci. Cette option est la meilleure alternative, nous avons décrit les avantages d'un proxy dans l'article:
Proxy - en tant que serveur d'accès, nous augmentons la sécurité d'un serveur VPS