1. Problèmes et questions fréquents

1.1. Serveur WAPT derrière un proxy inverse

Attention

Le support des reverse proxy (WAF, etc.) effectuant des interceptions TLS ou des terminaisons TLS n’est plus supporté. Si vous avez un proxy inverse 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 Reverse Proxy NginX.

  • Vous pouvez ensuite insérer le contenu suivant dans le fichier /etc/nginx/modules-enabled/80-stream.conf du serveur NginX Reverse Proxy :

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 avec le module HAProxy TLS Passthrough, mais nous n’en assurons pas le support. Veuillez vous référer à la documentation correspondante pour plus de détails.

1.2. Mise à jour des paquets WAPT de Python 2 à Python 3

Attention

Avec WAPT 2.0, le fonctionnement interne de WAPT est passé à python3. Les paquets WAPT DOIVENT aussi suivre la nouvelle syntaxe python3.

Les principales différences de syntaxe

Syntaxe

Python 2

Python 3

imprimer

print'Hello'

print('Hello')

unicode string

ur

r

opérateurs

<> <=> !=

!=

Accès à la base de registre Windows

_winreg

winreg

1.3. Réinitialiser le mot de passe du Serveur WAPT Linux

Il arrive parfois de configurer un Serveur WAPT et d’oublier son mot de passe.

Pour réinitialiser le mot de passe SuperAdmin de la Console WAPT, vous devez relancer le processus de post-configuration sur le Serveur WAPT :

1.4. J’ai perdu ma clé privée WAPT

La sécurité et le bon fonctionnement de WAPT s’appuient sur les jeux de clés privés et de certificats publics.

La perte d’une clé privée nécessite donc de regénérer une nouvelle clé et les certificats associés, et ensuite déployer sur le parc de machines les certificats pour la nouvelle clé.

Par conséquent, perdre la clé entraîne quelques problèmes, la procédure de récupération n’est pas anodine, même si elle est simple.

1.4.1. Procédure de renouvellement ou de création d’une clé privée

La procédure va être la suivante :

  • Générer une nouvelle clé privée/certificat public. Vous conserverez alors la clé privée (fichier .pem) dans un endroit sûr ;

  • Déployer manuellement avec une GPO ou en utilisant un rôle Ansible (non documenté), le nouveau certificat .crt sur vos clients dans le dossier ssl.

    • C:\Program Files (x86)\ssl sur Windows ;

    • /opt/wapt/ssl sur Linux et macOS.

1.4.2. Re-signer les paquets dans le dépôt

Les paquets WAPT du dépôt local étant signés avec l’ancienne clé, il convient de re-signer l’intégralité des paquets avec la nouvelle clé :

1.5. Je me suis fait voler ma clé privée

Attention

Toute la sécurité de WAPT repose sur la séquestration de cette clé privée.

WAPT ne gère pas encore la révocation des clés en utilisant une CRL.

La solution consiste à supprimer chaque certificat .crt associé à la clé privée volée, situé dans le dossier ssl :

  • C:\Program Files (x86)\ssl sur Windows ;

  • /opt/wapt/ssl sur Linux et macOS.

Cette opération peut être effectuée à l’aide d’une GPO, manuellement, avec un paquet WAPT ou avec un rôle Ansible (non documenté).

Enfin, vous devrez suivre les mêmes étapes que pour la perte de votre clé privée.

1.6. Mon UUID BIOS bogue

  • Il arrive parfois qu’un problème survienne avec certains BIOS. WAPT utilise l”UUID de la machine comme identifiant pour reconnaître les machines.

  • L”UUID BIOS est censé être unique, malheureusement chez certains constructeurs et pour certaines séries de machines, les UUID des BIOS sont identiques.

  • Le PC remontera bien dans la console mais il écrasera le PC déjà présent considérant que l’ordinateur a changé de nom.

1.6.1. Résoudre des problèmes de UUID BIOS

WAPT permet de générer un UUID aléatoire pour remplacer celui indiqué dans le BIOS.

wapt-get generate-uuid

L’agent WAPT FQDN peut être utilisé à la place du UUID. Dans le fichier de configuration wapt-get.ini, définissez dans la section [global] :

use_fqdn_as_uuid = True

