4. Configuration des dépôts WAPT

4.1. Localisation du dépôt sur le serveur

Système d’exploitation

Valeur

Debian / Ubuntu

/var/www/wapt/

Redhat et dérivés

/var/www/html/wapt/

Windows

C:\wapt\waptserver\repository

4.2. Répliquer un dépôt Fonctionnalité WAPT Enterprise uniquement

4.2.1. Aperçu fonctionnel

Indication

La méthode expliquée ci-dessous ne concerne que la version Enterprise.

La méthode Syncthing, est dépréciée et non supportée, mais peut être utilisée pour les versions Discovery de WAPT.

4.2.1.1. Rôle de réplication de l’agent WAPT

La réplication du dépôt peut être activée en utilisant un agent WAPT installé sur une machine existante, une appliance dédiée ou une machine virtuelle.

Le rôle de réplication est déployé par le biais d’un paquet WAPT qui active le serveur web Nginx et configure la planification, les types de paquets, la synchronisation des paquets, et bien plus encore.

Cette fonctionnalité permet aux agents WAPT de trouver dynamiquement leur dépôt WAPT disponible le plus proche à partir d’une liste de règles stockées sur le serveur WAPT.

4.2.1.2. Comportement de réplication

La réplication du dépôt dans WAPT est gérée nativement par les agents WAPT.

Il est basé sur un fichier sync.json qui indexe tous les fichiers présents dans ces dossiers :

  • wapt ;

  • waptwua ;

  • wapt-host ;

  • wads.

L’activation de la réplication a les effets suivants :

  • Une fois que enable_remote_repo est activé sur un agent WAPT, il synchronisera les paquets localement dans le dossier local_repo_path.

  • Il ajoute l’agent WAPT dans l’onglet Dépôts secondaires comme un dépôt distant, permettant de nouvelles actions telles que Sync tous ou Créer l’index.

  • Par défaut, seul le dossier wapt est synchronisé, vous pouvez sélectionner le dossier à synchroniser en ajoutant des éléments dans les paramètres remote_repo_dirs.

  • La période de synchronisation peut être configurée avec les paramètres local_repo_time_for_sync_start et local_repo_time_for_sync_stop.

  • La bande passante allouée à la synchronisation peut être configurée avec local_repo_limit_bandwidth.

Tous les paramètres de la synchronisation du dépôt WAPT doivent être définis dans la section [repo-sync] du fichier de configuration wapt-get.ini de l’agent WAPT.

Diagramme de flux du comportement de réplication de l'agent WAPT

Diagramme de flux du comportement de réplication de l’agent WAPT

4.2.2. Configuration de l’agent WAPT

Pour activer la réplication sur un Agent WAPT existant (Linux / Windows) vous devez définir dans la section [repo-sync] dans le fichier de configuration wapt-get.ini.

Indication

Si vous utilisez le DNS, n’oubliez pas de créer une entrée DNS pour votre agent WAPT.

Configuration de la réplication de l’agent WAPT

Options (Valeur par défaut)

Définition

Exemple

enable_remote_repo (défault False)

Permet au dépôt secondaire de se synchroniser avec le dépôt principal.

enable_remote_repo (défaut True)

local_repo_path (défaut``WAPT root dir/repository``)

Définit le chemin vers le répertoire racine du dépôt local pour les paquets WAPT.

local_repo_path = /var/www/

local_repo_time_for_sync_start (défaut None)

Définit l’heure de début de la synchronisation (HH:MM / format 24h).

local_repo_time_for_sync_start = 22:30

local_repo_time_for_sync_end (défaut None)

Définit l’heure d’arrêt de la synchronisation (HH:MM / format 24h).

local_repo_time_for_sync_end = 05:30

local_repo_sync_task_period (défaut None)

Définit la périodicité de la synchronisation (en minutes).

local_repo_sync_task_period = 25

local_repo_limit_bandwidth (défaut None)

Définit la largeur de bande autorisée pour la synchronisation (en Mbits/s).

local_repo_limit_bandwidth = 2

remote_repo_dirs (défaut wapt,waptwua)

Définit les dossiers à synchroniser.

remote_repo_dirs = wapt,waptwua,wapt-host

use_repo_rules (défaut False)

Active l’utilisation des règles du dépôt.

use_repo_rules = True

sync_only_forced (défaut False)

Synchronise le dépôt uniquement s’il est forcé.

sync_only_forced = True

Avertissement

Si vous modifiez manuellement le fichier wapt-get.ini sur le dépôt secondaire, vous devez redémarrer waptservice.

Note

Un Paquet WAPT prêt à l’emploi est disponible sur le store public Tranquil IT pour permettre la réplication du dépôt sur des agents WAPT basés sur Windows ou Linux.

Ainsi, le bureau de l’accueil d’un bureau distant de n’importe quelle organisation peut devenir un référentiel WAPT pour distribuer des packages WAPT à la flotte d’ordinateurs du bureau distant.

