Autorisation de paquet unique
PortGuard
PortGuard offre une technologie robuste d'autorisation de paquet unique pour protéger votre réseau contre les accès non autorisés, y compris les menaces d'analyse de port.
Téléchargez maintenant, interface graphique multiplateforme
Interface graphique multiplateforme
Télécharger pour Windows
fwknopc_2_6_11_x64-setup.exe
Télécharger pour Macos
fwknopc_2_6_11_x64.pkg
Télécharger pour Android
fwknopc_2_6_11_x64.apk
Serveur Fwknop pour CentOS 7
Nom de fichier | Dernière modification | MD5 |
---|---|---|
fwknop-server-2.6.11-1.el7.x86_64.rpm | 2025-07-29 |
1a375f89c2aa16935ddce164ad16adad
|
libfko-3.0.0-1.x86_64.rpm | 2025-07-29 |
7f720f1f444f1634bab7cadbbfec40b2
|
1. Pourquoi ai-je développé PortGuard ?
J'ai découvert le concept d'autorisation de paquet unique (SPA) lors d'une conversation informelle avec des collègues. Auparavant, je ne connaissais pas le port knocking ou SPA. Notre entreprise avait besoin d'une solution de port knocking et, après avoir étudié la documentation pertinente, j'ai découvert fwknop. Le concept de fwknop était vraiment impressionnant : pour les services accessibles à un nombre restreint de personnes, fwknop est une excellente solution. Nous avons envisagé de développer notre propre outil, mais fwknop était bien plus abouti. Cependant, fwknop présente des inconvénients : il est complexe, son installation et son utilisation nécessitent une prise en main rapide, et il ne dispose pas d'application client dédiée. C'est ce qui a conduit à la création de PortGuard. L'objectif de PortGuard est de prendre en charge les protocoles de port knocking courants tels que fwknop et, à l'avenir, tnok, tout en offrant un client multiplateforme. Conçu comme une extension de fwknop et tnok, PortGuard vise à rendre la technologie SPA plus conviviale et accessible.
2. Plateformes prises en charge par le client PortGuard
Actuellement, PortGuard prend en charge les plates-formes suivantes :
- iOS
- Android
- Windows
- macOS
3. Cas d'utilisation de PortGuard
La fonctionnalité principale de PortGuard est d'améliorer la sécurité du réseau en masquant les ports de service (fermés par défaut), et il convient aux scénarios suivants :
3.1 Protéger les services d'accès à distance (par exemple SSH)
Scénario :Les administrateurs doivent accéder en toute sécurité aux services SSH à partir de différents emplacements (par exemple, domicile, café, réseau mobile) sans exposer le port SSH au réseau public.
Mise en œuvre: Utilisez fwknop ou tnok, le client envoie des paquets de données SPA ou des paquets TOTP knock, et le serveur vérifie et ouvre temporairement le port SSH (par défaut 22) après vérification.
Avantages : Empêchez Nmap et d’autres outils d’analyse de ports de découvrir des services, réduisant ainsi le risque d’exploitation de vulnérabilités zero-day.
Exemple: Les membres de l'équipe distante utilisent le client fwknop pour envoyer des paquets de données SPA sur des appareils Windows ou Android, et accéder en toute sécurité aux serveurs internes de l'entreprise.
3.2 Protection des services dans les environnements cloud
Scénario :Les services internes (par exemple, les bases de données, les serveurs Web) dans AWS, Azure et d'autres plates-formes cloud doivent être accessibles via le réseau public, mais il faut éviter que les ports soient directement exposés.
Mise en œuvre: PortGuard s'intègre à NAT pour permettre aux clients externes d'accéder aux services internes dans l'espace d'adressage RFC 1918 via SPA.
Avantages : Prend en charge les topologies de réseau complexes, adaptées aux environnements cloud hybrides et multi-locataires.
Exemple: Exécutez fwknopd sur les instances AWS EC2, ouvrez dynamiquement le port MySQL (3306) pour que les utilisateurs autorisés puissent y accéder.
3.3 Se défendre contre l'analyse des ports et la force brute
Scénario :Les serveurs sont confrontés à des analyses de ports (par exemple, Nmap) ou à des attaques par force brute et doivent masquer les ports de service pour réduire la surface d'attaque.
Mise en œuvre: PortGuard maintient la politique de pare-feu par défaut, en ouvrant uniquement les ports après avoir reçu des paquets de données SPA valides.
Avantages : Même s’il existe des vulnérabilités non corrigées, les attaquants ne peuvent pas découvrir les ports de service.
Exemple: Empêchez la force brute SSH, fwknop ouvre uniquement les ports après avoir vérifié HMAC.
3.4 Prise en charge de la protection de plusieurs services
Scénario :Les entreprises doivent protéger plusieurs services (par exemple, SSH, RDP, VPN, base de données), mais ne souhaitent pas que tous les ports soient ouverts en permanence.
Mise en œuvre: fwknop prend en charge la définition de plusieurs services et ports dans access.conf, et le client peut spécifier le protocole et le port cible.
Avantages : Configuration de règle flexible, prise en charge des stratégies de délai d'expiration et d'ouverture de port personnalisées.
Exemple: Configurez fwknop pour protéger à la fois SSH (tcp/22) et OpenVPN (udp/1194).
3.5 Sécurité des appareils embarqués ou IoT
Scénario :Les appareils IoT ou les systèmes embarqués nécessitent une gestion à distance, mais les ressources de l'appareil sont limitées et vulnérables aux attaques.
Mise en œuvre: Exécutez fwknopd ou tnokd léger sur des périphériques à ressources limitées, contrôlez l'accès via SPA ou TOTP.
Avantages : Faible consommation de ressources, adapté aux petits appareils.
Exemple: Protégez le service Web exécuté sur Raspberry Pi.
3.6 Intégration d'appareils tiers
Scénario :Besoin d'intégrer des appareils qui ne prennent pas en charge fwknop natif (par exemple, les routeurs Cisco), contrôler les règles de pare-feu.
Mise en œuvre: La fonctionnalité de cycle d'ouverture/fermeture de commande (command open/close cycle) de fwknop permet d'exécuter des scripts personnalisés pour modifier dynamiquement l'ACL des périphériques tiers.
Avantages : Extensible, prend en charge les périphériques pare-feu non standard.
Exemple: Exécutez fwknopd sur les serveurs Linux, mettez à jour l'ACL des routeurs Cisco via SSH.
3.7 Détails techniques
- fwknop prend en charge la définition du délai d'expiration (CMD_CYCLE_TIMER), le port ouvert se ferme automatiquement, réduisant ainsi le temps d'exposition.
- Peut être combiné avec un VPN (par exemple, WireGuard, OpenVPN) pour créer un réseau privé sécurisé.
- Prend en charge l'analyse d'en-tête X-Forwarded-For, adapté au SPA dans l'environnement HTTP.
4. Dans quelle mesure PortGuard est-il sécurisé ?
La sécurité de PortGuard repose principalement sur le mécanisme d'autorisation de paquet unique (SPA) de fwknop, associé au chiffrement, à l'authentification et à l'intégration d'un pare-feu, pour une protection multicouche. Voici une analyse détaillée de la sécurité :
4.1 Cryptage et authentification
Cryptage : fwknop prend en charge le chiffrement symétrique Rijndael (AES) ou le chiffrement asymétrique GnuPG, et le contenu du paquet de données SPA ne peut pas être directement analysé.
Authentification: Utilisez HMAC-SHA256 (par défaut) ou des versions supérieures pour l’authentification des paquets de données, garantissant l’intégrité des données et la confiance de la source.
Sécurité: Prévenir les attaques de type « man-in-the-middle » (MITM) et les attaques par relecture, HMAC appliqué après le chiffrement, résistance aux attaques Oracle de remplissage en mode CBC (par exemple, attaques Vaudenay).
Limites: Le chiffrement symétrique nécessite des clés partagées entre le client et le serveur, une mauvaise gestion des clés peut entraîner des fuites ; le mode GnuPG nécessite la maintenance des trousseaux de clés,
4.2 Empêcher l'analyse des ports
Mécanisme: PortGuard utilise la politique de pare-feu par défaut et le port de service est invisible lorsqu'il n'est pas autorisé, donc Nmap et d'autres outils ne peuvent pas le détecter.
Sécurité: Réduit considérablement la surface d'attaque, même s'il existe des vulnérabilités zero-day, les attaquants ne peuvent pas localiser le port de service.
Limites: Si le paquet de données de knock est reniflé (le knocking de port traditionnel est plus sensible à cela), les attaquants peuvent tenter une relecture (SPA a résolu ce problème via HMAC).
4.3 Résister à la force brute
Mécanisme: Les paquets de données SPA doivent être correctement chiffrés et authentifiés HMAC, la force brute est presque impossible (les paquets de données avec HMAC défaillant sont rejetés directement).
Sécurité: Par rapport au port knocking traditionnel, la conception à paquet unique et le mécanisme de cryptage de SPA améliorent considérablement la capacité à résister à la force brute.
Limites: Des erreurs de configuration (par exemple, des clés faibles ou un HMAC désactivé) peuvent réduire la sécurité.
✨ Caractéristiques




Les gens ❤️ Fwknop

John

Michael

James

David

Olivia

William