Add documentation for updating Ubuntu systems via APT-Cacher-NG and Windows systems via WSUS
This commit is contained in:
@@ -0,0 +1,166 @@
|
||||
# Mise à jour d'Ubuntu via APT-Cacher-NG
|
||||
|
||||
## 1. Déployer le service APT-Cacher-NG
|
||||
|
||||
### 1.1 Flux réseau requis
|
||||
|
||||
Pour mettre à jour les serveurs Linux via le proxy APT, ouvrir les flux suivants.
|
||||
|
||||
**Cas SI-OPS :**
|
||||
|
||||
| Source | Destination | Port |
|
||||
| --- | --- | --- |
|
||||
| `GRP_SERVER_LINUX` | `GRP_TELEML` | `9999` |
|
||||
| `DMZ_TELEM` | `OPS-APT-CACHER` (`172.31.232.6`) | `9999` |
|
||||
|
||||
**Cas TELEML avec OpenVPN :**
|
||||
|
||||
| Source | Destination | Port |
|
||||
| --- | --- | --- |
|
||||
| `GRP_SERVER_LINUX` | `GRP_TELEML` | `9999` |
|
||||
| `DMZ_TELEM` | Internet (`37.58.143.231`) | `49494` |
|
||||
|
||||
Ces règles de pare-feu sont normalement configurées lors du déploiement de la TELEML sur l'infrastructure. Après le déploiement de la TELEML et la mise en place du tunnel OpenVPN vers le SI Systel, vérifier que la règle entre la TELEML et Gothmog autorise le téléchargement des mises à jour.
|
||||
|
||||
### 1.2 Installer et configurer APT-Cacher-NG sur la TELEML
|
||||
|
||||
Le service APT-Cacher-NG doit être installé sur la TELEML. Les modèles TELEML sont généralement déjà configurés. Si le service n'est pas installé, exécuter :
|
||||
|
||||
```bash
|
||||
apt-get install apt-cacher-ng
|
||||
```
|
||||
|
||||
Modifier le fichier `/etc/apt-cacher-ng/acng.conf` avec les paramètres suivants :
|
||||
|
||||
```text
|
||||
CacheDir: /var/cache/apt-cacher-ng #Répertoire Cache
|
||||
LogDir: /var/log/apt-cacher-ng #Répertoire Log
|
||||
#Port:3142
|
||||
PassThroughPattern:.*
|
||||
Port:9999 #Port du Proxy
|
||||
Proxy=172.31.232.6:9999
|
||||
VerboseLog: 1
|
||||
ReportPage: acng-report.html #Page de Gestion Nettoyage du Cache (besoin d’apache)
|
||||
ExTreshold: 4 #jour avant suppression de ficher non référencer
|
||||
```
|
||||
|
||||
## 2. Configurer le proxy sur les machines Linux clientes
|
||||
|
||||
Pour rediriger les requêtes de mise à jour vers la TELEML, modifier le fichier `/etc/apt/apt.conf` :
|
||||
|
||||
```bash
|
||||
nano /etc/apt/apt.conf
|
||||
```
|
||||
|
||||
Le fichier doit contenir les paramètres suivants, en remplaçant `IP-DE-LA-TELEML` par l'adresse IP de la TELEML concernée :
|
||||
|
||||
```text
|
||||
Acquire::http {
|
||||
Proxy "http://IP-DE-LA-TELEML:9999";
|
||||
};
|
||||
```
|
||||
|
||||
## 3. Mettre à jour les machines Linux
|
||||
|
||||
> **Important : effectuer une sauvegarde de la machine avant toute tentative de mise à jour.**
|
||||
|
||||
### 3.1 Précaution pour les machines Swarm/Worker/Manager sous Ubuntu 18.04 ou 20.04
|
||||
|
||||
Avant de lancer les mises à jour sur une machine Swarm/Docker, commenter dans les fichiers du répertoire `/etc/apt` toutes les sources qui ne concernent pas le système Ubuntu, notamment celles de GlusterFS, Docker et Ansible. Les listes de sources doivent uniquement contenir les dépôts du système Ubuntu.
|
||||
|
||||
Sur les machines Swarm, arrêter les services suivants avant toute mise à jour :
|
||||
|
||||
```bash
|
||||
service glusterfs stop
|
||||
service dockerd stop
|
||||
```
|
||||
|
||||
### 3.2 Installer les mises à jour de la version actuelle
|
||||
|
||||
Commencer par installer les dernières mises à jour disponibles pour la version Ubuntu actuellement installée :
|
||||
|
||||
```bash
|
||||
apt-get update
|
||||
sudo apt-get install -y software-properties-common
|
||||
sudo apt-get install update-manager-core
|
||||
sudo apt dist-upgrade --fix-missing
|
||||
```
|
||||
|
||||
Pendant la mise à jour, l'OS peut poser des questions. Lire chaque demande et, lorsque le choix est proposé, conserver de préférence la configuration actuelle (touche **N**), conformément à la consigne de la procédure.
|
||||
|
||||
La mise à jour peut prendre un certain temps, selon la date de la dernière mise à jour. Une fois l'opération terminée, redémarrer la machine si nécessaire.
|
||||
|
||||
### 3.3 Mettre à niveau la version d'Ubuntu
|
||||
|
||||
Les versions Ubuntu citées dans cette procédure sont :
|
||||
|
||||
- Ubuntu 16.04 LTS
|
||||
- Ubuntu 18.04 LTS
|
||||
- Ubuntu 20.04 LTS
|
||||
- Ubuntu 22.04 LTS
|
||||
|
||||
La montée de version se fait par paliers. Par exemple, il n'est pas possible de passer directement d'Ubuntu 18.04 à Ubuntu 22.04.
|
||||
|
||||
Avant de commencer, vérifier la version actuelle :
|
||||
|
||||
```bash
|
||||
cat /etc/lsb-release
|
||||
```
|
||||
|
||||
Vérifier également que le système est configuré pour suivre la branche LTS :
|
||||
|
||||
```bash
|
||||
cat /etc/update-manager/release-upgrades
|
||||
```
|
||||
|
||||
Exécuter ensuite les commandes correspondant au palier voulu.
|
||||
|
||||
**Ubuntu 16.04 vers Ubuntu 18.04 :**
|
||||
|
||||
```bash
|
||||
sudo sed -i 's/xenial/bionic/g' /etc/apt/sources.list
|
||||
sudo apt update && sudo apt -y dist-upgrade
|
||||
```
|
||||
|
||||
**Ubuntu 18.04 vers Ubuntu 20.04 :**
|
||||
|
||||
```bash
|
||||
sudo dpkg --force depends -P lxd; sudo dpkg --force depends -P lxd-client
|
||||
sudo sed -i 's/bionic/focal/g' /etc/apt/sources.list
|
||||
sudo apt update && sudo apt -y dist-upgrade
|
||||
```
|
||||
|
||||
**Ubuntu 20.04 vers Ubuntu 22.04 :**
|
||||
|
||||
```bash
|
||||
sudo sed -i 's/focal/jammy/g' /etc/apt/sources.list
|
||||
sudo apt update && sudo apt -y dist-upgrade
|
||||
```
|
||||
|
||||
**Ubuntu 22.04 vers Ubuntu 24.04 :**
|
||||
|
||||
```bash
|
||||
sudo sed -i 's/jammy/noble/g' /etc/apt/sources.list
|
||||
sudo sed -i 's/jammy/noble/g' /etc/apt/sources.list.d/*.list
|
||||
```
|
||||
|
||||
La montée de version peut prendre plusieurs minutes. Redémarrer la machine à la fin de l'opération. Pendant la mise à niveau, lire attentivement les questions de l'OS et conserver de préférence la configuration actuelle (touche **N**), conformément à la consigne de la procédure.
|
||||
|
||||
## 4. Dépannage
|
||||
|
||||
### Erreurs 500 ou 503 pendant `apt update`
|
||||
|
||||
Si des erreurs 500 ou 503 se produisent pendant `apt update`, vider le cache de la TELEML :
|
||||
|
||||
```bash
|
||||
sudo systemctl stop apt-cacher-ng
|
||||
sudo rm -rf /var/cache/apt/*
|
||||
sudo rm -rf /var/cache/apt-cacher-ng/*
|
||||
sudo systemctl start apt-cacher-ng
|
||||
```
|
||||
|
||||
Puis purger le cache d'APT-Cacher-OPS depuis la page suivante :
|
||||
|
||||
<http://172.31.232.6:9999/acng-report.html>
|
||||
|
||||
Il peut être nécessaire de répéter cette opération plusieurs fois.
|
||||
@@ -0,0 +1,217 @@
|
||||
# Déploiement et utilisation du service WSUS On-Prem
|
||||
|
||||
## 1. Prérequis réseau
|
||||
|
||||
Avant de déployer WSUS, mettre en place les flux nécessaires entre les clients, le serveur WSUS et Microsoft Update.
|
||||
|
||||
| Source | Destination | Ports |
|
||||
| --- | --- | --- |
|
||||
| `GRP_POSTE` / `GRP_SERVEUR` | `GRP_WSUS` | Tous vers `8530` et `8531` |
|
||||
| `GRP_WSUS` | Internet | `80` et `443` vers les URL ci-dessous |
|
||||
|
||||
URL Microsoft Update à autoriser :
|
||||
|
||||
```text
|
||||
http://.update.microsoft.com
|
||||
http://.windowsupdate.com
|
||||
http://ntservicepack.microsoft.com
|
||||
http://go.microsoft.com
|
||||
http://dl.delivery.mp.microsoft.com
|
||||
https://.windowsupdate.microsoft.com
|
||||
https://.update.microsoft.com
|
||||
https://download.microsoft.com
|
||||
https://dl.delivery.mp.microsoft.com
|
||||
```
|
||||
|
||||
## 2. Installer le rôle WSUS
|
||||
|
||||
### 2.1 Configuration recommandée du serveur
|
||||
|
||||
Il est préférable de réserver une machine dédiée à WSUS avec la configuration suivante :
|
||||
|
||||
- Système d'exploitation : Windows Server.
|
||||
- Processeur : 2 CPU.
|
||||
- Mémoire : 8 Go de RAM.
|
||||
- Disque `D:` : 100 Go minimum, 200 Go recommandés.
|
||||
- Réseau : VLAN MGMT.
|
||||
|
||||
À défaut, installer WSUS sur une machine Windows peu critique et enregistrer ses informations dans RDM.
|
||||
|
||||
### 2.2 Installation
|
||||
|
||||
Sur le serveur choisi :
|
||||
|
||||
1. Ouvrir le **Gestionnaire de serveur**.
|
||||
2. Sélectionner **Gérer > Ajouter des rôles et fonctionnalités**.
|
||||
3. Choisir **Installation basée sur un rôle ou une fonctionnalité**.
|
||||
4. Sélectionner le serveur concerné.
|
||||
5. Dans la liste des rôles, sélectionner **Services WSUS**, puis ajouter les fonctionnalités requises.
|
||||
6. Poursuivre l'assistant et vérifier les services de rôle à installer.
|
||||
7. Indiquer `D:\WSUS` comme emplacement du contenu.
|
||||
8. Poursuivre jusqu'à l'installation et en suivre l'avancement dans le Gestionnaire de serveur.
|
||||
9. À la fin de l'installation, cliquer sur **Fermer**. Redémarrer le serveur si cela est demandé.
|
||||
|
||||
Installer ensuite les deux modules nécessaires à l'affichage des rapports dans la console WSUS :
|
||||
|
||||
- <https://www.microsoft.com/en-us/download/details.aspx?id=29065>
|
||||
- <https://www.microsoft.com/fr-fr/download/details.aspx?id=35747>
|
||||
|
||||
## 3. Configurer WSUS
|
||||
|
||||
### 3.1 Configurer IIS
|
||||
|
||||
Pour éviter les problèmes de mémoire associés à WSUS :
|
||||
|
||||
1. Ouvrir le **Gestionnaire IIS** depuis le Gestionnaire de serveur.
|
||||
2. Ouvrir **Pools d'applications**.
|
||||
3. Faire un clic droit sur `WSUSPOOL`, puis choisir **Paramètres avancés**.
|
||||
4. Mettre à `0` la limite de mémoire privée du pool d'applications.
|
||||
|
||||
### 3.2 Effectuer la configuration initiale
|
||||
|
||||
1. Dans le Gestionnaire de serveur, ouvrir la console **Services WSUS** depuis le menu **Outils**. Pour y accéder plus facilement, épingler le raccourci à la barre des tâches.
|
||||
2. Vérifier l'emplacement du contenu, puis lancer les tâches de post-installation.
|
||||
3. À la fin des tâches, fermer la fenêtre et suivre l'assistant de configuration WSUS.
|
||||
4. Lorsque l'assistant le demande, choisir la synchronisation à partir de **Microsoft Update**.
|
||||
5. Ne pas activer l'utilisation d'un serveur proxy pour la synchronisation, puis lancer la connexion.
|
||||
6. Attendre la fin de la vérification de la synchronisation avec les serveurs Microsoft Update. Cette opération peut prendre du temps.
|
||||
7. Sélectionner les langues nécessaires pour le client.
|
||||
8. Sélectionner uniquement les produits présents chez le client. Limiter cette sélection facilite la gestion et réduit la charge du serveur.
|
||||
9. Sélectionner les classifications nécessaires, puis conserver la synchronisation manuelle.
|
||||
10. Terminer l'assistant.
|
||||
|
||||
Les produits à sélectionner dépendent des systèmes et des logiciels présents dans l'environnement : versions de Windows Server, postes Windows et, si nécessaire, produits SQL Server. Pour les mises à jour SQL, choisir la version correspondant à celle du client.
|
||||
|
||||
> **Versions anciennes :** la procédure d'origine indique que Windows Server 2003/2008/2008 R2 et Windows 7 ne sont plus pris en charge et recommande leur migration. Elle mentionne Windows Server 2012 R2 et Windows 10 21H1 comme versions cibles minimales. Ces recommandations sont historiques : vérifier les versions actuellement supportées et la politique du client avant de les appliquer.
|
||||
|
||||
## 4. Configurer l'exploitation
|
||||
|
||||
### 4.1 Créer les groupes de déploiement
|
||||
|
||||
Dans la console WSUS, développer **Ordinateurs**, faire un clic droit sur **Tous les ordinateurs**, puis choisir **Ajouter un groupe d'ordinateurs**.
|
||||
|
||||
Créer les groupes correspondant à l'architecture Systel :
|
||||
|
||||
- `PRODUCTION-WORKSTATIONS` : postes opérateurs de production.
|
||||
- `TRAINING-WORKSTATIONS` : postes opérateurs de formation.
|
||||
- `TEST-WORKSTATIONS` : postes opérateurs de test.
|
||||
- `PRODUCTION-SERVERS` : serveurs Windows de production.
|
||||
- `TRAINING-SERVERS` : serveurs Windows de formation.
|
||||
- `TEST-SERVERS` : serveurs Windows de test.
|
||||
- `PRODUCTION-DBSQL` : serveurs de base de données de production.
|
||||
- `TRAINING-DBSQL` : serveurs de base de données de formation.
|
||||
- `TEST-DBSQL` : serveurs de base de données de test.
|
||||
|
||||
### 4.2 Créer et configurer la GPO WSUS
|
||||
|
||||
1. Sur un contrôleur de domaine, ouvrir **Group Policy Management**.
|
||||
2. À la racine du domaine, faire un clic droit et choisir **Créer une GPO dans ce domaine et la lier ici**.
|
||||
3. Nommer la GPO `ALL-SERVER-AND-WORKSTATIONS-WSUS-SERVICE-CONFIGURATION`.
|
||||
4. Faire un clic droit sur la GPO, puis choisir **Modifier**.
|
||||
5. Ouvrir le chemin **Configuration ordinateur > Stratégies > Modèles d'administration > Composants Windows > Windows Update**. Le dossier des modèles peut apparaître sous l'intitulé **Modèles d'administration : définitions de stratégies**.
|
||||
6. Configurer **Spécifier l'emplacement intranet du service de mise à jour Microsoft** avec le FQDN du serveur WSUS dans les champs prévus.
|
||||
7. Activer **Autoriser les mises à jour signées provenant d'un emplacement intranet du service de mise à jour Microsoft**.
|
||||
8. Activer **Pas de redémarrage automatique avec des utilisateurs connectés pour les installations planifiées de mise à jour automatique**.
|
||||
9. Fermer l'éditeur, faire un clic droit sur la GPO et choisir **Mise à jour de la stratégie de groupe**.
|
||||
|
||||
Les postes et serveurs peuvent mettre plusieurs heures à apparaître dans la console WSUS. Pour accélérer leur signalement, exécuter les commandes suivantes sur les machines clientes :
|
||||
|
||||
```cmd
|
||||
GPUPDATE /FORCE
|
||||
WUAUCLT /REPORTNOW
|
||||
```
|
||||
|
||||
En cas de problème de remontée des clients, consulter la section **Dépannage**.
|
||||
|
||||
### 4.3 Affecter les clients aux groupes WSUS
|
||||
|
||||
Dans la console WSUS, ouvrir **Ordinateurs non attribués**. Faire un clic droit sur chaque machine, choisir **Change membership**, puis sélectionner le groupe de destination correspondant.
|
||||
|
||||
## 5. Sélectionner et déployer les mises à jour
|
||||
|
||||
### 5.1 Sélectionner les mises à jour
|
||||
|
||||
1. Ouvrir **Updates > All Updates**.
|
||||
2. Appliquer les filtres permettant d'afficher les mises à jour en échec ou nécessaires.
|
||||
3. Ajouter la colonne **Supersedence** à la liste : faire un clic droit sur la barre des colonnes et sélectionner **Supersedence**.
|
||||
4. Trier la liste à l'aide de cette colonne.
|
||||
5. Désapprouver les mises à jour remplacées par une mise à jour plus récente ou déjà incluse dans une autre mise à jour. Pour cela, sélectionner les mises à jour concernées, faire un clic droit et choisir **Decline**.
|
||||
6. Actualiser la liste et examiner les mises à jour restantes.
|
||||
|
||||
Pour les correctifs de sécurité, la procédure recommande de sélectionner les mises à jour cumulatives les plus récentes correspondant aux systèmes présents :
|
||||
|
||||
- `Cumulative Update for Windows Server [version de Windows Server] x64`
|
||||
- `Cumulative Update for Windows 7/8/10/11 x64`
|
||||
- `Cumulative Update for .NET Framework for Windows Server [version de Windows Server] x64`
|
||||
- `Cumulative Update for .NET Framework Windows 7/8/10/11 x64`
|
||||
|
||||
Des correctifs de sécurité ponctuels peuvent également être publiés hors des mises à jour cumulatives, par exemple :
|
||||
|
||||
- `Security Update for Microsoft .NET Framework`
|
||||
- `Security Update for Windows Server [version de Windows Server]`
|
||||
- `Security Update for Windows 7/8/10/11 x64`
|
||||
|
||||
Le filtre **Failed or Needed** indique que WSUS a détecté que le correctif n'est pas installé sur au moins une machine concernée. Approuver les mises à jour nécessaires selon le périmètre de maintenance.
|
||||
|
||||
Pour les bases de données SQL Server, les correctifs de sécurité sont également requis. La procédure cite le format suivant :
|
||||
|
||||
```text
|
||||
Security Update for SQL Server [version de SQL Server] RTM GDR
|
||||
```
|
||||
|
||||
Vérifier que seules les mises à jour correspondant aux produits installés chez le client sont sélectionnées.
|
||||
|
||||
### 5.2 Approuver et installer les mises à jour
|
||||
|
||||
1. Dans la liste, faire un clic droit sur la mise à jour à déployer et choisir **Approve**.
|
||||
2. Sélectionner le groupe de machines concerné.
|
||||
3. Répéter l'opération pour les mises à jour et groupes concernés.
|
||||
4. Sur chaque machine Windows, ouvrir **Windows Update** et lancer l'installation des mises à jour distribuées par WSUS.
|
||||
|
||||
## 6. Dépannage
|
||||
|
||||
### Le client n'apparaît pas dans la console WSUS
|
||||
|
||||
Vérifier que la GPO s'applique correctement. Sur la machine cliente, exécuter :
|
||||
|
||||
```cmd
|
||||
gpresult /r /scope computer
|
||||
```
|
||||
|
||||
Vérifier ensuite la connectivité entre le client et le serveur WSUS :
|
||||
|
||||
```text
|
||||
telnet [ip du serveur WSUS] 8530
|
||||
```
|
||||
|
||||
Le port `8531` peut également être utilisé selon la configuration.
|
||||
|
||||
### Vérifier le service Windows Update
|
||||
|
||||
1. Ouvrir la console des services Windows avec **Démarrer > Exécuter > services.msc**.
|
||||
2. Vérifier que le service **Windows Update** est démarré.
|
||||
3. S'il ne l'est pas, essayer de le démarrer.
|
||||
|
||||
Si le service ne démarre pas ou reste bloqué, relever son PID et exécuter les commandes suivantes :
|
||||
|
||||
```cmd
|
||||
sc queryex wuauserv
|
||||
```
|
||||
|
||||
Noter le PID affiché, puis le remplacer à la place de `XXX` dans la commande suivante :
|
||||
|
||||
```cmd
|
||||
taskkill /f /pid XXX
|
||||
```
|
||||
|
||||
Exécuter ensuite :
|
||||
|
||||
```cmd
|
||||
net stop wuauserv
|
||||
net stop cryptSvc
|
||||
net stop bits
|
||||
net stop msiserver
|
||||
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
|
||||
ren C:\Windows\System32\catroot2 Catroot2.old
|
||||
net start wuauserv
|
||||
```
|
||||
Reference in New Issue
Block a user