Ce paquet spécial :

  • Installe et active le serveur web Nginx sur le dépôt seconfaire.

  • Configure l’environnement de l’hôte virtuel Nginx.

  • Active la configuration du dépôt secondaire dans wapt-get.ini.

Il est possible de configurer automatiquement les dépôts avec vos propres valeurs en modifiant ce paquet.

Voici un exemple de wapt-get.ini.

[global]
...
use_repo_rules = True

[repo-sync]
enable_remote_repo = True
local_repo_path = D:\WAPT\
local_repo_time_for_sync_start = 20:30
local_repo_time_for_sync_end = 05:30
local_repo_sync_task_period = 25
local_repo_limit_bandwidth = 4
remote_repo_dirs = wapt, waptwua, wapt-host

4.2.3. Configuration du serveur WAPT

Par défaut, le serveur sait quels agents WAPT sont configurés en tant que dépôt secondaire et il les répertorie dans la console WAPT.

4.2.4. Règles du dépôt

Lorsqu’un agent WAPT a été configuré comme dépôt, il récupère automatiquement son fichier rules.json depuis le serveur WAPT.

Le fichier rules.json est un fichier .json signé qui contient une liste de règles triées à appliquer aux agents WAPT distants, afin qu’ils puissent se connecter aux dépôts les plus appropriés.

Si aucune règle ne correspond, l’agent WAPT se rabattra sur le paramètre repo_url du serveur WAPT défini dans le fichier de configuration wapt-get.ini.

Diagramme de flux du comportement de réplication de l'agent WAPT

4.2.4.1. Agent WAPT

Avertissement

Si vous avez configuré des redirections GeoIP sur Nginx, vous devez les désactiver car elles peuvent entrer en conflit avec les règles du dépôt.

Pour activer les règles du dépôt de l’agent WAPT, vous devez activer ce paramètre dans la section [global] du fichier de configuration wapt-get.ini de l’agent WAPT.

Options (Valeur par défaut)

Description

Exemple

use_repo_rules (défaut False)

Pour l’utilisation de réplication du dépôt.

use_repo_rules = True

Voici un exemple de wapt-get.ini.

[global]
...
use_repo_rules = True

Note

Il est possible d’activer cette option lors de la génération d’un agent WAPT.

4.2.4.2. Serveur WAPT

Sur le serveur WAPT, la fonctionnalité des dépôts secondaires est automatiquement activée.

Pour le contrôler, éditez waptserver.ini et lisez la valeur remote_repo_support.

Options (Valeur par défaut)

Exemple de valeur

Définition

remote_repo_support

True

Permet au dépôt secondaire de se synchroniser avec le dépôt principal.

4.2.4.3. Console WAPT

Les règles du dépôt sont gérées à partir de la console WAPT et sont basés sur plusieurs paramètres :

Paramètres disponibles pour les règles du dépôt

Options

Exemple de valeur

Description

Agent IP

192.168.85.0/24

Règle basée sur le sous-réseau IP de l’agent.

Domaine

ad.mydomain.lan

Règle basée sur le nom de domaine Active Directory.

Nom d’hôte

desktop-04feb1

Règle basée sur le nom d’hôte de l’agent WAPT.

Public IP

256.89.299.22/32

Règle basée sur l’adresse IP publique (hôtes NATés).

Site

Paris-HQ

Règle basée sur les sites et services Active Directory.

4.2.4.3.1. Création d’une nouvelle règle de dépôt

Pour ajouter une nouvelle règle de dépôt, allez dans l’onglet Dépôts de la console WAPT et cliquez sur le bouton Ajouter une règle.

Création d’une nouvelle règle de dépôt

Options

Exemple de valeur

Description

Nom

repo25

Définit le nom de la règle.

Condition

IP de l’agent

Définit la condition à remplir pour que la règle s’applique (voir ci-dessus).

Valeur

192.168.25.0/24

Définit la valeur lorsque la condition s’applique. Si la case « NON » est cochée, la valeur s’applique à l’inverse de la condition.

URL du dépôt

https://repo25.domain.lan

Définit la liste des dépôts secondaires disponibles. La liste inclut http://download.windowsupdate.com/microsoftupdate/v6/wsusscan/ pour permettre le téléchargement direct des mises à jour de Windows par les dépôts secondaires afin de préserver la bande passante.

Type de paquet

WAPT

Définit quels types de paquets sont répliqués.

Autre

Pas de fallback

L’option Pas de fallback empêchera de se replier sur le serveur WAPT principal et évitera une congestion indésirable du réseau si le dépôt secondaire devient temporairement indisponible.

  • L’option Proxy devra être définie si le dépôt secondaire doit se connecter via un proxy.

Fenêtre pour définir les règles du dépôt dans la console WAPT

Fenêtre pour définir les règles du dépôt dans la console WAPT

