Configuration avancée de l’Agent WAPT

Le fichier de configuration wapt-get.ini définit le comportement de l’agent WAPT.

Emplacement du wapt-get.ini par le système

Système

Localisation

Windows

C:\Program Files(x86)\wapt\wapt-get.ini

Linux

/opt/wapt/wapt-get.ini

Mac OS

/opt/wapt/wapt-get.ini

La section [global] est obligatoire.

[global]

Après l’installation standard, la configuration par défaut est la suivante :

[global]
waptupdate_task_period=120
wapt_server=https://srvwapt.mydomain.lan
repo_url=https://srvwapt.mydomain.lan/wapt/
use_hostpackages=1

Tous les paramètres ne sont pas disponibles lors de la génération de l’agent. Il est possible de faire des changements dans wapt-get.ini manuellement ou en déployant un paquet WAPT avec les nouveaux paramètres de configuration.

Un exemple de paquet est disponible dans le dépôt Tranquil IT.

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

def install():

  print('Modify max_gpo_script_wait')
  inifile_writestring(WAPT.config_filename,'global','max_gpo_script_wait',180)

  print('Modify Preshutdowntimeout')
  inifile_writestring(WAPT.config_filename,'global','pre_shutdown_timeout',180)

  print('Disable Hyberboot')
  inifile_writestring(WAPT.config_filename,'global','hiberboot_enabled',0)

  print('Disable Notify User')
  inifile_writestring(WAPT.config_filename,'global','notify_user',0)

  print('Reload WAPT configuration')
  WAPT.reload_config_if_updated()

La définition de la fonction inifile_writestring est :

inifile_writestring(inifilename,section,key,value)

Description des sections disponibles

Description des sections disponibles pour l’agent WAPT

Section

Description

[global]

Options globales de l’agent WAPT.

[wapt]

Options du dépôt principal.

[wapt-template]

Options du dépôt externe.

[wapt-host]

Options pour le dépôt pour les paquets host.

[waptwua]

Options de l’agent WUA.

[repo-sync]

Pour synchroniser plusieurs dépôts.

Toutes les sections sont détaillées ci-dessous.

Description des options disponibles par section

[global]

Paramètres généraux

Description des options disponibles pour l’agent WAPT sur la section globale

Options / Valeur par défaut

Description

Exemple

Fonctionnalité WAPT Enterprise uniquement allow_remote_reboot (défaut False)

Permet de redémarrer le ou les hôtes sélectionnés à distance à partir de la console WAPT.

allow_remote_reboot = True

Fonctionnalité WAPT Enterprise uniquement allow_remote_shutdown (défaut False)

Permet d’arrêter le ou les hôtes sélectionnés à distance à partir de la console WAPT.

allow_remote_reboot = True

check_certificates_validity (défaut False)

Force la vérification de la date et de la CRL du certificat du paquet.

check_certificates_validity = True

dbpath (défaut WAPT root dir)\wapt\db\waptdb.sqlite)

Chemin d’accès au fichier de la base de données locale.

