Hide navigation sidebar
Hide table of contents sidebar
Skip to content
Quickstart Official documentation Setuphelpers Changelog FAQ
Back to top
View this page
Toggle table of contents sidebar

# 2.2. Installer le Serveur WAPT sur une distribution basée sur RedHat

## 2.2.1. Configurer le serveur Red Hat and its derivatives

Afin d’installer une nouvelle machine RedHat ou dérivé (virtuelle ou physique), veuillez vous référer à la documentation officielle.

Avertissement

- Installez le Serveur sans interface graphique.

### 2.2.1.1. Configurer les paramètres réseau

Les différents paramètres présentés ci-dessous ne sont pas spécifiques à WAPT, vous pouvez les adapter en fonction de votre environnement.

Modifiez les fichiers suivants afin d’obtenir une stratégie de nommage (FQDN) et d’adressage réseau appropriée.

Dans l’exemple suivant :

- le nom FQDN est srvwapt.mydomain.lan ;

- le nom court du Serveur WAPT est srvwapt ;

- le suffixe DNS est mydomain.lan ;

- l’adresse IP est 10.0.0.10/24 ;

### 2.2.1.2. Configuration du nom du Serveur WAPT

Indication

Le nom court du serveur WAPT ne doit pas dépasser 15 caractères (limite liée au sAMAccountName dans Active Directory).

Le nom du serveur doit être un nom FQDN, c’est à dire à la fois le nom de machine et le suffixe DNS.

- Modifier le fichier `/etc/hostname` et écrire le nom FQDN du Serveur WAPT.

    # /etc/hostname of the WAPT Server
    srvwapt.mydomain.lan

- Configurez le fichier `/etc/hosts`, assurez-vous de mettre à la fois le FQDN et le nom court du Serveur WAPT.

    # /etc/hosts of the waptserver
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    10.0.0.10   srvwapt.mydomain.lan srvwapt

Indication

- Sur la ligne définissant l’adresse IP du serveur DNS, veillez à avoir l’IP du Serveur WAPT (et non pas 127.0.0.1), puis le FQDN, puis le nom court.

- Ne modifiez pas la ligne avec `localhost`.

### 2.2.1.3. Configuration de l’adresse IP du Serveur WAPT