Vous pouvez ensuite choisir parmi les différents paramètres ci-dessus et affecter des valeurs à un dépôt secondaire WAPT spécifique.

Avertissement

Les règles sont appliquées de haut en bas.

Les règles sont appliquées de haut en bas. La première règle qui correspond aux conditions prévaut sur toutes les autres règles placées en dessous.

Danger

N’oubliez pas de sauvegarder vos règles de réplication.

4.3. Dépôts multiples

Comme pour les dépôts Debian, il est possible pour l’agent WAPT d’utiliser plusieurs dépôts pour la mise à jour des paquets. Les agents WAPT vérifieront tous les dépôts.

Danger

Si vous utilisez cette fonctionnalité, SACHEZ CE QUE VOUS FAITES.

Lorsque vous utilisez des dépôts avec différents signataires, les certificats publics du signataire supplémentaire doivent être ajoutés à C:\Program Files (x86)\wapt\ssl sous Windows ou /opt/wapt/ssl sous Linux et MacOS, par conséquent, vous DEVEZ faire confiance à leur travail et à leur signature.

Vous devez ensuite déployer l’agent WAPT avec les deux clés.

Veuillez vous reporter à la documentation sur la création de l’agent WAPT pour ajouter d’autres certificats de confiance.

4.3.1. Configuration de l’agent WAPT

Ces paramètres sont modifiables dans le fichier wapt-get.ini.

4.3.1.1. Description des paramètres disponibles

Description des options disponibles pour l’utilisation de dépôts multiples

Options

Exemple de valeur

Description

[global]

repositories = wapt-templates,private

Le paramètre repositories permet de définir plusieurs options pour les dépôts de paquets, par exemple wapt-templates et private, où leurs paramètres sont définis dans une [section] supplémentaire du fichier.

[section]

[wapt-templates] repo_url=https://store.wapt.fr/wapt verify_cert = True

[private] repo_url=https://srvwapt.mydomain.lan/wapt verify_cert = False

Tous les paramètres de la synchronisation du dépôt WAPT doivent être définis dans la section [repo-sync] du fichier de configuration wapt-get.ini de l’agent WAPT.

Options pour les propriétés du dépôt

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

repo_url (défaut None)

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

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

timeout (défaut None)

Définit le délai d’attente lors de la connexion à des dépôts distants (en millisecondes).

timeout = 5000

use_http_proxy_for_repo (défaut False)

Définit si un proxy doit être défini pour accéder aux dépôts.

use_http_proxy_for_repo = True

verify_cert (défaut None)

Définit si Les certificats HTTPS du dépôt doivent être vérifiés, et si c’est le cas définit le chemin vers le paquet de certificats.

verify_cert = True

Note

L’agent WAPT recherchera les mises à jour dans tous les référentiels définis dans son fichier de configuration wapt-get.ini lorsqu’il effectue une recherche wapt-get.

Plus d’informations sur l’utilisation de WAPT avec l’interface de ligne de commande.

4.3.2. Description des options disponibles pour l’utilisation de dépôts multiples

Après avoir configuré l’agent WAPT pour utiliser plusieurs dépôts, nous pouvons faire apparaître les dépôts dans la console WAPT.

Pour cela, modifier le fichier %appdata%\local\waptconsole\waptconsole.ini.

Exemple :

[wapt-template]
repo_url = https://wapt.tranquil.it/wapt
http_proxy =
verify_cert = True
public_certs_dir =
client_certificate =
client_private_key =
timeout = 5

[private]
repo_url = https://srvwapt.mydomain.lan/wapt
http_proxy =
verify_cert = False
public_certs_dir =
client_certificate =
client_private_key =
timeout = 5
Options pour les référentiels externes dans la Console WAPT

Options (Valeur par défaut)

Description

Exemple

client_certificate (défaut None)

Définit le dossier qui contient les certificats utilisés pour authentifier les paquets externes téléchargés.

client_certificate = C:\Program Files (x86)\wapt\ssl\server\srvwapt.mydomain.lan.crt (on Windows)

client_private_key = None

Définit le dossier qui contient la clé privée.

client_private_key = C:\Program Files (x86)\wapt\ssl\server\srvwapt.mydomain.lan.pem (sur Windows)

http_proxy (défaut None)

Définit l’adresse du proxy HTTP.

http_proxy = http://user:pwd@srvproxy.mydomain.lan:port

public_certs_dir =

Définit le dossier qui contient les certificats utilisés pour authentifier les paquets externes téléchargés.

public_certs_dir = C:\private

repo_url (défaut None)

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

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

timeout (défaut None)

Définit le délai d’attente lors de la connexion à des dépôts distants (en millisecondes).

timeout = 5000

verify_cert (défaut None)

Définit si Les certificats HTTPS du dépôt doivent être vérifiés, et si c’est le cas définit le chemin vers le paquet de certificats.

verify_cert = True