dbpath = C:\Program Files(x86\db\waptdb.sqlite

download_after_update_with_waptupdate_task_period (défaut True)

Définit si un téléchargement des paquets en attente doit être lancé après une mise à jour avec waptupdate_task_period.

download_after_update_with_waptupdate_task_period = False

Fonctionnalité WAPT Enterprise uniquement host_organizational_unit_dn (défaut None)

Permet de forcer une unité organisationnelle sur l’agent WAPT (pratique pour attribuer un fake OU pour un PC hors-domaine). Assurez-vous qu’il respecte une casse cohérente (ne pas mélanger les « dc « s et les « DC « s, par exemple), que vous pouvez trouver dans la console (dans les champs DN/computer_ad_dn pour chaque hôte)

host_organizational_unit_dn = OU=TOTO,OU=TEST,DC=MYDOMAIN,DC=LAN

Fonctionnalité WAPT Enterprise uniquement host_profiles (défaut None)

Permet de définir une liste de paquets WAPT que l’agent WAPT doit installer.

host_profiles = tis-firefox,tis-java

language (langue par défaut du client WAPT)

Force la langue par défaut pour l’interface graphique (pas pour le filtrage des paquets)

language = fr

locales (locale par défaut du client WAPT)

Permet de définir la liste des langues de l’agent WAPT pour pré-filtrer la liste des paquets visibles par l’agent WAPT (pour le filtrage des paquets). Le paramètre accepte plusieurs entrées (par exemple, locales=fr,en) ordonnées par préférence.

locales = en

log_to_windows_events (défaut False)

Envoie les journaux WAPT dans le journal des événements de Windows.

log_to_windows_events = True

loglevel (défaut warning)

Niveau de journalisation de l’agent WAPT. Les valeurs possibles sont : debug, info, warning, critical.

loglevel = critical

maturities = (default PROD)

Liste des maturités de paquets qui peuvent être visualisées et installées par l’agent WAPT. La valeur par défaut est PROD. Seules les valeurs DEV, PREPROD et PROD sont utilisées par Tranquil IT, cependant toute valeur peut être utilisée pour s’adapter à vos processus internes.

maturities = PROD, PREPROD

repo_url (défaut l’adresse du dépôt WAPT)

Adresse du dépôt principal de WAPT.

repo_url = https://srvwapt.mydomain.lan/wapt

repositories (défaut None)

Liste des dépôts activés, séparés par une virgule. Chaque valeur définit une section du fichier wapt-get.ini. Plus d’info ici.

repositories = dépôt1, dépôt2

send_usage_report (défaut True)

Permet à la console WAPT d’envoyer des statistiques anonymes à Tranquil IT. Mettre à 0 pour désactiver la télémétrie.

send_usage_report = True

service_auth_type (défaut system)

Comment fonctionne l’authentification du self-service. Les valeurs possibles sont : system, waptserver-ldap ou waptagent-ldap.

service_auth_type = waptserver-ldap

Fonctionnalité WAPT Enterprise uniquement uninstall_allowed (défaut True)

S’il est possible ou non pour l’utilisateur de désinstaller des applications via le self-service.

uninstall_allowed = False

Fonctionnalité WAPT Enterprise uniquement use_ad_groups (défaut False)

Pour l’utilisation de paquets groupe (par défaut False).

use_ad_groups = True

use_fqdn_as_uuid (défaut False)

Permet d’utiliser le FQDN plutôt que l’UUID du BIOS comme identifiant unique de la machine dans WAPT.

use_fqdn_as_uuid = True

use_hostpackages (défaut False)

Définit si les paquets hôtes doivent être utilisés. utiliser_hostpackages = False désactive les mises à jour implicites (paquets hôtes, paquets unités, paquets profils). C’est utile si vous voulez isoler un hôte et utiliser WAPT localement.

use_hostpackages = True

Fonctionnalité WAPT Enterprise uniquement use_repo_rules (défaut False)

Pour utiliser les dépôts secondaires (par défaut False).

use_repo_rules = True

waptaudit_task_period (défaut 60m)

Définit la fréquence à laquelle les audits sont déclenchés (en minutes).

waptaudit_task_period = 120

wapt_server (défaut None)

URL du serveur WAPT. Si cet attribut n’est pas présent, aucun serveur WAPT ne sera contacté.

wapt_server = https://srvwapt.mydomain.lan

waptservice_port (défaut 8088)

Loopback de l’agent WAPT. Il n’est pas accessible depuis le réseau.

waptservice_port = 8080

waptupdate_task_period (défaut 120m)

Fréquence de mise à jour (120 minutes par défaut).

waptupdate_task_period = 24h

waptupgrade_task_period (défaut None)

Fréquence de mise à niveau.

waptupgrade_task_period = 360

wol_relay (si remote_repo = False alors la valeur par défaut : False, si remote_repo = True la valeur par défaut = True)

Permet à l’agent d’être utilisé comme un relai Wake On Lan

wol_relay = True

Note

  • S’il n’y a pas d’attribut repo_url, un dépôt dans la section [wapt] devra être explicitement défini. Il devra être activé en l’ajoutant à l’attribut repositories.

  • S’il n’y a pas d’attribut wapt_server, aucun serveur WAPT ne sera utilisé.

Paramètres du serveur WAPT

Ces options définissent le comportement de l’agent WAPT lors de la connexion au serveur WAPT.

Description des options disponibles pour l’agent WAPT dans la section [globale] pour la configuration du serveur

Options / Valeur par défaut

Description

Exemple

public_certs_dir (défaut None)

Dossier des certificats autorisés à vérifier la signature des paquets WAPT.

public_certs_dir = C:\Program Files (x86)\wapt\ssl (sous Windows) public_certs_dir = /opt/wapt/ssl/ (sous Linux et MacOS)

use_kerberos (par défaut False)

Utiliser l’authentification kerberos pour l’enregistrement initial sur le serveur WAPT (par défaut False).

use_kerberos = True

verify_cert (défaut False)

Voir la documentation sur l’activation de la vérification des certificats HTTPS.

verify_cert = True

wapt_server (défaut None)

URL du serveur WAPT. Si cet attribut n’est pas présent, aucun serveur WAPT ne sera contacté.

:codewapt_server:`` = https://srvwapt.mydomain.lan

wapt_server_timeout (défaut 30)

Délai de connexion HTTPS du serveur WAPT en secondes.

code:wapt_server_timeout = 10

Paramètres pour le wapttray

Description des options disponibles pour l’agent WAPT sur la section globale pour le wapttray

Options / Valeur par défaut

Description

Exemple

:code:”allow_cancel_upgrade” (défaut True)

Empêche les utilisateurs d’annuler les mises à jour des paquets à l’arrêt du poste. Si désactivé, les utilisateurs ne seront pas en capacité d’annuler les mises à jour des paquets à l’arrêt du poste. Si cette valeur n’est pas renseignée, elle sera par défaut a 10.

allow_cancel_upgrade = True

hiberboot_enabled (défaut None)

Désactive Hiberboot sur Windows 10 pour waptexit.

hiberboot_enabled = True

max_gpo_script_wait (défaut None)

Délai d’exécution des GPO à l’arrêt de l’ordinateur.

max_gpo_script_wait = 180

pre_shutdown_timeout (défaut None)

Délai d’attente pour les scripts à l’arrêt de l’ordinateur.

pre_shutdown_timeout = 180

:code:”upgrade_only_if_not_process_running” (défaut False)

Empêche la mise à niveau du logiciel si celui-ci est en cours d’exécution sur l’hôte (attribut impacted_process du packaging).

upgrade_only_if_not_process_running = True

upgrade_priorities (défaut None)

Ne mettre à niveau que les paquets ayant une priorité spécifique.

upgrade_priorities = high

:code:”waptexit_countdown” (défaut True)

Délai (en secondes) avant le démarrage automatique des installations.

waptexit_countdown = 25

Paramètres pour l’authentification WAPT Self-Service et Waptservice

Description des options disponibles pour l’agent WAPT dans la section globale pour le self-service WAPT et l’authentification Waptservice

Options / Valeur par défaut

Description

Exemple

ldap_auth_base_dn (défaut None)

Utile avec waptagent-ldap, définit le dn de base pour la requête LDAP.

ldap_auth_base_dn = dc=mydomain,dc=lan

ldap_auth_ssl_enabled (défaut False)

Utile avec waptagent-ldap, définit si la requête LDAP doit être chiffré.

ldap_auth_ssl_enabled = True

ldap_auth_server (défaut None)

Utile avec waptagent-ldap, définit le serveur LDAP à contacter.

ldap_auth_server = srvads.mydomain.lan

service_auth_type (défaut system)

Définit le système d’authentification du service WAPT, les valeurs disponibles sont system, waptserver-ldap, waptagent-ldap.

service_auth_type = waptagent-ldap

verify_cert_ldap (défaut False)

Utile avec waptagent-ldap, définit si le certificat doit être vérifié.

verify_cert_ldap = True

waptservice_admin_filter (défaut False)

Appliquer un filtrage d’affichage pour les paquets self-service pour les administrateurs locaux.

waptservice_admin_filter = True

waptservice_password (défaut None)

mot de passe haché en sha256 lorsque waptservice_user est utilisé (la valeur NOPASSWORD désactive la nécessité d’un mot de passe).

waptservice_password = 5e884898da

waptservice_user (défaut None)

Force un utilisateur à s’authentifier sur le service WAPT.

waptservice_user = admin

Paramètres pour le wapttray

Description des options disponibles pour l’agent WAPT sur la section globale pour le wapttray

Options / Valeur par défaut

Description

Exemple

notify_user (défaut False)

Empêche wapttray d’envoyer des notifications (popup).

notify_user = True

Paramètres du Proxy

Description des options disponibles pour l’agent WAPT sur la section globale pour le proxy

Options / Valeur par défaut

Description

Exemple

http_proxy (défaut None)

Définit l’adresse du proxy HTTP.

http_proxy = http://user:pwd@host_fqdn:port

use_http_proxy_for_repo (défaut False)

Utiliser un proxy pour accéder aux dépôts.

use_http_proxy_for_repo = True

use_http_proxy_for_server (défaut False)

Utiliser un proxy pour accéder au serveur WAPT.

use_http_proxy_for_server = True

Paramètres pour la création de paquets WAPT

Description des options disponibles pour l’agent WAPT dans la section globale pour la création de paquets WAPT

Options / Valeur par défaut

Description

Exemple

default_package_prefix (défaut tis)

Définit le préfixe par défaut pour les paquets nouveaux ou importés. Le préfixe est sensible à la casse, nous recommandons d’utiliser les minuscules.

default_package_prefix = doc

default_sources_root (défaut C:\waptdev sur Windows ou ~/waptdev sur Linux)

Définit le répertoire de stockage des paquets en cours de développement.

default_sources_root = C:\\waptdev

personal_certificate_path (défaut None)

Définit le chemin d’accès à la clé privée de l’administrateur.

personal_certificate_path = None

[wapt-wua]

Reportez-vous à configurer WAPTWUA sur l’agent WAPT.

Paramètres pour l’utilisation de dépôts multiples

Pour ajouter plus de dépôts, de nouvelles sections [nom_du_dépôt] peuvent être ajoutées dans le wapt-get.ini.

Note

Les dépôts actifs sont listés dans l’attribut « repositories » de la section [global].

Attention

Ce paramètre peut être configuré à la fois dans la configuration de l’agent WAPT et dans le fichier de configuration de la console WAPT C:\Users\%username%\AppData\Local\waptconsole\waptconsole.ini.

Pour des informations sur la configuration de la console WAPT, veuillez vous référer à cette élément de la documentation.

Section [wapt]

Indication

Si cette section n’existe pas, les paramètres sont lus à partir de la section [global].

[wapt-templates]

Dépôts distants externes qui seront utilisés dans la console WAPT pour importer des nouveaux paquets ou leur mises à jour. Le dépôt Tranquil IT est défini par défaut.

Section [wapt-host]

Dépôt pour les paquets hôtes. Si cette section n’existe pas, les emplacements par défaut utilisés seront le dépôt principal.

Plus d’informations sur cette utilisation peuvent être trouvées dans cette article sur le travail avec plusieurs dépôts publics ou privés.

Configuration de la console WAPT

Indication

la configuration de la console WAPT est stocké à 2 endroits:

  • C:\Users\%username%\AppData\Local\waptconsole\waptconsole.ini.

  • C:\Users\%username%\AppData\Roaming\waptconsole\waptconsole.ini.

Ces fichiers sont générés automatiquement lors du premier lancement de waptconsole et sont générés à partir du fichier wapt-get.ini configuré sur le poste de travail de l”Administrateur ;

Description des sections disponibles

Description des sections disponibles pour l’agent WAPT

Section

Description

[global]

Options globales de la Console WAPT

[sections]

Définit les options du dépôt externe. [wapt-template] repositories

[waptwua]

Options WUA

Toutes les sections sont détaillées ci-dessous.

Les autres sections présentes dans C:\Users\%username%\AppData\Roaming\waptconsole\waptconsole.ini ne sont pas modifiables manuellement, elles ne sont donc pas détaillées.

Attention

Pour les paramètres présents à la fois dans wapt-get.ini et waptconsole.ini, les valeurs sont définies dans wapt-get.ini et copiées dans waptconsole.ini. Ne modifiez pas manuellement ces paramètres.

Description des options disponibles par section

[global]

Plusieurs options sont disponibles dans la section [global] du fichier waptconsole.ini.

Description des options disponibles sur AppData\Local

Options / Valeur par défaut

Description

Exemple

advanced_mode (défaut False)

Lance la Console WAPT en mode débogage.

advanced_mode = True

Fonctionnalité WAPT Enterprise uniquement allow_remote_reboot (défaut False)

Permet de redémarrer le ou les hôtes sélectionnés à distance à partir de la console WAPT.

allow_remote_reboot = True

Fonctionnalité WAPT Enterprise uniquement allow_remote_shutdown (défaut False)

Permet d’arrêter le ou les hôtes sélectionnés à distance à partir de la console WAPT.

allow_remote_shutdown = True

client_certificate (défaut None)

Définit si le dépôt distant utilise l’authentification SSL côté client.

client_certificate = C:\private\org-coder.crt

client_private_key (défaut None)

Définit si le dépôt distant utilise l’authentification SSL côté client.

client_private_key = C:\private\org-coder.pem

check_certificates_validity (défaut False)

Force la vérification de la date et de la CRL du certificat du paquet.

check_certificates_validity = True

default_maturity (défaut None)

Définit la maturité de téléchargement par défaut pour les paquets WAPT.

default_maturity = PROD

default_package_prefix (défaut tis)

Définit le préfixe par défaut pour les paquets nouveaux ou importés. Le préfixe est sensible à la casse, nous recommandons d’utiliser les minuscules.

default_package_prefix = doc

default_sources_root (défaut C:\waptdev sur Windows ou ~/waptdev sur Linux)

Définit le répertoire de stockage des paquets en cours de développement.

default_sources_root = C:\waptdev

grid_hosts_plugins (défaut W10=)

Liste Les plugins externes pour la console WAPT. La valeur par défaut est W10= car [] en base64.

grid_hosts_plugins = W3siZXhlY3V0YWJsZSI6ImV4cGxd

host_profiles (défaut None)

Définit une liste de paquets WAPT que l’agent WAPT doit installer.

host_profiles = tis-firefox,tis-java

hiberboot_enabled (défaut False)

Désactive Hiberboot sur Windows 10 pour waptexit

hiberboot_enabled = True

http_proxy (défaut None)

Définit l’adresse du serveur proxy dans la console WAPT.

http_proxy = https://proxy.domain.lan

last_usage_report (défaut None)

Indique la date à laquelle la console WAPT a été utilisée pour la dernière fois.

last_usage_report = 12/05/2021 18:45:51

lastwaptserveruser (défaut None)

Fournit le dernier utilisateur connecté sur cette console WAPT.

lastwaptserveruser = admin

max_gpo_script_wait (défaut 180)

Définit le délai d’exécution des GPO à l’arrêt de l’ordinateur.

max_gpo_script_wait = 360

personal_certificate_path (défaut None)

Définit le chemin d’accès au certificat associé à la clé privée de l’administrateur.

personal_certificate_path = C:\private\mykey.crt

pre_shutdown_timeout (défaut 180)

Définit le délai d’attente pour les scripts à l’arrêt de l’ordinateur.

pre_shutdown_timeout = 360

repo_url (défaut l’adresse du dépôt WAPT)

Définit l’adresse du dépôt principal de WAPT.

repo_url = https://srvwapt.mydomain.lan/wapt

send_usage_report (défaut True)

Permet à la console WAPT d’envoyer des statistiques anonymes à Tranquil IT. Mettre à 0 pour désactiver la télémétrie.

send_usage_report = True

sign_digests (défaut sha256)

Liste des algorithmes de signature autorisés pour les paquets WAPT.

sign_digests = sha1

Fonctionnalité WAPT Enterprise uniquement use_ad_groups (défaut False)

Permet l’utilisation des paquets unit.

use_ad_groups = True

use_fqdn_as_uuid (défaut False)

Permet d’utiliser le FQDN plutôt que l’UUID du BIOS comme identifiant unique de la machine dans WAPT.

use_fqdn_as_uuid = True

use_kerberos (par défaut False)

Permet d’utiliser l’authentification kerberos pour l’enregistrement initial des agents WAPT avec le serveur WAPT.

use_kerberos = True

use_hostpackages (défaut False)

Permet d’utiliser les paquets hôtes.

use_hostpackages = True

use_http_proxy_for_repo (défaut False)

Permet d’utiliser un proxy pour se connecter au dépôt principal de WAPT à partir de la console.

use_http_proxy_for_repo = True

use_http_proxy_for_server (défaut False)

Permet d’utiliser un proxy pour se connecter au serveur WAPT à partir de la console.

use_http_proxy_for_server = True

Fonctionnalité WAPT Enterprise uniquement use_repo_rules (défaut False)

Permet d’utiliser replication pour les dépôts.

use_repo_rules = True

verify_cert (défaut False)

Pour la vérification des certificats SSL / TLS.

verify_cert = True

wapt_server (défaut None)

Définit le port du serveur PostgreSQL.

wapt_server = https://srvwapt.mydomain.lan

Description des options disponibles sur AppData\Roaming

Options / Valeur par défaut

Description

Exemple

advanced_mode (défaut False)

Lance la Console WAPT en mode débogage.

advanced_mode = True

enable_external_tools (défaut False)

Affiche les actions qui appellent des applications externes (RDP, outils Windows etc…).

enable_external_tools = True

enable_management_features (défaut False)

Affiche le bouton pour créer des certificats auto-signés ou pour créer l’installateur de l’agent WAPT.

enable_management_features = True

hide_unavailable_actions (défaut False)

Masque les actions qui ne sont pas disponibles pour l’agent WAPT

hide_unavailable_actions = True

HostsLimit (défaut 2000)

Limite des hôtes affichés dans la console WAPT.

HostsLimit = 300

language (langue par défaut du client WAPT)

Force la langue par défaut pour l’interface graphique (pas pour le filtrage des paquets)

language = fr

lastappinifilename (défaut None)

Définit le fichier .ini utilisé pour stocker la configuration de la console WAPT.

lastappinifilename = C:\Users\%username%\AppData\Roaming\waptconsole\waptconsole.ini

show_host_audit_data_tab (défaut False)

Affiche l’onglet Données d’audit sur l’inventaire des machines.

show_host_audit_data_tab = True

Fonctionnalité WAPT Enterprise uniquement use_ad_groups (défaut False)

Permet l’utilisation des paquets unit.

use_ad_groups = True

use_fqdn_as_uuid (défaut False)

Permet d’utiliser le FQDN plutôt que l’UUID du BIOS comme identifiant unique de la machine dans WAPT (par défaut False).

use_fqdn_as_uuid = True

waptconsole.version (défaut None)

Affiche la version de la Console WAPT.

waptconsole.version = 2.0.0.9424

waptwua_enabled (défaut False)

Affiche l’onglet Mises à jour Windows sur la Console WAPT.

waptwua_enabled = True

[sections]

Vous pouvez ajouter plusieurs dépôts externes en ajoutant [sections] dans C:\Users\%username%\AppData\Local\waptconsole\waptconsole.ini.

Attention

Ce paramètre peut être configuré à la fois dans la configuration de l’agent WAPT et dans la configuration de la console WAPT C:\Users\%username%\AppData\Local\waptconsole\waptconsole.ini.

Pour des informations sur la configuration de l’agent WAPT, veuillez vous référer à ce point.

Voir les paramètres et configurations disponibles ici.

Configuration du Serveur WAPT

Le fichier de configuration du serveur WAPT sur les systèmes GNU/ Linux et macOS se trouve dans /opt/wapt/conf/waptserver.ini ou dans /opt/wapt/waptserver/waptserver.ini.

Le fichier de configuration du serveur WAPT sur les systèmes Windows se trouve dans C:\wapt\conf\waptserver.ini.

Attention

La modification de ces fichiers est réservée aux utilisateurs avancés !

Section [option] de waptserver.ini

Plusieurs options peuvent être définies dans cette section.

[options]
Paramètres disponibles pour la section [options] du fichier waptserver.ini

Options / Valeur par défaut

Description

Exemple

agents_folder (défaut watpagent in wapt repository)

Définit où les agents WAPT sont stockés sur le serveur WAPT.

agents_folder = /var/www/wapt/waptagent

allow_unauthenticated_connect (défaut None)

Définit si les connexions websocket doivent être authentifiées. Si :code:use_kerberos = True, alors allow_unauthenticated_connect DOIT être mis à False car cette valeur sera prioritaire.

allow_unauthenticated_connect = True

allow_unauthenticated_registration (défaut False)

Permet l’enregistrement initial de l’agent WAPT en utilisant un login et un mot de passe.

allow_unauthenticated_registration = True

allow_unsigned_status_data (défaut False)

Débogage uniquement - Permet à l’agent d’envoyer des données d’état non signées.

allow_unsigned_status_data = True

application_root (défaut None)

Définit un chemin racine personnalisé pour le serveur WAPT.

application_root = wapt

authentication_logs (défaut True)

Active les journaux d’authentification.

authentication_logs = False

auto_create_waptagent_from_config (défaut False)

Utilise le fichier de configuration automatique lorsque waptsetup est installé.

auto_create_waptagent_from_config = True

client_certificate_lifetime (défaut 3650)

Définit la durée de vie du certificat de la machine (en jours).

client_certificate_lifetime = 500

cleanup_kbs (défaut True)

Définit si les KB Windows non utilisés :ref:` doivent être automatiquement supprimés <auto_kb_clean>` du serveur WAPT.

cleanup_kbs = False

clients_read_timeout (défaut 5)

Définit le délai d’attente du client websocket (en secondes).

clients_read_timeout = 10

clients_signing_certificate (défaut None)

Définit le certificat de signature de la machine.

clients_signing_certificate = C:\private\org-coder.crt

clients_signing_crl_days (défaut 30)

Définit la périodicité de la signature du certificat de la CRL de la machine (en jours).

clients_signing_crl_days = 15

clients_signing_crl (défaut None)

Définit le chemin de la CRL du certificat de signature machine.

clients_signing_crl = C:\private\org-coder.crt

clients_signing_crl_url (défaut None)

Définit l’URL de la CRL du certificat de signature machine.

clients_signing_crl_url = https://srvwapt.mydomain.lan/crl

clients_signing_key (défaut None)

Définit le chemin de la clé de signature du certificat de la machine.

clients_signing_key = C:\private\org-coder.crt

client_tasks_timeout (défaut 5)

Définit le délai maximum autorisé avant que l’agent WAPT bascule en time-out (en secondes).

client_tasks_timeout = 5

copy_winpe_x64_in_tftp_folder (défaut False)

Si x64, permet de copier tous les WinPE à partir de wads_folder lorsque les WinPE sont téléchargés.

copy_winpe_x64_in_tftp_folder = True

db_connect_timeout (défaut 3)

Définit le délai maximum autorisé avant que les requêtes PostgreSQL n’expirent (en secondes).

db_connect_timeout = 10

db_host (défaut None)

Définit l’url du serveur PostgreSQL (par défaut WAPT utilise une socket Unix locale).

db_host = https://wapt.mydomain.lan

db_max_connections (défaut 90)

Définit le nombre maximum de connexions simultanées à la base de données PostgreSQL.

db_max_connections = 100

db_name (défaut wapt)

Définit la base de données PostgreSQL à laquelle le serveur WAPT se connecte.

db_name = wapt

db_password (défaut None)

Définit le mot de passe pour authentifier l’utilisateur sur la base de données PostgreSQL (par défaut WAPT utilise une socket UNIX locale).

db_password = WAPT_DB_PASSWORD

db_port (défaut 5432)

Définit le port du serveur PostgreSQL.

db_port = 5432

db_stale_timeout (défaut 300)

Définit le délai d’expiration de la requête à la base de données (en secondes).

db_stale_timeout = 500

db_user (défaut wapt)

Définit l’utilisateur PostgreSQL qui se connecte à la base de données.

db_user = wapt

default_ldap_users_acls (défaut view)

Définit l’acl par défaut pour un nouvel utilisateur qui ouvre la Console WAPT.

default_ldap_users_acls = admin

download_wsusscn2 (défaut False)

Télécharge automatiquement le fichier :wsusscn2.cab.

download_wsusscn2 = False

enable_store (défaut False)

Active le store WAPT web (Déprécié).

enable_store = False

encrypt_host_packages (défaut False)

Chiffre le paquet hôte avec le certificat du client.

encrypt_host_packages = True

htpasswd_path (défaut None)

Ajoute l’authentification de base au serveur WAPT.

htpasswd_path = True

http_proxy (défaut None)

Définit le serveur proxy pour permettre au serveur WAPT de récupérer sa CRL.

http_proxy = http://srvproxy.mydomain.lan:3128

known_certificates_folder (défaut répertoire /ssl/)

Ajoute une CA supplémentaire connue pour vérifier les certificats.

known_certificates_folder = /opt/wapt/ssl/

ldap_account_service_login (défaut None)

Définit l’utilisateur UPN Active Directory pour le SSO et/ou le mode waptserver-ldap pour le self-service.

ldap_account_service_login = wapt-ldap@ad.tranquil.it

ldap_account_service_password (défaut None)

Définit le mot de passe de l’utilisateur pour le SSO et/ou le mode waptserver-ldap pour le self-service.

ldap_account_service_password = PASSWORD

ldap_auth_base_dn (défaut None)

Définit le DN de base pour l’authentification LDAP.

ldap_auth_base_dn = dc=mydomain,dc=lan

ldap_auth_server (défaut None)

Définit le serveur d’authentification LDAP.

ldap_auth_server = srvads.mydomain.lan

ldap_auth_ssl_enabled (défaut True)

Définit l’authentification SSL pour les connexions LDAP.

ldap_auth_ssl_enabled = False

ldap_nesting_group_support (défaut True)

Permet la recherche de groupes imbriqués dans Active Directory.

ldap_nesting_group_support = False

ldap_primary_group_ad_support (défaut True)

Active la recherche sur les utilisateurs du groupe primaire d’Active Directory.

ldap_primary_group_ad_support = False

list_subnet_skip_login_wads (défaut [])

Liste les sous-réseaux sans exigence d’authentification.

list_subnet_skip_login_wads = 192.168.0.0/24,192.168.1.0/24

login_on_wads (default False)

Active l’authentification pour utiliser WADS (le format est user:password).

login_on_wads = True

loglevel (défaut warning)

Définit le niveau du journal d’historisation. Les valeurs possibles sont : debug, info, warning, critical.

loglevel = debug

max_clients (défaut 4096)

Définit le nombre maximum de connexions simultanées de clients WAPT.

max_clients = 2048

min_password_length (défaut 10)

Définit la longueur minimale du mot de passe du SuperAdmin.

min_password_length = 15

nginx_http (défaut 80)

Définit le port HTTP du serveur web Nginx (Windows uniquement).

nginx_http = 8080

nginx_https (défaut 443)

Définit le port HTTPS du serveur web Nginx (Windows uniquement).

nginx_https = 44380

optimized_authentication_logs (défaut True)

Si une de ces options est renseignée, le journal d’historisation ne l’enregistrera pas : waptagent_version, host_tasks_status, get_ad_groups, get_ad_sites, get_ad_ou_split, host_data, get_hosts , audit_data, wsus.windows_updates, wsus.windows_products, wsus.windows_updates_classifications, packages_for_hosts, enterprise.reporting_exec, known_packages, repositories.get_all_agentrepos, repositories.get_sync_version, repositories.get_all_rules, get_all_users_acls, known_signers_certificates, enterprise.reporting_list, usage_statistics, repositories.get_createupdatefilesync, repositories.get_sync_changelog, licences

optimized_authentication_logs = False

remote_repo_update_delay (default True)

Définit la périodicité à laquelle le serveur WAPT vérifie l’état de synchronisation des dépôts distants (en minutes).

remote_repo_update_delay = 5

remote_repo_websockets (défaut True)

Permet la communication websocket avec les agents WAPT configurés en tant que dépôts distants.

remote_repo_websockets = False

secret_key (défaut None)

Définit la chaîne aléatoire pour initialiser le serveur d’application Python Flask. La chaîne est générée lors de la première installation du serveur WAPT et est unique pour chaque serveur WAPT.

secret_key = FKjfzjfkF687fjrkeznfkj7678jknk78687

server_uuid (défaut None)

Définit l”UUID du Serveru WAPT (cet identifiant anonyme est utilisé pour les statistiques WAPT).

server_uuid = 76efezfa6-b309-1fez5-92cd-8ea48fc122dc

session_lifetime (défaut 126060)

Définit le temps maximum autorisé pour l’ouverture de la session (en secondes).

session_lifetime = 352120

signature_clockskew (défaut 300)

Définit la différence de temps maximale autorisée pour les websockets (en secondes).

signature_clockskew = 72000

token_lifetime (défaut 43200)

Définit la durée de vie du jeton d’authentification (en secondes).

token_lifetime = 43200

trusted_signers_certificates_folder (défaut None)

Définit le chemin d’accès au répertoire des certificats des signataires de confiance.

trusted_signers_certificates_folder = C:\private\org-coder.crt

trusted_users_certificates_folder (défaut None)

Définit le chemin d’accès au répertoire des certificats CA des utilisateurs de confiance.

trusted_users_certificates_folder = C:\private\org-coder.crt

use_kerberos (par défaut False)

Permet à un Agent WAPT de s’enregistrer en utilisant son compte kerberos. Si :code:use_kerberos = True, alors allow_unauthenticated_connect DOIT être mis à False, sinon ce paramètre sera prioritaire.

use_kerberos = True

use_ssl_client_auth (défaut False)

Active l’authentification par certificat client.

use_ssl_client_auth = True

verify_cert_ldap (défaut True)

Vérifie si le certificat SSL / TLS d’Active Directory est valide pour les connexions LDAP.

verify_cert_ldap = False

wads_enable (défaut False)

Active la fonctionnalité WADS et active wapttftpserver.

wads_enable = True

wads_folder (défaut répertoire wads dans le dépôt WAPT)

Définit le répertoire sur le serveur WAPT qui stocke les fichiers liés à WADS.

wads_folder = /var/www/waptwads

wapt_admin_group_dn (défaut None)

Définit le DN LDAP du groupe d’utilisateurs Active Directory autorisé à se connecter à la console WAPT.

wapt_admin_group_dn = CN=waptadmins,OU=groups,DC=ad,DC=mydomain,DC=lan

wapt_admin_group (défaut None)

Définit le(s) groupe(s) d’utilisateurs Active Directory sAMAccountName autorisé(s) à se connecter à la console WAPT. La valeur peut être plusieurs groupes, séparés par des virgules.

wapt_admin_group = waptadmins, wapttechs

wapt_folder (défaut /var/www/wapt ou /var/www/html/wapt ou root_dir/waptserver/repository/wapt)

Définit le chemin vers le dépôt principal de WAPT.

wapt_folder = /var/www/wapt

wapt_huey_db (défaut None)

Définit le chemin vers la base de données qui stocke l’état des tâches en cours.

wapt_huey_db = C:\Program Files(x86)\wapt\db\waptservertasks.sqlite

wapt_password (défaut None)

Définit le mot de passe du SuperAdmin pour la connexion à la console WAPT.

wapt_password = 46642dd2b1dfezfezgfezgadf0ezgeezgezf53d

waptserver_port (défaut 8080)

Définit le port du service python du serveur WAPT.

waptserver_port = 1313

wapt_user (défaut admin)

Définit le nom d’utilisateur du SuperAdmin dans la console WAPT.

wapt_user = wapt_admin

waptwua_folder (défaut wapt_folder + “wua”)

Définit l’emplacement du dossier WAPT WUA.

waptwua_folder = /var/www/waptwua

wol_port (défaut 7,9)

Définit la liste des ports UDP auxquels envoyer des paquets magiques WakeOnLAN.

wol_port = 9, 123, 4000

wapt_bind_interface (défaut 127.0.0.1)

Définit comment écouter le service du serveur WAPT.

wapt_bind_interface = 127.0.0.1

ipxe_script_jinja_path (défaut /opt/wapt/waptserver/templates/ipxe-default.j2)

Définit l’emplacement du modèle jinja utilisé pour le script ipxe dans WADS.

ipxe_script_jinja_path = /opt/wapt/waptserver/templates/ipxe-autoregister.j2

Configuration de Nginx

La configuration par défaut de Nginx est la suivante :

server {
  listen                      80;
  listen                      443 ssl;
  server_name                 _;
  ssl_certificate             "/opt/wapt/waptserver/ssl/cert.pem";
  ssl_certificate_key         "/opt/wapt/waptserver/ssl/key.pem";
  ssl_protocols               TLSv1.2;
  ssl_dhparam                 /etc/ssl/certs/dhparam.pem;
  ssl_prefer_server_ciphers   on;
  ssl_ciphers                 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
  ssl_stapling                on;
  ssl_stapling_verify         on;
  ssl_session_cache           none;
  ssl_session_tickets         off;
  index index.html;

  location ~ ^/wapt.* {
    proxy_set_header Cache-Control "store, no-cache, must-revalidate, post-check=0, pre-check=0";
    proxy_set_header Pragma "no-cache";
    proxy_set_header Expires "Sun, 19 Nov 1978 05:00:00 GMT";
    root "/var/www";
    }

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

  location ~ ^/(api/v3/upload_packages|api/v3/upload_hosts/|upload_waptsetup) {
    proxy_pass http://127.0.0.1:8080;
    client_max_body_size 4096m;
    client_body_timeout 1800;
    }

  location /wapt-host/Packages {
    return 403;
    }

  location /wapt-host/add_host_kerberos {
    return 403;
    }

  location / {
    proxy_pass http://127.0.0.1:8080;
    }

  location /socket.io {
    proxy_http_version 1.1;
    proxy_buffering off;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_pass http://127.0.0.1:8080/socket.io;
    }
  }
}