1.7. Mon WAPT Deploy ne fonctionne pas

L’utilitaire waptdeploy n’arrive pas à installer l’agent WAPT.

1.7.1. Lancer WAPTdeploy localement

Lancer waptdeploy localement peut mettre en évidence un problème en affichant explicitement les erreurs.

Attention

Ne pas oublier de lancer l’invite de commande en tant qu”Administrateur Local.

Exemple de commande à lancer :

C:\Program Files (x86)\wapt\waptdeploy.exe --hash=2a9971aad083d6822b6e4d1ccfb9886be9429ec58bb13246810ff3d6a56ce887 --minversion=2.1.0.10550 --wait=15 --waptsetupurl=https://srvwapt.mydomain.lan/wapt/waptagent.exe

Dans notre cas, le hachage de l’utilitaire WAPT Deploy n’est pas correct.

Erreur avec le hachage de l'utilitaire WAPT Deploy dans une fenêtre de terminal texte

Erreur avec le hachage de l’utilitaire WAPT Deploy dans une fenêtre de terminal texte

1.7.1.1. WAPT Deploy fonctionne manuellement mais ne fonctionne pas via GPO

Vérifier que le port 8088 écoute correctement sur l’hôte :

gpresult /h gpo.html & gpo.html

Pour forcer l’application des GPO :

gpupdate /force

Si waptdeploy n’apparaît pas, il faut re-vérifier la configuration de la GPO :

  • Il se peut que vous utilisiez une ancienne version de l’utilitaire WAPT Deployment, alors téléchargez la dernière version de l’utilitaire WAPT Deployment à partir de la page Web du Serveur WAPT.

  • Merci à Emmanuel EUGENE de l’institution de recherche publique française INSERM qui a soumis cette cause possible du mauvais fonctionnement de l’utilitaire de déploiement WAPT, si vous répliquez des contrôleurs de domaine, assurez-vous que les GPO sont correctement synchronisées entre vos DC et que les ACL sont appliquées de manière identique sur les répertoires Sysvol.

1.8. Windows n’attend pas le réseau au démarrage

Par défaut Windows n’attend pas le réseau au démarrage de la machine.

Cela peut poser soucis pour l’exécution de waptdeploy car celui-ci a besoin du réseau au démarrage pour télécharger l’Agent WAPT.

Il y a 2 solutions :

  1. Nous vous recommandons d’ajouter waptdeploy.exe aux script de démarrage et d’extinction sur la GPO.

  2. Vous pouvez activer la GPO : Toujours attendre le réseau au démarrage de l’ordinateur et à la connexion avec Configuration de l’ordinateur ‣ Modèles d’administration ‣ Système ‣ Connexion ‣ Toujours attendre le réseau au démarrage de l’ordinateur et à la connexion

GPO pour attendre la connexion réseau

GPO pour attendre la connexion réseau

1.9. WAPT Exit ne se lance pas

Malgré la présence du script dans les stratégies locales d’arrêt de la machine, waptexit.exe ne se lance pas à l’extinction du poste.

1.9.1. Hybrid Shutdown

Il faut désactiver l’arrêt hybride de Windows10, qui cause par ailleurs beaucoup d’autres comportements étranges. La désactivation de l’arrêt hybride rétablit l’exécution des scripts à l’extinction de la machine.

L’arrêt hybride peut être désactivé en précisant une valeur dans le fichier wapt-get.ini de l’agent WAPT, voir Paramètres pour le wapttray.

Il est possible de définir cette valeur lorsque créer un agent WAPT.

Un paquet WAPT existe pour cet effet tis-disable-hybrid-shutdown.

1.9.2. Windows édition familiale

Les GPO n’étant pas présentes sur les versions familiales de Windows, il est normal qu’elles ne s’exécutent pas.

La solution de contournement est d’utiliser une tâche planifiée qui appelle C:\Program Files (x86)\wapt\wapt-get.exe avec le paramètre upgrade.

1.9.3. GPO locale corrompue

Il peut arriver que les stratégies de groupes locales de la machine soient corrompues.

