Attention : le support de WAPT 2.0 a pris fin le 30 juin 2022.

Merci de mettre à jour sur la version supportée la plus récente

Configuration de l’agent WAPT avec des options avancées

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/

Mac OS

/opt/wapt/

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 :

https://store.wapt.fr/store/tis-wapt-conf-policy

# -*- 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]

Global WAPT agent options.

[wapt]

Main repository options.

[wapt-template]

External remote repository options.

[wapt-host]

Repository for host packages options.

[waptwua]

WUA agent options.

[repo-sync]

For synching multiple repositories.

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

Description des options disponibles par section

[global]

General settings

Description of available options for the WAPT agent in the [global] section

Options / Valeur par défaut

Description

Exemple

WAPT Enterprise feature only allow_remote_reboot = False

Allows rebooting hosts remotely from the WAPT console (default False).

allow_remote_reboot = True

WAPT Enterprise feature only allow_remote_shutdown = False

Allows shutting down the host remotely from the WAPT console (default False).

allow_remote_reboot = True

check_certificates_validity = False

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

check_certificates_validity = True

dbpath = 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 = 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

WAPT Enterprise feature only host_organizational_unit_dn = 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

WAPT Enterprise feature only host_profiles = non défini

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 sur le client

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

language = fr

locales = locale par défaut sur le client

Allows to set the list of WAPT agent languages to pre-filter the list of packages visible by the WAPT agent (for package filtering). The parameter accepts multiple entries ordered by preference (eg. locales=fr,en).

locales = en

log_to_windows_events = False

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

log_to_windows_events = True

loglevel = warning

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

loglevel = critical

maturities = 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 = l’adresse de votre dépôt WAPT

Adresse du dépôt principal de WAPT.

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

repositories = 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 = 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 = system

Sets how the self service authentication works. Possible values are: system, waptserver-ldap or waptagent-ldap

service_auth_type = waptserver-ldap

WAPT Enterprise feature only uninstall_allowed = True

Defines whether or not it is possible for the user to uninstall applications via the self-service.

uninstall_allowed = False

WAPT Enterprise feature only use_ad_groups = False

For using group packages (default False).

use_ad_groups = True

use_fqdn_as_uuid = False

Allows to use the FQDN rather than the BIOS UUID as the unique machine identifier in WAPT (default False).

use_fqdn_as_uuid = True

use_hostpackages = False

Defines whether host packages are to be used (default False).

use_hostpackages = True

WAPT Enterprise feature only use_repo_rules = False

Defines whether repositories are replicated (default False).

use_repo_rules = True

waptaudit_task_period = None

Définit la fréquence à laquelle les audits sont déclenchés.

waptaudit_task_period = 120

wapt_server = None

Defines the WAPT Server URL. If the attribute is not present, no WAPT Server will be contacted.

wapt_server = https://srvwapt.mydomain.lan

waptservice_port = 8088

WAPT agent loopback port. The port is not accessible from the network.

waptservice_port = 8080

waptupdate_task_period = 120m

Defines the update frequency (120 minutes by default).

waptupdate_task_period = 24h

waptupgrade_task_period = None

Defines the upgrade frequency

waptupgrade_task_period = 360

Note

  • If there is no repo_url attribute in the [global] section, then a repository in the [wapt] section will have to be explicitly defined. It will have to be enabled by adding it to the repositories attribute.

  • If there is no wapt_server attribute in the [global] section, then no WAPT Server will be used.

Paramètres du serveur

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

Description of available options for the WAPT agent in the [global] section for server configuration

Options / Valeur par défaut

Description

Exemple

public_certs_dir = 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 = False

Use kerberos authentication for initial registration on the WAPT Server (default False).

use_kerberos = True

verify_cert = False

See the documentation on activating the verification of HTTPS certificates

verify_cert = True

wapt_server = 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

wapt_server_timeout = 30

Délai de connexion HTTPS du serveur WAPT en secondes

wapt_server_timeout = 10

paramètres waptexit

Description of available options for the WAPT agent in the [global] section for waptexit

Options / Valeur par défaut

Description

Exemple

allow_cancel_upgrade = True (default True)

Prevents users from canceling package upgrades on computer shutdown. If disabled, users will not be able to cancel an upgrade on computer shutdown.

allow_cancel_upgrade = True

hiberboot_enabled = True (default None)

Désactive Hiberboot sur Windows 10 pour que waptexit fonctionne correctement.

