2. FAQ - Serveur¶
2.1. Comment modifier correctement mon certificat CA (SSL/TLS)¶
2.2. Quelle procédure dois-je suivre si mon serveur WAPT est hors service (incendie, inondation, destruction physique) ?¶
Note
Évaluer le degré d’urgence :
Déterminez si la situation nécessite une action immédiate. Par exemple :
Cas 1 : Si vous devez installer un nouveau paquet ou une mise à jour urgente, l’urgence est critique et une action rapide est nécessaire.
Cas 2 : Si vous n’utilisez pas régulièrement les mises à jour via WAPT, les nouveaux paquets, les déploiements ou les rapports, vous pouvez disposer de quelques jours, voire d’une semaine, avant d’agir.
Note
Si vous disposez d’une solution de sauvegarde externe, vous pouvez suivre cette documentation pour recréer facilement le serveur WAPT.
Cette solution ne s’applique que si vous disposez d’un Active Directory et de nombreux agents membres de votre AD.
1- Créer un nouveau serveur :
La solution la plus rapide est de recréer un serveur. Vous pouvez suivre les liens ci-dessous :
Vérifiez les conditions requises pour le serveur.
Installez le serveur selon le système d’exploitation.
Lancez la console WAPT et créez un agent.
2- Créer une GPO qui modifie plusieurs paramètres dans le wapt-get.ini file :
Avant cela, consultez le fichier wapt-get.ini existant sur vos agents. Notez les paramètres qui doivent être modifiés afin de diriger vos agents vers votre nouveau serveur.
Avertissement
Si vous utilisiez des paquets de configuration WAPT, vous devez également modifier la section [default-global].
GPO pour le fichier ini.¶
Dans cette image, nous modifions la ligne de paramètre verify_cert pour épingler le nouveau certificat du serveur WAPT. D’autres modifications peuvent bien sûr être nécessaires.
Cela permettra aux agents de basculer vers le nouveau serveur et de rétablir le contrôle sur les machines.
3- Mettre en place des sauvegardes externes régulières :
Enfin, la meilleure solution consiste à effectuer des sauvegardes régulières. Cela permettra de restaurer rapidement un clone en cas de défaillance.
2.3. Serveur WAPT derrière un reverse proxy¶
Avertissement
Les reverse proxy (WAF, etc.) effectuant une interception ou une terminaison TLS ne sont plus pris en charge. Si un reverse proxy est placé en amont du serveur WAPT, il doit être configuré comme un simple proxy de transfert TLS basé sur le SNI ; il ne doit en aucun cas déchiffrer ni inspecter lui-même le trafic TLS. L’analyse TLS est effectuée directement sur le serveur WAPT, et non sur le reverse proxy.
Concrètement, cela signifie que le reverse proxy doit utiliser le module « stream » de NginX (voir « ngx_stream_core_module ») au lieu du bloc HTTP « server » standard. Le module « stream » transfère de manière transparente le flux TLS brut vers le serveur WAPT en fonction du nom d’hôte demandé (SNI), sans interrompre ni inspecter le trafic HTTPS ; aucun certificat n’est impliqué du côté du reverse proxy, et aucune configuration HTTP n’est nécessaire.
Comment le client se connecte au serveur WAPT
L’agent WAPT ne sait pas s’il se trouve sur le réseau interne ou sur Internet : il se contente de résoudre le nom d’hôte du serveur configuré via le DNS et se connecte à l’adresse IP renvoyée par le DNS. Cela signifie que la décision de routage (connexion directe ou reverse proxy) s’effectue entièrement au niveau du DNS, et non au sein de l’agent WAPT lui-même :
Sur le réseau interne : votre serveur DNS interne doit résoudre le nom d’hôte du serveur WAPT directement en adresse IP interne du serveur WAPT, en contournant complètement le reverse proxy.
Depuis l’extérieur du réseau (sans VPN) : votre DNS public/externe doit faire correspondre ce nom d’hôte à l”adresse IP publique du reverse proxy, qui transmettra ensuite le flux TLS au serveur WAPT interne.
Prérequis
Vérifiez que le module « stream » est bien installé sur le serveur reverse proxy NginX :
Debian / Ubuntu :
libnginx-mod-streamRedHat et derivés :
nginx-mod-stream
Configuration
Créez (ou modifiez) le fichier « /etc/nginx/modules-enabled/80-stream.conf » sur le serveur reverse proxy Nginx :
stream {
tcp_nodelay on;
map $ssl_preread_server_name $https_upstream {
wapt.mydomain.com 192.168.2.5:443; # 192.168.2.5 is the local IP address of the WAPT server
}
server {
listen 443;
resolver 127.0.0.1;
proxy_pass $https_upstream;
ssl_preread on;
}
}
Note
Ce bloc « stream » ne doit pas être associé à un bloc « server » HTTP ou à une directive « default_server » sur le même reverse proxy ; l’intérêt de cette configuration est justement de transférer le flux TLS brut sans aucun traitement au niveau HTTP. Vérifiez également que ce fichier est bien chargé en recherchant une directive « include » correspondante dans « /etc/nginx/nginx.conf » ; certaines installations par défaut de Nginx n’incluent pas automatiquement les fichiers du répertoire « modules-enabled ».
2.3.1. Conditions d’obtention du certificat¶
Étant donné que le reverse proxy ne met jamais fin à la connexion TLS, la vérification du certificat HTTPS s’effectue entièrement côté client, par rapport au certificat propre au serveur WAPT — le reverse proxy est invisible pour cette vérification. Par conséquent, le nom commun (ou l’un des noms alternatifs du sujet) du certificat doit correspondre au nom du serveur configuré dans l’agent WAPT, et non à l’identité du reverse proxy lui-même.
2.3.2. Vérification de la configuration¶
Pour vérifier que les connexions externes parviennent bien au serveur WAPT via le reverse proxy, consultez les fichiers journaux suivants directement sur le serveur WAPT (et non sur le reverse proxy) :
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log
Recherchez les adresses IP sources correspondant à vos clients externes. Si aucune connexion externe n’apparaît ici, vérifiez à nouveau la résolution DNS externe et la configuration « stream » du reverse proxy décrite ci-dessus.
Note
Une configuration similaire est possible à l’aide du module TLS Passthrough d’HAProxy, mais celle-ci n’est pas prise en charge par notre service d’assistance. Veuillez vous reporter à la documentation d’HAProxy pour plus de détails.
Attention
Le support des reverse proxy (WAF, etc.) effectuant des interceptions TLS ou des terminaisons TLS n’est plus supporté. Si vous avez un reverse proxy devant le serveur WAPT, il doit être configuré comme un simple proxy de transfert TLS basé sur SNI (cf. ngx_stream_core_module sur le serveur nginx, par exemple).
Tout d’abord, vous devez vérifier si le paquetage du module stream (libnginx-mod-stream sur Debian / Ubuntu, nginx-mod-stream sur RedHat et dérivés) est installé sur le serveur NginX Reverse Proxy.
Ensuite, vous pouvez insérer le contenu suivant dans
/etc/nginx/modules-enabled/80-stream.confdu serveur Reverse Proxy de NginX :
stream {
tcp_nodelay on;
map $ssl_preread_server_name $https_upstream {
wapt.mydomain.com 192.168.2.5:443; # 192.168.2.5 is the local IP address of the WAPT server
}
server {
listen 443;
resolver 127.0.0.1;
proxy_pass $https_upstream;
ssl_preread on;
}
}
Une configuration similaire est possible en utilisant le module HAProxy TLS Passthrough, mais nous ne fournissons pas de support. Veuillez vous référer à la documentation correspondante pour plus de détails.
2.4. Réinitialisation du mot de passe du serveur WAPT Linux¶
Il arrive parfois que l’on installe un serveur WAPT et que l’on oublie son mot de passe.
Pour réinitialiser le mot de passe de la console WAPT SuperAdmin, vous devez relancer le processus de post-configuration sur le serveur WAPT :
Connectez-vous au serveur WAPT avec SSH.
Connectez-vous avec l’utilisateur root (ou utilisez sudo).
Lancez le script de configuration postconfiguration.
2.5. Problèmes lors de l’activation de enable-check-certificate¶
2.5.1. Message « Certificate CN ### sent by the WAPT Server does not match URL host ### »¶
Cela signifie que le CN du certificat envoyé par le serveur WAPT ne correspond pas à la valeur de l’attribut wapt_server dans le fichier wapt-get.ini de l’agent WAPT.
Il y a deux solutions :
Vérifier la valeur de
wapt_serverdans le fichierwapt-get.inide l’agent WAPT.
Si la valeur est correcte, Cela signifie surement que cette erreur apparaît durant la génération du certificat auto-signé durant l’étape de post_configuration du serveur WAPT (typing error, …).
Vous DEVEZ ensuite regénérer vos certificats auto-signé.
Sur le serveur WAPT, supprimez le contenu du dossier
/opt/wapt/waptserver/apache/ssl/.
Ensuite, relancez le script de post-configuration (le même que celui utilisé lors de l’installation initiale, avec les mêmes arguments et valeurs).
Ensuite, assurez-vous que la valeur de FQDN pour le serveur WAPT est correcte.
Vous pouvez maintenant réessayer enable-check-certificate.
2.6. Qu’est-ce qui peut se passer pendant les mises à jour de WAPTserver ?¶
Le problème le plus courant lors du processus de mise à niveau est le blocage de l’installation par l’antivirus local (WAPT est un logiciel d’installation qui maintient un websocket ouvert vers un serveur de gestion central, de sorte que ce comportement peut être signalé comme suspect par un antivirus, même si cette méthode est la base de la gestion des points finaux…). Si vous rencontrez un problème lors du déploiement de la mise à jour, veuillez vérifier votre console antivirus et mettre waptagent.exe sur liste blanche. Une autre option est de re-signer le binaire waptagent.exe si votre organisation dispose d’un certificat de signature de code interne.
Le deuxième problème le plus courant est que, pour une raison quelconque, un autre programme verrouille une DLL fournie avec WAPT. Cela peut se produire avec des programmes d’installation mal conçus qui récupèrent d’abord la variable locale
%PATH%avant de trouver la DLL openssl ou python de WAPT.Le troisième problème le plus courant est une installation défectueuse de Windows, qui n’exécute pas correctement les tâches planifiées, et oui, nous l’avons vu !