Une des solutions possibles consiste à :

  • Une des solutions consiste à supprimer les stratégies locales actuelles en supprimant le fichier C:\windows\system32\GroupPolicy\gpt.ini, puis en redémarrant la machine, et enfin en relançant l’installation de la tâche d’extinction ;

  • Redémarrer l’ordinateur ;

  • Ré-installer la tâche planifiée « à l’arrêt » en :

wapt-get add-upgrade-shutdown

Si le problème se reproduit, cela signifie peut être qu’une autre application manipule également la GPO.

1.10. WAPT Exit se coupe après 15 minutes et n’achève pas l’installation des paquets WAPT

Par défaut sous Windows, les scripts d’extinction ne peuvent s’exécuter plus de 15 minutes.

Si à l’arrêt de la machine, un script d’extinction n’a pas rendu la main au bout de 15 minutes, le script est interrompu.

Pour résoudre le soucis, il faut modifier la valeur pre_shutdown_timeout ainsi que la valeur max_gpo_script_wait dans le fichier wapt-get.ini de l’Agent WAPT.

Définissez les valeurs pour modifier le comportement par défaut.

max_gpo_script_wait = 360
pre_shutdown_timeout = 360

Le paquet tis-wapt-conf-policy embarque cette configuration.

L’autre solution est d’utiliser la GPO File.ini.

Utilisation d'un fichier GPO ini pour configurer le délai d'exécution du script

Utilisation d’un fichier GPO ini pour configurer le délai d’exécution du script

1.11. Message d’erreur à l’ouverture de la console

1.11.1. Vérification de la version

Fenêtre indiquant que la version de la Console WAPT est dépassée

La version de la Console WAPT n’est pas la même que celle du Serveur WAPT. Il est recommandé de mettre à jour la Console WAPT avec la même version que le Serveur WAPT.

1.11.2. Connexion refusée

La console WAPT ne parvient pas à joindre le port 443 du serveur :

  • Vérifier si le service Nginx est démarré sur le Serveur WAPT.

systemctl status nginx
  • Si Nginx n’est pas lancé, relancer Nginx.

systemctl restart nginx
  • Si le Nginx ne démarre toujours pas, vous devez analyser les fichiers de logs dans :

    • /var/log/Nginx/ sur Linux ;

    • C:\Program Files (x86)\wapt\waptserver\nginx\logs sur Windows.

1.11.3. Service indisponible

Il est possible que le service du Serveur WAPT soit stoppé :

  • Vérifier si le service waptserver est en cours d’exécution.

systemctl status waptserver
  • Si la commande ne retourne rien, lancer le waptserver.

systemctl start waptserver

1.11.4. Erreur de connexion avec SSL … la vérification a échoué

La Console ne semble pas réussir à vérifier le certificat HTTPS du Serveur WAPT.

Attention

Attention, avant toute chose vérifiez que vous n’êtes pas victime d’une attaque abbr:MITM (Man in the Middle) !

Note

Si vous venez de refaire votre Serveur WAPT et que vous utilisez un certificat auto-signé, vous pouvez récupérer les anciennes clés de votre ancien serveur wapt dans /opt/wapt/waptserver/apache/ssl.

  • Fermer votre Console WAPT.

  • Supprimer le dossier %appdata%\..\Local\waptconsole.

  • Lancer ensuite la commande wapt-get enable-check-certificate.

  • Assurez-vous que la commande précédente s’est bien déroulée.

  • Redémarrer le service WAPT avec net stop waptservice && net start waptservice.

  • Relancer la Console WAPT.

Dans le cas ou vous ne pratiquez pas le certificate pinning, cela signifie que le certificat envoyé par le serveur ne pas être vérifié avec le bundle python certifi. Veillez à bien fournir la chaîne complète pour le certificat sur le Serveur WAPT.

1.11.5. Je ne peux rien faire dans la Console WAPT, tout est grisé

La Console WAPT semble verrouillée, vous ne pouvez exécuter aucune action, tout est grisé.

Si vous êtes connecté avec un autre utilisateur que le Superadmin, vos règles ACL peuvent ne pas être définies correctement sur votre profil.