Configuration du serveur WAPT pour les grands déploiements

Les paramètres par défaut du système d’exploitation, de Nginx et de Postgresql sont adaptés pour environ 400 agents WAPT. Si vous avez plus de 400 clients, il est nécessaire de modifier quelques paramètres au niveau du système ainsi que la base de données PostgreSQL, le serveur web Nginx et le serveur python WAPT Server.

Dans le futur, le script postconf.sh pourra prendre en charge cette configuration en fonction du nombre d’ordinateurs clients attendus.

Avec les paramètres suivants, un serveur WAPT devrait pouvoir fonctionner avec environ 5000 clients actifs simultanés. Vous pouvez avoir plus de clients dans la base de données s’ils ne fonctionnent pas tous en même temps. Si vous avez plus de 5000 clients, il est recommandé d’avoir plus d’un serveur WAPT.

La limite du nombre de clients finaux est due à un goulot d’étranglement dans le code python et le backend PostgreSQL. Les performances de WAPT s’améliorent avec le temps et, à l’avenir, le serveur WAPT pourrait supporter une large base sur un seul serveur. Cependant, la partie Nginx s’adapte très bien et peut tirer pleinement parti d’une connexion 10Gbps pour les déploiements de paquets à forte charge.

Note

Les paramètres à modifier ci-dessous sont liés entre eux et doivent être modifiés globalement et non individuellement.