- Définissez une adresse IP statique à l’aide de la commande nmcli ou nmtui pour une interface semi-graphique (Cliquez ici <https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/7/html/networking_guide/sec-configuring_ip_networking_with_nmtui#sec-Configuring_IP_Networking_with_nmtui>`_ pour plus d’informations sur la commande nmtui). Le nom du fichier peut être différent, comme `enp0s17`, `ifcfg-eth0` par exemple.

    nmcli con mod enp0s17 ipv4.method manual ipv4.addresses 10.11.7.215/16 ipv4.gateway 10.11.255.254 ipv4.dns 10.11.7.212

- Appliquez la configuration réseau en redémarrant l’hôte avec un reboot.

    reboot

- Si cela n’a pas déjà été fait, créez l’entrée DNS pour le Serveur WAPT dans l’Active Directory ou le serveur DNS de l’Organisation.

- Après le redémarrage, configurez la langue du système en anglais afin d’avoir des journaux non localisés pour faciliter la recherche des erreurs courantes.

    dnf update -y
    dnf install langpacks-en glibc-langpack-en -y
    localectl set-locale LANG=en_US.utf8
    localectl status

- Vérifiez que l’horloge de la machine est à l’heure (avec NTP installé), et que SELinux et le pare-feu sont activés.

    date
    sestatus
    systemctl status firewalld

- Vérifier si la machine est correctement synchronisée avec le serveur NTP. Si elle n’est pas synchronisée, se référer à la documentation du système d’exploitation pour configurer timedatectl.

    timedatectl status

- Configurez le référentiel EPEL.

    dnf install epel-release wget sudo -y

Le serveur WAPT est maintenant prêt.

Attention

La procédure de mise à jour est différente de l’installation. Pour une mise à jour, rendez-vous sur la documentation pour mettre à jour le Serveur WAPT.

## 2.2.2. Installer les paquets du Serveur WAPT

- Ajout du dépôt Tranquil’iT.

    cat > /etc/yum.repos.d/wapt.repo <<EOF
    [wapt]
    name=WAPT Server Repo
    baseurl=https://wapt.tranquil.it/redhat10/wapt-2.6/
    enabled=1
    gpgcheck=1
    EOF

- Récupérez la clé `.gpg`.

    wget -q -O /tmp/tranquil_it.gpg "https://wapt.tranquil.it/redhat10/RPM-GPG-KEY-TISWAPT-10"; rpm --import /tmp/tranquil_it.gpg

- Ajout du dépôt Tranquil’iT.

    cat > /etc/yum.repos.d/wapt.repo <<EOF
    [wapt]
    name=WAPT Server Repo
    baseurl=https://wapt.tranquil.it/redhat9/wapt-2.6/
    enabled=1
    gpgcheck=1
    EOF

- Récupérer la clé `.gpg` et installer les paquets nécessaires.

    wget -q -O /tmp/tranquil_it.gpg "https://wapt.tranquil.it/redhat9/RPM-GPG-KEY-TISWAPT-9"; rpm --import /tmp/tranquil_it.gpg
    dnf module enable nginx:1.24 -y

- Ajout du dépôt Tranquil’iT.

    cat > /etc/yum.repos.d/wapt.repo <<EOF
    [wapt]
    name=WAPT Server Repo
    baseurl=https://wapt.tranquil.it/redhat8/wapt-2.6/
    enabled=1
    gpgcheck=1
    EOF

- Récupérez la clé `.gpg` et sélectionnez la version nginx appropriée.

    wget -q -O /tmp/tranquil_it.gpg "https://wapt.tranquil.it/centos8/RPM-GPG-KEY-TISWAPT-8"; rpm --import /tmp/tranquil_it.gpg

Avertissement

Changement important : pour les versions WAPT antérieures à la version 2.6.1.16446, avec Redhat 8, veuillez utiliser cette clé gpg.

    wget -q -O /tmp/tranquil_it.gpg "https://wapt.tranquil.it/redhat8/RPM-GPG-KEY-TISWAPT-8-old"; rpm --import /tmp/tranquil_it.gpg

    dnf module enable nginx:1.22 -y

- Installez les paquets requis

    dnf install epel-release -y
    dnf install nginx-mod-http-auth-spnego -y
    dnf install krb5-workstation -y
    dnf install msktutil -y
    dnf install policycoreutils-python-utils postgresql-server postgresql-contrib -y
    dnf install tis-waptserver tis-waptsetup cabextract -y

- Initialiser la base de données PostgreSQL et activer les services.

    sudo /usr/bin/postgresql-setup initdb
    sudo systemctl enable postgresql waptserver nginx
    sudo systemctl start postgresql

## 2.2.3. Mode de configuration standard

Note

Pour le mode sécurisé CSPN, veuillez visiter cette documentation.

Attention

Pour que la post-configuration fonctionne correctement :

> - Le nom d’hôte du Serveur WAPT DOIT être correctement configuré. Pour le vérifier, utilisez la commande echo $(hostname) qui DOIT renvoyer l’adresse DNS qui sera utilisée par les Agents WAPT sur les ordinateurs clients.

> - Le résolveur DNS DOIT être correctement configuré.

> - Le Serveur WAPT DOIT pouvoir contacter un contrôleur de domaine en mode écriture pour l’enregistrement en mode Kerberos.

Le script de post-configuration réécrit la configuration de nginx. Un fichier de sauvegarde est créé lors de l’exécution de postconf dans le même répertoire.

Ce script de post-configuration DOIT être exécuté en tant que root.

- Exécutez le script.

    /opt/wapt/waptserver/scripts/postconf.sh

- Cliquez sur Oui pour exécuter le script de post-configuration.

    Do you want to launch post configuration tool?

                < yes >          < no >

- Choisissez un mot de passe (si ce n’est pas déjà défini) pour le compte SuperAdmin du Serveur WAPT (longueur minimale de 10 caractères).

    Please enter the wapt server password (min. 10 characters)

    *****************

                    < OK >          < Cancel >

- Confirmez le mot de passe.

    Please enter the server password again:

    *****************

                    < OK >          < Cancel >

- Choisissez le mode d’authentification pour l’enregistrement initial des Agents WAPT :

  - Le choix n°1 : Permet d’enregistrer les ordinateurs sans authentification. Le Serveur WAPT enregistre tous les ordinateurs qui demandent à être enregistrés.

    Sans certificat, il n’est pas possible de télécharger les paquets WAPT et d’interroger certains points d’accès du serveur WAPT.

    Cette méthode est recommandée si vous installez WAPT pour la première fois.

  - Le choix n°2 : Active l’enregistrement initial basé sur Kerberos (vous pourrez l’activer aussi plus tard).

    Choix n°2 : Si vous rencontrez des problèmes lors de la mise à jour OU si vous utilisez un reverse proxy, cette méthode est recommandée pour le temps de la mise à jour.

    Si vous voulez utiliser l’option 2 et que votre keytab Kerberos n’existe pas, le script `postconf.sh` le créera, après que vous ayez validé l’option 2.

    Création de votre Keytab, après selection de l'activation kerberos pour la première fois.

        Enter Kerberos REALM (domain name)

        -----------------------------------
        MYDOMAIN.LAN
        -----------------------------------

              < Yes >        < Cancel >

        Enter a Domain Controller name in write mode

        -----------------------------------
        srvads1.mydomain.lan
        -----------------------------------

              < Yes >        < Cancel >

        Enter a username authorized to join machines to the domain.

        -----------------------------------
        administrator
        -----------------------------------

              < Yes >        < Cancel >

        Enter administrator password

        -----------------------------------
        **************
        -----------------------------------

              < Yes >        < Cancel >

        Enter the URL that will be used by the WAPTAgent

        -----------------------------------
        srvwapt.mydomain.lan
        -----------------------------------

                < Yes >        < Cancel >

        Choose the name of the computer used by the waptserver

        -----------------------------------
        SRVWAPT
        -----------------------------------

                < Yes >        < Cancel >

        Keytab file is correctly generated in /etc/nginx/http-krb5.keytab

                                < OK >

        Unable to create keytab file. Please refer to
        https://www.wapt.fr/fr/doc/wapt-security-configuration-server.html#configuring-kerberos-authentication-enterprise-feature

                                                            < OK >

  - Le choix n°3 : N’active pas le mécanisme d’authentification kerberos pour l’enregistrement initial des hôtes équipés de WAPT.

    Le Serveur WAPT exigera un login et un mot de passe pour chaque hôte s’enregistrant auprès de lui.

    WaptAgent Authentication type?

    --------------------------------------------------------------------------
    (x) 1 Allow unauthenticated registration
    ( ) 2 Enable kerberos authentication required for machines registration.
            Registration will ask for password if kerberos not available
    ( ) 3 Disable kerberos but registration require strong authentication
    --------------------------------------------------------------------------
                                            < OK >          < Cancel >

Mise à jour de WAPT de 2.X a 2.6, vérification de l'option verify_cert.

Note

Si vous passez de WAPT 2.X à 2.5, vérifiez la configuration actuelle des Agents WAPT et plus particulièrement l’option `verify_cert`. Si, dans votre configuration actuelle, l’option `verify_cert` est réglée sur True ou sur un chemin d’accès au fichier (certificate pinning), choisissez l’option 1 ci-dessous. Si dans votre configuration actuelle `verify_cert` est défini à False, alors choisissez l’option #2 ci-dessous.

    WaptAgent client certificate checking

    ----------------------------------------------------------------------------
    (x) 1 Authenticate Agents using https client certificate (recommended)
    ( ) 2 Don't check https client certificate (legacy)
    ----------------------------------------------------------------------------
                                            < OK >          < Cancel >

- Si vous souhaitez utiliser WAPT pour le déploiement de systèmes d’exploitation, sélectionnez `Oui`.

  - Si vous avez choisi Yes pour activer le déploiement d’OS, la post-configuration vous demandera si vous souhaitez utiliser une authentification sécurisée pour déployer les images d’OS. Il vous demandera un utilisateur / mot de passe lorsque vous allez déployer des images d’OS en utilisant WADS.

  - Si vous avez choisi No, Nginx n’activera pas les points d’extrémité de l’API WADS pour les Agents WAPT.

    Do you want to activate os deployment?

            < Yes >        < No >

- L’authentification sécurisée pour WADS exige que l’utilisateur soit authentifié sur la machine où le système d’exploitation sera déployé.

    Would you like to activate secure authentication on wads?

            < Yes >        < No >

- Toujours en ce qui concerne la fonction WADS, si vous avez répondu Yes aux 2 dernières questions, vous aurez une dernière question :

    Would you like to mention subnet ip exempt from wads authentication

            < Yes >        < No >

Si vous répondez Yes à cette question, vous devrez donner un sous-réseau IP en format liste : 192.168.0.0/24,192.168.1.0/24.

- Choisissez si vous voulez utiliser WAPT WUA pour Windows Update.

    Do you want to activate WUA?

            < Yes >        < No >

Si vous choisissez Yes, Nginx activera les points de terminaison de l’API WUA pour les Agents WAPT.

- Sélectionnez Oui pour configurer Nginx.

    Do you want to configure nginx?

            < Yes >        < No >

- Indiquez le FQDN du Serveur WAPT.

    FQDN for the WAPT Server (eg. wapt.example.com)

    ---------------------------------------------
    srvwapt.mydomain.lan
    ---------------------------------------------

                < OK >          < Cancel >

- Sélectionner OK et un certificat auto-signé sera généré, cette étape peut prendre un certain temps.

    Generating DH parameters, 2048 bit long safe prime, generator 2 This is going to take a long time
    .......................................+...............................+...

Nginx est maintenant configuré, sélectionnezOK pour redémarrerNginx:

    The Nginx config is done.
    We need to restart Nginx?

                  < OK >

- Sélectionnez OK pour démarrer le Serveur WAPT.

    Press OK to start waptserver and wapttasks daemons

                 < OK >

Le post-configuration est maintenant terminé.

    Postconfiguration completed.
    Please connect to https://wapt.mydomain.lan/ to access the WAPT Server.

                                      < OK >

Ajouté dans la version 2.5: L’accès à l’interface web de WAPT est désormais protégé par un mot de passe.

Enfin, le postconf affiche quelques informations sur le certificat SSL du Serveur WAPT et l’URL pour télécharger WaptSetup et l’installer sur l’ordinateur de l’Administrateur WAPT.

Liste des options du script de post-configuration
Options | Description
--- | ---
`-c` or `--config` | Spécifie le chemin du fichier de configuration (par défaut : `/opt/wapt/conf/waptserver.ini`).
`-s` or `--force-https` | Configure Nginx pour que le port 80 soit redirigé en permanence vers 443
`-q` or `--quiet` | Exécute la post-configuration en mode silencieux.
`-n` or `--nginx` | Exécute la configuration de nginx si la post-configuration est en mode silencieux.
`--dhparam-key-size=NUMBER` | Définit la taille de la clé dhparam (par défaut : 2048).
`-p` or `--admin-password` | Définit le mot de passe de l’administrateur du Serveur WAPT si la post-configuration est effectuée en mode silencieux.
`--server-names=SERVER_NAMES` | Définit le nom et l’adresse IP du Serveur WAPT pour les CN et SubjectAltNames des certificats. Le séparateur est une virgule (par défaut : fqdn et adresse IP).
`--cspn-toe` | Définit les paramètres du mode TOE CSPN (par défaut : False). Cela permet d’activer des valeurs de sécurité par défaut plus strictes et de désactiver toutes les fonctionnalités qui ne sont pas incluses dans la TOE de la certification CSPN

## 2.2.4. Mode de configuration Sécurisé

Avertissement

Le mode CSPN (certification de sécurité de premier niveau par l’ANSSI) n’inclut pas WAPTWUA, WADS, Secondary Repos ou Peercache. Ces fonctionnalités ne font pas partie de la cible d’évaluation (TOE).

Attention

Pour que la post-configuration fonctionne correctement :

> - Le nom d’hôte du Serveur WAPT DOIT être correctement configuré. Pour le vérifier, utilisez la commande echo $(hostname) qui DOIT renvoyer l’adresse DNS qui sera utilisée par les Agents WAPT sur les ordinateurs clients.

> - Le résolveur DNS DOIT être correctement configuré.

> - Le Serveur WAPT DOIT pouvoir contacter un contrôleur de domaine en mode écriture.

Le script de post-configuration réécrit la configuration de nginx. Un fichier de sauvegarde est créé lors de l’exécution de postconf dans le même répertoire.

Ce script de post-configuration DOIT être exécuté en tant que root.

CSPN mode post-configuration.

Dans ce mode :

> - La longueur du mot de passe de l’administrateur est de 20 caractères et la complexité du mot de passe est imposée.

> - La longueur du mot de passe du certificat de l’administrateur et de l’utilisateur est de 20 caractères et la complexité du mot de passe est imposée.

> - L’enregistrement et l’authentification Kerberos sont obligatoires.

> - L’authentification par certificat client est obligatoire.

> - La vérification du certificat SSL est obligatoire.

> - Divers paramètres de rétrocompatibilité sont désactivés.

> - Les fonctionnalités exclues de la CSPN TOE (à savoir les référentiels secondaires, peercache, WADS et WAPT WUA) sont désactivées.

> - La connexion de la Console WAPT avec le serveur est limitée aux méthodes kerb et admin (le mode admin peut être désactivé après la configuration initiale).

> - La durée de vie maximale des cookies de session est de 12 heures.

> - La durée de vie par défaut des certificats signés par WAPT est de 3 ans.

Indication

Si vous souhaitez conserver une version spécifique de wapt sur le serveur, comme une version spécifique de CSPN, il est recommandé de désactiver la configuration du dépôt wapt en supprimant `/etc/yum.repos.d/wapt.repo` ou en spécifiant le numéro de version complet dans ce même fichier, comme :code: baseurl=https://wapt.tranquil.it/redhat10/wapt-2.6.1.17567/

Le compte de service Kerberos créé pour l’authentification sur le serveur Wapt doit être configuré avec msDS-SupportedEncryptionTypes : 24 (AES 128, AES 256), soit à l’échelle de l’AD, soit au moins sur l’objet ordinateur de service. Le script msktutil exécuté pendant la postconfiguration doit définir cette valeur correctement.

- Exécutez le script avec l’option `--cspn-toe`.

    /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe

- Cliquez sur Oui pour exécuter le script de post-configuration.

    Do you want to launch post configuration tool?

                < yes >          < no >

- Cliquez sur `ok` si SELinux est détecté.

    SELinux detected, tweaking httpd permissions.

                          < OK >

- Cliquez sur `ok` si SELinux est correctement configuré pour le proxy inverse Nginx.

    SELinux correctly configured for Nginx reverse proxy

                          < OK >

- Choisissez un mot de passe (s’il n’est pas défini) pour le compte SuperAdmin du serveur WAPT. La longueur minimale est de 20 caractères, dont au moins 1 majuscule, 1 minuscule et 1 signe de ponctuation.

    Please enter the wapt server password (min. 20 characters, punctuation, upper and lower case):

    *****************

                    < OK >          < Cancel >

- Confirmez le mot de passe.

    Please enter the server password again:

    *****************

                    < OK >          < Cancel >

- Sélectionnez Oui pour configurer Nginx.

    Do you want to configure nginx?

            < Yes >        < No >

- Indiquez le FQDN du Serveur WAPT.

    FQDN for the WAPT Server (eg. wapt.example.com)

    ---------------------------------------------
    wapt.mydomain.lan
    ---------------------------------------------

                < OK >          < Cancel >

- Entrez le nom du royaume Kerberos.

    Enter Kerberos REALM

    -------------------------------------------
    MYDOMAIN.LAN
    -------------------------------------------

                < OK >          < Cancel >

- Saisir un nom de contrôleur de domaine valide.

    Enter a Domain Controller name in write mode

    -------------------------------------------
    dc1
    -------------------------------------------

                < OK >          < Cancel >

- Saisir un nom d’utilisateur disposant de droits d’écriture sur l’Active Directory.

    Enter a username with administrator privileges

    -------------------------------------------
    administrator
    -------------------------------------------

                < OK >          < Cancel >

- Saisir le mot de passe de l’utilisateur.

    Enter administrator password

    -------------------------------------------
    *****************************
    -------------------------------------------

                < OK >          < Cancel >

- Entrez l’URL qui sera utilisée par le waptagent.

    Enter the URL that will be used by the waptagent

    ---------------------------------------------
    srvwaptname.mydomain.lan
    ---------------------------------------------

                < OK >          < Cancel >

- Choisissez le nom de l’ordinateur utilisé par le waptagent.

    Choose the name of the computer used by the waptserver

    ---------------------------------------------
    srvwaptname
    ---------------------------------------------

                < OK >          < Cancel >

- Si les informations d’identification sont correctes, le keytab est généré dans `/etc/nginx/http-krb5.keytab`. Les ACL corrects y sont définis. Sinon, vous devez lire la documentation.

- Redémarrer Nginx.

    The Nginx config is done.
    We need to restart Nginx?

                  < OK >

- La dernière étape consiste à démarrer waptserver et wapttasks.

    Press OK to start
    waptserver and wapttasks
    daemons

                  < OK >

Le post-configuration est maintenant terminé.

    Postconfiguration completed.

                                      < OK >

Mais en mode TOE CSPN, TOTP est requis sur le compte administrateur.

code OTP sécurisé postconf

Utilisez votre deuxième appareil (smartphone, YubiKey, etc.) et obtenez le code qui apparaît dans l’image. Mettez le code dans le champ prévu à cet effet.

Note

Si vous avez des problèmes avec votre système kerberos. Vérifiez le propriétaire et le droit sur le fichier keytab ( `http-krb5.keytab` ).

    chown root:nginx /etc/nginx/http-krb5.keytab
    chmod 640 /etc/nginx/http-krb5.keytab

Liste des options du script de post-configuration
Options | Description
--- | ---
`--force-https` or `-s` | Configure Nginx pour que le port 80 soit redirigé en permanence vers 443.
`--cspn-toe` | Définit les paramètres du mode CSPN TOE (défaut : False).
`--server-names=SERVER_NAMES` | Définit le nom du serveur et l’adresse IP pour les certificats CN et altdnsnames. Le séparateur est une virgule (défaut : None).

Avertissement

En mode CSPN, WADS et WUA n’apparaîtront pas dans la console WAPT. Cependant, les fonctionnalités Peer Cache, reporting et Secondary Repositories peuvent être activées, bien qu’elles ne doivent pas être activées car elles ne sont pas évaluées dans la cible CSPN.

Activation de Peer Cache dans la console WAPT :

  En éditant une nouvelle configuration d’agent :

  > Allez dans Tools ‣ Edit agent dynamic configurations. Cochez l’option Use Peer Cache.

  En utilisant un paquet de configuration WAPT :

  > Créez un paquet dans WAPT Packages → Make package template from setup file → Host agent dynamic configuration. Cochez l’option Use Peer Cache.

Activer les dépôs secondaires dans la console WAPT :
  Pour l’agent :

    En éditant une nouvelle configuration d’agent :

    > Allez dans Tools ‣ Edit agent dynamic configurations. Vérifiez Utiliser les règles de dépôt.

    En utilisant un paquet de configuration WAPT :

    > Créez un paquet dans WAPT Packages → Make package template from setup file → Host agent dynamic configuration. Vérifiez l’option Utiliser les règles du référentiel.

  Pour configurer un agent en tant que référentiel secondaire :

    En éditant une nouvelle configuration d’agent :

    > Allez dans Tools ‣ Edit agent dynamic configurations. Allez dans l’onglet Repo-sync et cochez Synchroniser les paquets et les mises à jour du système sur l’agent.

    En utilisant un paquet de configuration WAPT :

    > Créez un paquet dans WAPT Packages → Make package template from setup file → Host agent dynamic configuration. Allez dans l’onglet Repo-sync et cochez Synchroniser les paquets et les mises à jour du système sur l’agent

Votre serveur WAPT est maintenant prêt. Vous pouvez consulter la documentation sur l’installation de la console WAPT.