hiberboot_enabled = True

max_gpo_script_wait = None (default None)

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

max_gpo_script_wait = 180 (default None)

pre_shutdown_timeout = None

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

pre_shutdown_timeout = 180

Paramètres d’authentification de Self-Service WAPT et Waptservice

Description of available options for the WAPT agent in the [global] section for the WAPT Self-Service and Waptservice Authentification

Options / Valeur par défaut

Description

Exemple

ldap_auth_base_dn = None

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

ldap_auth_base_dn = dc=domain,dc=lan

ldap_auth_ssl_enabled = False

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

ldap_auth_ssl_enabled = True

ldap_auth_server = None

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

ldap_auth_server = srvads.domain.lan

service_auth_type = 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 = False

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

verify_cert_ldap = True

waptservice_admin_filter = False

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

waptservice_admin_filter = True

waptservice_password = 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 = None

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

waptservice_user = admin

paramètres du wapttray

Description of available options for the WAPT agent in the [global] section for the wapttray

Options / Valeur par défaut

Description

Exemple

notify_user = False

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

notify_user = True

Paramètres du proxy

Description of available options for the WAPT agent in the [global] section for the proxy

Options / Valeur par défaut

Description

Exemple

http_proxy = “”

HTTP proxy address

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

use_http_proxy_for_repo = False

Utilisez le proxy pour accéder aux dépôts.

use_http_proxy_for_repo = True

use_http_proxy_for_server = False

Utilisez un proxy pour accéder au serveur WAPT.

use_http_proxy_for_server = True

Paramètres de création des paquets

Description of available options for the WAPT agent in the [global] section for creating WAPT packages

Options / Valeur par défaut

Description

Exemple

default_package_prefix = tis

Préfixe par défaut pour les paquets nouveaux ou importés.

default_package_prefix = doc

default_sources_root = C:\waptdev (Windows) ou ~/waptdev (Linux)

Répertoire pour le stockage des paquets en développement.

default_sources_root = C:\waptdev

default_sources_suffix = wapt

Préfixe par défaut pour les paquets nouveaux ou importés.

default_sources_suffix = doc

personal_certificate_path = “”

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 des dépôts supplémentaires

Liste complète des dépôts utilisables sur wapt-get.ini, une autre [section] peut être ajoutée.

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.

For information on configuring the WAPT console, please refer to this documentation.

[wapt]

Indication

If this section does not exist, parameters are read from the [global] section.