Configuration de Nginx

nginx.conf emplacement du fichier de configuration

Type d’OS

Localisation des fichiers

Debian / Ubuntu

/etc/nginx/nginx.conf

Redhat et dérivés

/etc/nginx/nginx.conf

Windows

C:\wapt\waptserver\nginx\conf\nginx.conf

Dans le fichier nginx.conf, modifiez le paramètre worker_connections. La valeur doit être d’environ 2,5 fois le nombre de clients WAPT (n connexions pour les websockets et n connexions pour les téléchargements de packages et le téléchargement d’inventaire + une certaine marge).

events {
  worker_connections 4096;
}

Mettez ensuite à niveau le nombre de filedescriptors dans le fichier /etc/nginx/nginx.conf (pour Windows C:\wapt\waptserver\nginx\conf\nginx.conf) :

worker_rlimit_nofile 32768;

En fonction du partitionnement de votre serveur WAPT, vous devrez peut-être faire attention au répertoire de téléchargement de fichiers temporaires de Nginx. Nginx agit comme un proxy inverse pour le moteur Python de WAPTServer et fait une mise en cache des paquets téléchargés lors du téléchargement d’un nouveau paquet depuis la console.

Les paquets sont stockés dans le répertoire /var/lib/nginx/proxy. Vous devez vous assurer que la partition qui héberge ce répertoire est suffisamment grande. Vous pouvez modifier l’emplacement de ce répertoire en utilisant le paramètre de configuration suivant de Nginx.