Pour résoudre ce problème, fermer la Console WAPT et l’ouvrir à nouveau avec le compte Superadmin. Ensuite, aller dans :menuselection:Outils --> Gérer les utilisateurs et les droits WAPT. Ici, vous verrez l’utilisateur dans la liste, donner à l’utilisateur les permissions appropriées, puis enregistrer et fermer la Console WAPT. Ré-ouvrir la Console WAPT en utilisant votre login.

1.12. Message d’erreur concernant un paquet dans la Console WAPT

1.12.1. Problème avec la création de paquet

Fenêtre indiquant que le paquet téléchargé présente un problème de certificat de signature

Fenêtre indiquant que le paquet téléchargé présente un problème de certificat de signature

La Console WAPT affiche cette erreur : Erreur lors du téléchargement du paquet : EWaptForbidden('Host matching package UUID_HOST does not trusted signer certificate).

Cette erreur survient lorsque vous essayez de télécharger un paquet WAPT mais que le certificat utilisé pour signer le paquet n’est pas présent dans le dossier d’installation WAPT ssl sur votre ordinateur. Si vous avez un serveur Windows WAPT, n’oubliez pas de ne pas lancer la Console WAPT sur le serveur. Ajoutez le certificat WAPT qui a signé le paquet dans le dossier d’installation WAPT ssl de votre ordinateur, puis réessayez.

1.12.2. Erreur locale

Fenêtre montrant que la Console WAPT ne trouve pas un paquet

Fenêtre montrant que la Console WAPT ne trouve pas un paquet

La Console WAPT affiche cette erreur dans deux situations.

1.12.2.1. Le paquet n’existe plus dans le dépôt, hors une machine en a besoin

Deux solutions sont envisageables :

  • Essayer de récupérer un nouveau paquet dans le store de Tranquil IT.

  • Supprimer le paquet des dépendances de la machine.

1.12.2.2. Lorsque vous essayez d’installer un paquet avec une locale inconnue de la machine

Deux solutions sont envisageables :

  • Essayer de récupérer un nouveau paquet dans le store de Tranquil IT.

  • Éditer le paquet WAPT et mettre dans le fichier control l’option locale avec la bonne locale (locale=en,fr).

1.13. Problèmes pour enregistrer une machine avec le Serveur WAPT

Si vous faites un wapt-get register et que la commande renvoie :

FATAL ERROR : ConnectionError: HTTPSConnectionPool(host='XXX.XXX.XXX.XXX', port=443): Max retries exceeded with url: /add_host

Vous devez vérifier que le port 443 est correctement transmis au Serveur WAPT et qu’il n’est pas bloqué par un pare-feu.

1.14. Problème lors du enable-check-certificate

1.14.1. J’ai le message « certificate CN ### sent by server does not match URL host ### lors du enable-check-certificate »

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 2 solutions :

  1. Vérifier le paramètre wapt_server dans votre fichier wapt-get.ini de l’Agent WAPT.

Si la valeur est correcte, cela signifie certainement qu’une erreur s’est produite lors de la génération du certificat auto-signé pendant la post-configuration du Serveur WAPT (erreur de frappe, …).

Vous DEVEZ donc régénérer vos certificats auto-signés.

  1. Sur le Serveur WAPT, supprimez le contenu du dossier /opt/wapt/waptserver/apache/ssl/.

Ensuite, relancez le script de postconf (le même que pendant l’installation initiale, avec les mêmes arguments et les mêmes valeurs).

Enfin, vérifiez bien le nom renseigné lors de l’étape FQDN for the WAPT serveur est correcte.

  • Vous pouvez maintenant retenter votre enable-check-certificate.

1.15. Problèmes avec la création de paquet

1.15.1. Problèmes de droits avec PyScripter

Lorsqu’on souhaite tester l’installation d’un paquet sur son PC de développement de paquet à partir de PyScripter, on obtient le message :

OperationnalError : tentative d'écriture d'une base de données en lecture seule

Lancez PyScripter en utilisant un compte Local Administrator et refaites l’action souhaitée.

1.15.2. Mon paquet WAPT est trop volumineux et je n’arrive pas à l’uploader sur le dépôt

Quand un paquet est trop volumineux, il faut en général lancer le builder localement puis l’uploader avec WinSCP.

Indication

Le paquet WAPT dans C:\waptdev.

  • Télécharger et installer WinSCP

  • En utilisant WinSCP, uploadez votre paquet dans le dépôt selon la version du référentiel WAPT..

  • Une fois le téléchargement terminé, recréer le fichier d’index Packages sur le dépôt WAPT en utilisant la commande suivante et en remplaçant repository par le repository location selon la version du dépôt WAPT.

wapt-scanpackages repository

1.15.3. Erreur de violation d’accès lors de la re-signature du paquet WAPT

Le traitement de la signature ne s'est pas terminé avec succès

Si l’erreur Access violation apparaît, c’est parce que le paquet est trop gros.

Éditez le paquet et suivez cette procédure.

1.15.4. Paquet WAPT en erreur

1.15.4.1. Problème d’installation d’un paquet WAPT

J’ai un paquet WAPT qui renvoie une erreur et le logiciel n’est pas installé sur l’ordinateur lorsque je vais physiquement vérifier sur l’ordinateur.

1.15.4.1.1. Explication

Une erreur s’est produite lors de l’exécution du setup.py.

Vous pouvez lire et analyser les messages d’erreur retournés dans la Console WAPT et tenter de les comprendre et de les résoudre.

L’installation des paquets sera retentée à chaque upgrade jusqu’à ce que le paquet ne génère plus d’erreur.

1.15.4.1.2. Solution
  • Si WAPT fournit un code d’erreur, chercher ce code d’erreur sur Internet.

    Exemple avec un MSI : 1618 : Une autre installation est déjà en cours. Un redémarrage devrait solutionner le problème.

Note

Les différents codes d’erreur MSI sont disponibles ici.

  • Se déplacer physiquement sur la machine en erreur et relancer l’installation silencieuse en ligne de commande. Vérifier ensuite que le logiciel à bien été installé.

Attention

Une fois l’installation silencieuse lancée, ne pas intervenir.

L’objectif est de reproduire le comportement de l’Agent WAPT.

  • Si l’installation fonctionne en mode silencieux, en contexte utilisateur, cela peut signifier que l’installeur ne supporte pas l’installation en compte SYSTEM.

  • Si cela ne fonctionne toujours pas, lancer l’installation manuellement. Il est possible qu’une erreur apparaisse indiquant explicitement le problème. Exemple (Dépendance manquante : .Net , Java, etc..).

  • Il est possible que l’installeur ne supporte pas l’écrasement d’une installation précédente, alors prévoir la désinstallation des anciennes version avant d’installer la nouvelle version.

1.15.4.2. Erreur « timed out after seconds with output “600.0” »

Certains paquets dans la Console WAPT retournent l’erreur :

"Error timed out after seconds with output '600.0'"
1.15.4.2.1. Explication

Par défaut lors d’une installation (avec run, install_msi_if_needed ou install_exe_if_needed) WAPT va attendre 600 secondes que l’installeur lui rende la main.

Si l’installeur n’a pas terminé dans ce délai, WAPT coupera l’installation en cours.

1.15.4.2.2. Solution

Si vous tentez d’installer un gros logiciel (Office, Solidworks, Libreoffice Katia, Adobe Creative Suite), il est possible que l’intervalle de 600 secondes ne soit pas suffisant.

Vous devez alors, augmenter cette valeur avec l’argument timeout, ex: timeout = 1200.

run('"setup.exe" /adminfile office2010noreboot.MSP', timeout = 1200)

1.15.4.3. Erreur « has been installed but the uninstall key can not be found »

Certains paquets dans la Console WAPT retournent l’erreur :

XXX has been installed but the uninstall key can not be found.
1.15.4.3.1. Explication

WAPT s’appuie sur Windows pour installer les binaires .msi avec install_msi_if_need et les binaires .exe avec install_exe_if_need.

Par défaut, WAPT accepte les codes de retour : 0 (OK) et 3010 (redémarrage nécessaire), et il vérifie la clé de désinstallation résultante (uninstall key).

Malheureusement, nous ne pouvons pas faire entièrement confiance à ces codes de retour, c’est pourquoi WAPT effectue des contrôles supplémentaires après l’installation pour s’assurer que tout s’est bien passé :

  • Il vérifie la présence de la clé de désinstallation sur la machine.

  • Il vérifie que la version est bien égale ou supérieure à celle renseignée du fichier control.

  • Si ce n’est pas le cas, il en déduit que le logiciel n’est peut-être pas présent sur la machine.

La fonction bascule alors volontairement le paquet WAPT en erreur. L’installation sera retentée lors de chaque upgrade, jusqu’à ce que le paquet WAPT ne génère plus d’erreur.

1.15.4.3.2. Solution

Attention

Avant toute chose, il convient de se connecter sur la machine en erreur et de vérifier manuellement si le logiciel est correctement installé . Si ce n’est pas le cas, se référer à la documentation sur les problèmes d’installation d’un paquet..

  • Si le logiciel est bien installé, cela signifie peut être que la clé de désinstallation ou la version fournie dans le paquet n’est pas bonne.

  • Récupérer la bonne clé de désinstallation et corriger le paquet WAPT en conséquence.

  • Si l’erreur se produit avec install_msi_if_needed cela signifie que l’installeur MSI est mal conçu et renvoie une mauvaise clé de désinstallation.

1.15.4.4. Erreur « has been installed and the uninstall key found but version is not good »

Certains paquets dans la Console WAPT retournent l’erreur :

XXX has been installed and the *uninstall key* found but version is not good.
1.15.4.4.1. Explication

Avec les commandes install_msi_if_needed or install_exe_if_needed, des vérifications supplémentaires sont effectuées pour vérifier que tout s’est bien passé.

Attention

Avant toute chose, il convient de se connecter sur la machine en erreur et de vérifier manuellement si le logiciel est correctement installé . Si ce n’est pas le cas, se référer à la documentation sur les problèmes d’installation d’un paquet..

1.15.4.4.2. Solution : Avec install_msi_if_needed

Les informations étant extraites depuis l’installeur MSI, cela signifie que le fichiers MSI ne renvoie pas la bonne version ou que la clé de désinstallation retournée n’est pas la bonne version.

Vous pouvez vérifier en utilisant l’utilitaire de ligne de commande Windows.

wapt-get list-registry

Si la clé retournée n’est pas celle renseignée dans la partie installation du fichier setup.py , il n’est pas possible d’utiliser la fonction install_msi_if_needed.

Vous DEVEZ revoir la section install de votre setup.py, utiliser la fonction run() et gérer manuellement les exceptions.

1.15.4.4.3. Solution : avec install_exe_if_need

Cela signifie probablement que la version renseignée dans la fonction install_exe_if_needed n’est pas la bonne. Corriger le paquet WAPT en conséquence.

Note

Si l’argument min_version n’a pas été renseigné, WAPT va tenter de récupérer automatiquement la version depuis l’installeur .exe.

Pour vérifier la clé de désinstallation utilisée et le numéro de version, utiliser la commande :

wapt-get list-registry

Si aucune version n’est fournie avec la commande list-registry, cela signifie que la clé de désinstallation du logiciel ne fournit pas de version.

Il y a 2 solutions :

  • Utiliser l’argument get_version pour fournir un chemin vers une autre uninstallkey.

def install():

   def versnaps2(key):
       return key['name'].replace('NAPS2 ','')

   install_exe_if_needed('naps2-5.3.3-setup.exe',silentflags='/VERYSILENT',key='NAPS2 (Not Another PDF Scanner 2)_is1',get_version=versnaps2)
  • Fournir une valeur vide en argument pour min_version afin d’indiquer à WAPT qu’aucune version n’est à vérifier.

min_version=' '

Attention

Avec cette méthode on ne vérifiera plus la version lors de mise à jour !

1.15.4.5. Error « DNSName values should be passed as an A-label string »

FATAL ERROR : ValueError: DNSName values should be passed as an A-label string. This means unicode characters should be encoded via a library like idna.

Ensure that your workstation name does not contain any special characters.

1.16. Problèmes fréquents liés aux Antivirus

Certains Antivirus lèvent des alertes pour des composants de WAPT.

Parmis ceux-ci le composant nssm.exe est utilisé par WAPT comme utilitaire de service pour l’Agent WAPT.

Voici une liste des exceptions possibles à déclarer dans votre interface de gestion centralisé AV pour résoudre les faux positifs liés au WAPT  :

"C:\Program Files (x86)\wapt\waptservice\win32\nssm.exe"
"C:\Program Files (x86)\wapt\waptservice\win64\nssm.exe"
"C:\Program Files (x86)\wapt\waptagent.exe"
"C:\Program Files (x86)\wapt\waptconsole.exe"
"C:\Program Files (x86)\wapt\waptexit.exe"
"C:\wapt\waptservice\win32\nssm.exe"
"C:\wapt\waptservice\win64\nssm.exe"
"C:\wapt\waptagent.exe"
"C:\wapt\waptconsole.exe"
"C:\wapt\waptexit.exe"
"C:\Windows\Temp\waptdeploy.exe"
"C:\Windows\Temp\waptagent.exe"
"C:\Windows\Temp\is-?????.tmp\waptagent.tmp"

1.17. Je rencontre un problème avec mon proxy -THttpClientSocket.SockRecv(1) read = 0

Si vous avez ce problème :

Fenêtre montrant une erreur de dépassement de délai du proxy dans la Console WAPT

Fenêtre montrant une erreur de dépassement de délai du proxy dans la Console WAPT

L’erreur vient d’une option timeout dans votre waptconsole.ini.

En effet, depuis la version WAPT 2.1, le timeout est défini en millisecondes et non pas en secondes comme avant.

Vous allez devoir supprimer votre option timeout dans votre Console WAPT situé ici : %localappdata%\waptconsole.

1.18. What can go wrong during the upgrades of WAPTserver ?

  • The most common issue with the upgrading process is the local antivirus blocking the installation (WAPT is a software installer that keeps a websocket opened to a central management server, so this behavior may be flagged as suspicious by an antivirus, even though this method is the basis of end point management…). If you have an issue when deploying the upgrade, please check your antivirus console and whitelist the waptagent.exe. Another option is to re-sign the waptagent.exe binary if your organization has an internal code signing certificate.

  • The second most common issue is that for some reason another program is locking a DLL that ships with WAPT. This can happen with poorly designed software installers that pick up the local %PATH% variable first and then find WAPTs own openssl or python DLL.

  • The third most common issue is a defective Windows install, that does not run scheduled tasks properly, and yes we have seen this!

1.19. Erreurs courantes

1.19.1. Comment déplacer mon dépôt sur une autre partition

Pour de multiples raisons, vous devrez éventuellement déplacer le dépôt sur une autre partition.

Votre dépôt contient 3 dossiers qui peuvent être assez volumineux :

  • wapt ;

  • wapt-host ;

  • waptwua.

1.19.1.1. Linux

Sous Linux, créez un point de montage sur fstab.

Dans cet exemple, la deuxième partition est nommée part2.

part2 est une partition formatée en ext4.

1.19.1.1.1. Debian et dérivées
  • Créer le dossier temporaire.

mkdir /mnt/tmp
  • Création d’un point de montage temporaire.

mount /dev/part2 /mnt/tmp
  • Déplacer les dossiers.

mv /var/www /mnt/tmp
  • Démonter la partition.

umount /dev/part2
  • Modifier le fichier fstab.

vi /etc/fstab
  • Ajouter la ligne suivante au fichier fstab.

# <file system> <mount point> <type>  <options> <dump>  <pass>
/dev/part2      /var/www      ext4    defaults  0       0
  • Monter la partition.

mount -a

Indication

Si aucune erreur, la partition est montée.

  • Vous pouvez vérifier en exécutant.

df -h

#Result
Filesystem     1K-blocks     Used Available Use% Mounted on
dev/part2       15G          944M       14G   7% /var/www
  • Supprimer le dossier temporaire.

rm -rf mnt/tmp
1.19.1.1.2. RedHat et dérivées
  • Créer un dossier temporaire pour copier les dossiers.

mkdir /mnt/tmp
  • Création d’un point de montage temporaire.

mount /dev/part2 /mnt/tmp
  • Déplacer les dossiers.

mv /var/www/html /mnt/tmp
  • Démonter la partition.

umount /dev/part2
  • Modifier le fichier fstab.

vi /etc/fstab
  • Ajouter la ligne suivante au fichier fstab.

# <file system> <mount point> <type>  <options> <dump>  <pass>
/dev/part2      /var/www/html      ext4    defaults  0       0
  • Monter la partition.

mount -a

Indication

Si aucune erreur, la partition est montée.

  • Vous pouvez vérifier en exécutant.

df -h

#Result
Filesystem     1K-blocks     Used Available Use% Mounted on
dev/part2       15G          944M       14G   7% /var/www
  • Supprimer le dossier temporaire.

rm -rf mnt/tmp

1.19.1.2. Windows

Sous Windows, la meilleure méthode est de sauvegarder et restaurer le serveur sur la nouvelle partition.

Note

Il est possible d’installer le serveur sur une autre partition que C:.

1.19.2. Utiliser un lecteur réseau pour stocker et livrer des paquets WAPT

Le mode de fonctionnement standard de WAPT est avec un serveur Web sécurisé qui fournit les paquets WAPT aux clients WAPT.

Tranquil IT déconseille l’utilisation d’un lecteur réseau pour la livraison de paquets WAPT pour plusieurs raisons :

  • Un serveur web est extrêmement facile à installer, à sécuriser, à maintenir, à sauvegarder et à surveiller.

  • Pour fonctionner correctement, un paquet WAPT doit être autonome. En effet, nous ne savons pas si le réseau sera disponible au moment du lancement de l’installation (par exemple si nous avons un waptexit qui démarre lorsque la station de travail s’arrête sur un réseau avec une authentification utilisateur 802.1x, il n’y aura plus de réseau disponible au moment de l’installation). La nature autonome du WAPT le rend plus déterministe que les autres solutions de déploiement.

  • Une congestion du réseau peut résulter du téléchargement de gros paquets sur de grandes flottes d’appareils parce que vous avez moins de contrôle sur la consommation de bande passante ou bien vous ne pouvez pas terminer un téléchargement partiel.

  • Cette méthode casse ou au moins affaiblit le cadre de sécurité du WAPT.

  • Cette méthode ne vous permet pas d’exposer vos dépôts sur Internet pour votre personnel itinérant.

Attention

Même si WAPT peut fonctionner indépendamment du mode de transport, Tranquil IT ne supportera pas officiellement l’utilisation d’un lecteur réseau pour stocker et livrer des paquets WAPT.

1.19.3. Utiliser la fonction register() dans vos scripts d’audit

La fonction register() force l’envoi au serveur WAPT de l’inventaire matériel et logiciel de l’agent WAPT.

Cette fonction est très éprouvante pour les performances du serveur car elle oblige le serveur à analyser un JSON BLOB relativement grand et à injecter le résultat dans la base de données PostgreSQL.

La fonction est par défaut déclenchée manuellement ou lorsqu’une nouvelle mise à niveau de paquet est appliquée.

Lorsque vous utilisez la fonction register() dans un script d’audit, elle sera exécutée à chaque fois que le script d’audit est déclenché et chargera le serveur sans bénéfice apparent.

Par conséquent, nous ne recommandons pas l’utilisation de la fonction register() dans les scripts d’audit.

1.19.4. EWaptBadControl : “utf8” codec can’t decode byte

Si vous recevez ce message, cela peut signifier que vous n’avez pas mis en place correctement votre environnement de développement. Visitez cette section de la documentation sur la configuration de l’UTF-8 (pas de BOM).

1.19.5. J’ai bien plus d’hôtes dans la console que de paquets host sur mon serveur ?

Suite à une remarque de Philippe LEMAIRE du Lycée Français Alexandre Yersin à Hanoï, si vous utilisez la version Entreprise du WAPT et que vous faites un usage intensif des paquets unit ou profile packages, vous pouvez réaliser que vous aurez beaucoup plus d’hôtes dans votre console que de *host packages* sur votre serveur WAPT. C’est normal.

En fait, les packages WAPT unit et profile ne sont pas explicitement affectés à l’hôte (c’est-à-dire comme des dépendances dans le host package) mais sont implicitement pris en compte par le moteur de dépendance de l’Agent WAPT lors de la mise à niveau WAPT.

On peut donc ne pas avoir de paquet host sur le serveur si seuls des paquets unit sont utilisés pour gérer une flotte d’appareils.