[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.

[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

the WAPT console configuration is stored in 2 locations:

  • 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

[sections]

options du dépôt externe. [wapt-template] est le dépôt Tranquil IT par défaut

[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 of available options in AppData\Local

Options / Valeur par défaut

Description

Exemple

advanced_mode = False

Lance la console en mode débogage.

advanced_mode = True

WAPT Enterprise feature only allow_remote_reboot = False

Allows rebooting hosts remotely from the WAPT console (default False).

allow_remote_reboot = True

WAPT Enterprise feature only allow_remote_shutdown = False

Allows shutting down the host remotely from the WAPT console (default False).

allow_remote_shutdown = True

client_certificate = None

Si le dépôt distant utilise l’authentification SSL côté client

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

client_private_key = None

Si le dépôt distant utilise l’authentification SSL côté client

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

check_certificates_validity = False

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

check_certificates_validity = True

default_maturity = “”

Maturité de téléchargement par défaut pour les paquets WAPT.

default_maturity = PROD

default_package_prefix = tis

Préfixe utilisé pour nommer les paquets WAPT.

default_package_prefix = doc

default_sources_root = C:\waptdev (Windows) ou ~/waptdev (Linux)

Dossier de développement du paquet de base WAPT.

default_sources_root = C:\waptdev

grid_hosts_plugins = W10=

Plugins externes pour la console WAPT. La valeur par défaut est W10= car cela donne [] en base64.

grid_hosts_plugins = W3siZXhlY3V0YWJsZSI6ImV4cGxd

host_profiles = None

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

host_profiles = tis-firefox,tis-java

hiberboot_enabled = False

Désactive Hiberboot sur Windows 10 pour waptexit

hiberboot_enabled = True

http_proxy = None

Adresse du serveur proxy dans la console WAPT.

http_proxy = https://proxy.domain.lan

last_usage_report = “”

Date de la dernière utilisation de la console WAPT.

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

lastwaptserveruser = “”

Dernier utilisateur connecté sur cette console WAPT.

lastwaptserveruser = admin

max_gpo_script_wait = 180

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

max_gpo_script_wait = 360

personal_certificate_path = “”

Chemin d’accès au certificat associé à la clé privée de l’administrateur.

personal_certificate_path = C:\private\mykey.crt

pre_shutdown_timeout = 180

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

pre_shutdown_timeout = 360

repo_url = l’adresse de votre dépôt WAPT

Adresse du dépôt principal de WAPT.

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

send_usage_report = True

Allows the WAPT console to send anonymous statistics to Tranquil IT. Set to False to disable telemetry.

send_usage_report = True

sign_digests = sha256

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

sign_digests = sha1

WAPT Enterprise feature only use_ad_groups = False

Pour utiliser les paquets unit.

use_ad_groups = True

use_fqdn_as_uuid = 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 = False

Utilisez l’authentification kerberos pour l’enregistrement initial sur le serveur WAPT.

use_kerberos = True

use_hostpackages = False

Utilisation des paquets host.

use_hostpackages = True

use_http_proxy_for_repo = False

Utilisez un proxy pour vous connecter au dépôt principal de WAPT à partir de la console.

use_http_proxy_for_repo = True

use_http_proxy_for_server = False

Utilisez un proxy pour vous connecter au serveur WAPT à partir de la console.

use_http_proxy_for_server = True

WAPT Enterprise feature only use_repo_rules = False

Pour les dépôts secondaires.

use_repo_rules = True

verify_cert = False

For verifying SSL / TLS certificate.

verify_cert = True

wapt_server = “”

Adresse du serveur WAPT.

wapt_server = https://srvwapt.mydomain.lan

Description of available options on AppData\Roaming

Options / Valeur par défaut

Description

Exemple

advanced_mode = False

Lance la console en mode débogage.

advanced_mode = True

enable_external_tools = False

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

enable_external_tools = True

enable_management_features = 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 = False

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

hide_unavailable_actions = True

HostsLimit = 2000

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

HostsLimit = 300

language = langue par défaut sur le client

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

language = fr

lastappinifilename = “”

Le fichier ini actuellement utilisé par la console.

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

show_host_audit_data_tab = False

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

show_host_audit_data_tab = True

WAPT Enterprise feature only use_ad_groups = False

For using unit packages (default False).

use_ad_groups = True

use_fqdn_as_uuid = False

Allows you to use the fqdn name rather than the uuid BIOS as the unique machine identifier in wapt (default False).

use_fqdn_as_uuid = True

waptconsole.version = “”

Version de la console

waptconsole.version = 2.0.0.9424

waptwua_enabled = False

For displaying Windows Update tab on console

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.

See available parameters and configurations by visiting this documentation on setting up multiple repositories.

Configuration du serveur WAPT

The WAPT Server configuration file on GNU/ Linux and macOS systems is found in /opt/wapt/conf/waptserver.ini or in /opt/wapt/waptserver/waptserver.ini.

The WAPT Server configuration file on Windows is found in C:\wapt\conf\waptserver.ini.

Attention

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

Section [option] of waptserver.ini

Several options can be defined in the [option] section.

[options]
Available parameters for the [option] section of waptserver.ini

Options / Valeur par défaut

Description

Exemple

allow_unauthenticated_connect = None

Définit si les connexions websocket doivent être authentifiées. Si use_kerberos = True, alors allow_unauthenticated_connect DOIT ÊTRE** défini à False ou il sera prioritaire.

allow_unauthenticated_connect = True

allow_unauthenticated_registration = 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 = 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éfinit un chemin racine personnalisé pour l’application du serveur WAPT.

application_root = wapt

auto_create_ldap_users = True

Relatif aux ACL utilisateurs

auto_create_ldap_users = False

client_certificate_lifetime = 3650

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

client_certificate_lifetime = 500

clients_read_timeout = 5

Définit le délai d’attente du client websocket.

clients_read_timeout = 10

clients_signing_certificate = None

Définit le chemin du certificat de signature de l’hôte.

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

clients_signing_crl_days = 30

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

clients_signing_crl_days = 15

clients_signing_crl = None

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

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

clients_signing_crl_url = None

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

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

clients_signing_key = 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 = 5

Définit le délai maximum autorisé avant que l’agent WAPT n’indique un timeout.

client_tasks_timeout = True

db_connect_timeout = 3

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

db_connect_timeout = 10

db_host = None

Définit l’url du serveur PostgreSQL (par défaut WAPT utilise un Socket Unix local).

db_host = https://sql.mydomain.lan

db_max_connections = 90

Définit l’url du serveur PostgreSQL (par défaut WAPT utilise un Socket Unix local).

db_max_connections = 100

db_name = wapt

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

db_name = doc

db_password = None

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

db_password = WAPT-DB

db_port = 5432

Définit le port du serveur PostgreSQL.

db_port = 1365

db_stale_timeout = 300

Définit le délai du timeout de la base de données.

db_stale_timeout = 500

db_user = wapt

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

db_user = doc

WAPT Enterprise feature only enable_store = False

Active le WAPT Store sur l’interface web.

enable_store = False

encrypt_host_packages = False

Chiffre le paquet machine avec le certificat du client.

encrypt_host_packages = True

htpasswd_path = None

Ajoute l’authentification de base au serveur WAPT.

htpasswd_path = True

http_proxy = 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 = dossier par défaut de WAPT /ssl/ folder

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

known_certificates_folder = /opt/wapt/ssl/

ldap_auth_base_dn = None

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

ldap_auth_base_dn = dc=mydomain,dc=lan

ldap_auth_server = None

Définit le serveur d’authentification LDAP.

ldap_auth_server = srvads.mydomain.lan

ldap_auth_ssl_enabled = True

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

ldap_auth_ssl_enabled = False

loglevel = warning

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

loglevel = debug

max_clients = 4096

Définit la connexion maximale simultanée des clients WAPT.

max_clients = 2048

min_password_length = 10

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

min_password_length = 15

nginx_http = 80

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

nginx_http = 8080

nginx_https = 443

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

nginx_https = 44380

remote_repo_support = False

Active la fonctionnalité de dépôts distants à partir du serveur WAPT.

remote_repo_support = True

remote_repo_websockets = True

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

remote_repo_websockets = False

secret_key = None

Définit la chaîne aléatoire pour initialiser le serveur d’application Python Flask. Elle 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 = None

Définit le serveur WAPT UUID (cet identifiant anonyme est utilisé pour les statistiques WAPT).

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

signature_clockskew = 300

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

signature_clockskew = 72000

token_lifetime = 12*60*60

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

token_lifetime = 43200

trusted_signers_certificates_folder = 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 = 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 = False

Permet à un agent WAPT de s’enregistrer en utilisant son compte kerberos. Si use_kerberos = True, alors allow_unauthenticated_connect DOIT ÊTRE** défini à False ou il sera prioritaire.

use_kerberos = True

use_ssl_client_auth = False

Active l’authentification par certification du client.

use_ssl_client_auth = True

wapt_admin_group_dn = []

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_folder = /var/www/wapt ou /var/www/html/wapt ou WAPT root_dir/waptserver/repository/wapt

Définit le chemin du répertoire du dépôt WAPT.

wapt_folder = /var/www/wapt

wapt_huey_db = None

Définit le chemin d’accès à la base de données qui gère les tâches.

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

wapt_password = None

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

wapt_password = 46642dd2b1dfezfezgfezgadf0ezgeezgezf53d

waptserver_port = 8080

Définit le port du service python du serveur WAPT, la valeur par défaut est 8080.

waptserver_port = 1313

wapt_user = admin

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

wapt_user = wapt_admin

waptwua_folder = dossier_wapt + “wua”

Définit l’emplacement du dossier WAPT WUA.

waptwua_folder = /var/www/waptwua

wol_port = 9

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

wol_port = 9,123,4000

wapt_bind_interface = 127.0.0.1

Définit comment écouter le service waptserver.

wapt_bind_interface = 192.168.0.50

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

Dans le fichier /etc/nginx/nginx.conf (pour Windows C:\wapt\waptserver\nginx\conf\nginx.conf), modifiez le paramètre worker_connections. La valeur doit être environ 2,5 fois le nombre de clients WAPT (n connexions pour les websockets et n connexions pour les téléchargements de paquets et les envois 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

A higher number of clients need a higher number of connections to the PostgreSQL database. In the postgresql.conf file (file:/etc/postgresql/{version}/main/postgresql.conf on debian 10 for example or for Windows C:\wapt\waptserver\pgsqlversion_data\postgresql.conf), you need to increase the following parameter to approximately 1/4 the number of active WAPT agents.

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