$client_body_temp_path

Configuration du système Linux

Augmenter le nombre de filedescriptors. Le fichier d’unité du système demande une augmentation du nombre autorisé de filedescriptors (LimitNOFILE=32768). Nous devrions avoir la même chose pour Nginx. Il y a quelques limites à modifier.

Tout d’abord, nous modifions au niveau du système le nombre de filedescriptors autorisés pour Nginx et WAPT.

  • Créer /etc/security/limits.d/wapt.conf.

cat > /etc/security/limits.d/wapt.conf <<EOF
wapt         hard    nofile      32768
wapt         soft    nofile      32768
www-data     hard    nofile      32768
www-data     soft    nofile      32768
EOF

Nginx sert de proxy inverse et établit un grand nombre de connexions. Chaque client WAPT maintient une connexion websocket en permanence afin de répondre aux actions du serveur WAPT.

Le noyau Linux a une protection contre le fait d’avoir trop de connexions TCP ouvertes en même temps et on peut obtenir le message SYN flooding on port dans le journal de Nginx. Afin d’éviter ces messages, il est nécessaire de modifier les deux paramètres suivants. Il doit être environ 1,5 fois le nombre de clients WAPT.

cat > /etc/sysctl.d/wapt.conf <<EOF
net.ipv4.tcp_max_syn_backlog=4096
net.core.somaxconn=4096
EOF

sysctl --system

Configuration de la base de données PostgreSQL

postgresql.conf emplacement du fichier de configuration

Type d’OS

Localisation des fichiers

Debian / Ubuntu

/etc/postgresql/{version}/main/postgresql.conf

Redhat et dérivés

/var/lib/pgsql/{version}/data/postgresql.conf

Windows

C:\wapt\waptserver\pgsql{version}_data\postgresql.conf

Un plus grand nombre de clients nécessite un plus grand nombre de connexions à la base de données PostgreSQL. Dans le fichier postgresql.conf file (file:/etc/postgresql/11/main/postgresql.conf sur debian 10 par exemple ou pour Windows C:\wapt\waptserver\pgsql9.6_data\postgresql.conf), vous devez augmenter le paramètre suivant pour atteindre approximativement 1/4 du nombre d’agents WAPT actifs.

max_connections = 1000

Dans le fichier /opt/wapt/conf/waptserver.ini (pour Windows C:\wapt\conf\waptserver.ini, db_max_connections` doit être égal au max_connections` de PostgreSQL moins 10 (PostgreSQL a besoin de garder quelques connexions pour son ménage). Le paramètre max_clients devrait être fixé à environ 1,2 fois le nombre d’agents WAPT :

[options]
...
max_clients = 4096
db_max_connections = 990