Compare commits

...

50 Commits

Author SHA1 Message Date
41aa9c626c maj role zabbix srv : rendre idempottent le playbook 2024-01-12 10:23:24 +01:00
gsb
6816bca773 Actualiser roles/glpi/README.md 2024-01-12 10:19:19 +01:00
gsb
fe386b4f4c Actualiser roles/glpi/README.md 2024-01-12 10:01:19 +01:00
gsb
008b6ce0bb Actualiser roles/glpi/README.md 2024-01-12 09:52:11 +01:00
gsb
9447a6c726 Actualiser roles/glpi/README.md 2024-01-12 09:45:59 +01:00
gsb
c550ea90c2 Actualiser roles/glpi/README.md 2024-01-12 09:39:57 +01:00
gsb
dc010b3562 Actualiser roles/glpi/README.md 2024-01-12 09:28:04 +01:00
gsb
46cd74fed6 Actualiser roles/glpi/README.md 2024-01-12 09:27:42 +01:00
gsb
1f1ade55c7 Actualiser roles/glpi/README.md 2024-01-12 09:22:41 +01:00
gsb
e5ba286b4f Actualiser roles/glpi/README.md 2024-01-12 09:21:06 +01:00
gsb
9faec4b433 Actualiser roles/glpi/README.md 2024-01-12 09:20:22 +01:00
gsb
29f0b8e269 Actualiser roles/glpi/README.md 2024-01-12 09:17:21 +01:00
gsb
4722affa2e Actualiser roles/glpi/README.md 2024-01-12 09:16:56 +01:00
gsb
fb290afb6a Actualiser roles/glpi/README.md 2024-01-12 09:15:33 +01:00
gsb
a0be338fd5 Actualiser roles/glpi/README.md 2024-01-12 09:13:33 +01:00
gsb
1e8e9e1281 Actualiser roles/glpi/README.md 2024-01-12 08:53:31 +01:00
gsb
713a9ecc28 Actualiser roles/glpi/README.md 2024-01-12 08:50:43 +01:00
gsb
6a023456fb Actualiser roles/glpi/README.md 2024-01-12 08:49:59 +01:00
gsb
932728ae3a Actualiser roles/glpi/README.md 2024-01-12 08:45:44 +01:00
gsb
b35f036ce2 Actualiser roles/glpi/README.md 2024-01-12 08:44:54 +01:00
gsb
fd25eba978 Actualiser roles/glpi/README.md 2024-01-12 08:20:45 +01:00
7b36d98298 mise a jour role glpi 2024-01-11 16:12:00 +01:00
gsb
663b8d349a Actualiser roles/glpi/README.md 2024-01-11 15:36:13 +01:00
gsb
d5279901dc Actualiser roles/glpi/README.md 2024-01-11 15:34:15 +01:00
790cf9f0a6 modif fog 2024-01-11 15:26:32 +01:00
b03fedcc45 modif role fog 2024-01-11 15:26:32 +01:00
9deef13f8e modif fog 2024-01-11 15:18:03 +01:00
6ebde054e0 update 2024-01-11 15:07:44 +01:00
57738871f0 update 2024-01-11 15:00:04 +01:00
4f73bd7520 mise à jour 2eme du nom zabbix cli 2024-01-11 11:51:32 +01:00
efcbd3d0cf modification roles glpi 2024-01-11 11:19:46 +01:00
ac1d2756bd mise a jour role glpi 2024-01-11 11:19:46 +01:00
1a9cfeb5d2 mise à jour zabbix-cli 2024-01-11 11:06:35 +01:00
dea09f952d amelioration role zabbix server 2024-01-11 09:49:23 +01:00
1a63a0d865 mise à jour roles GLPI 10.0.11 et maj role BASE 2024-01-09 12:37:47 +01:00
975cb35f00 chgt buster => bullseye, 2023=>2024 2024-01-09 11:42:14 +01:00
ccb083ddcc doc Windows - suite 2024-01-08 20:48:58 +01:00
882a072fa9 doc Windows 2024-01-08 20:40:31 +01:00
01faab4a6e modifications des playbooks journald snd et rcv 2023-12-25 14:57:04 +01:00
d9fb25425d Ajout de default pour Zabbix-cli 2023-12-22 19:01:25 +01:00
fb900be1e4 Ajout role Zabbix-cli + ajout des agents dans les srv 2023-12-22 15:00:33 +01:00
92c6b3eb89 ajout du role zabbix-srv 2023-12-22 14:30:25 +01:00
bce5723e7b mise à jour du playbook journald-rcv 2023-12-22 14:20:12 +01:00
a7315fa4c8 Ajout role journald-rcv 2023-12-22 11:01:03 +01:00
8cfbefc4dc roles journald-snd 2023-12-22 09:43:24 +01:00
0697ad4eec ajout du service ssh dans Goss 2023-12-22 09:04:11 +01:00
ae54eb5cb8 README 2023-12-22 00:17:25 +01:00
2fe557e70b README 2023-12-22 00:08:40 +01:00
877f0a054f README 2023-12-22 00:01:51 +01:00
74433d2655 typo 2023-12-21 23:41:56 +01:00
37 changed files with 660 additions and 171 deletions

View File

@ -1,18 +1,22 @@
# gsb2024 # gsb2024
2024-12-19 ps 2024-12-21 ps
Environnement et playbooks ansible pour le projet GSB 2024 Environnement et playbooks ansible pour le projet GSB 2024
## Quickstart ## Quickstart
Prérequis : Prérequis :
* une machine Debian Bookworm * une machine LInux Debian Bookworm ou Windows
* VirtualBox * VirtualBox
* git
* fichier machines virtuelles **ova** : * fichier machines virtuelles **ova** :
* **debian-bookworm-gsb-2023c.ova** * **debian-bookworm-gsb-2023c.ova**
* **debian-buster-gsb-2023a.ova** * **debian-buster-gsb-2023a.ova**
## Les machines
* **s-adm** : routeur adm, DHCP + NAT, deploiement, proxy squid * **s-adm** : routeur adm, DHCP + NAT, deploiement, proxy squid
* **s-infra** : DNS maitre, autoconfiguration navigateurs avec **wpad** * **s-infra** : DNS maitre, autoconfiguration navigateurs avec **wpad**
* **r-int** : routage, DHCP * **r-int** : routage, DHCP
@ -38,6 +42,7 @@ Prérequis :
## Les playbooks ## Les playbooks
Il existe un playbook ansible pour chaque machine à installer, nommé comme la machine avec l'extension **.yml**
## Installation ## Installation
@ -49,25 +54,26 @@ et pour **s-fog** :
* **debian-buster-2023a.ova** (2023-01-06) * **debian-buster-2023a.ova** (2023-01-06)
* Debian Buster 10 - 2 cartes - 1 Go - stockage 20 Go * Debian Buster 10 - 2 cartes - 1 Go - stockage 20 Go
Les images **.ova** doivent etre stockées dans le répertoire habituel de téléchargement de l'utilisateur courant.
### Création d'une VM ### Création d'une VM
Récupérer le dépot gsb2024.git avec : Sur la machine physique, récupérer le dépot **gsb2024.git** avec :
```shell ```shell
git clone https://gitea.lyc-lecastel.fr/gsb/gsb2024.git git clone https://gitea.lyc-lecastel.fr/gsb/gsb2024.git
cd gsb2024
``` ```
On utilisera le script (bash) **mkvm** ou (PowerShell) **mkvm.ps1** pour créer une VM Virtualbox. On utilisera le script (bash) **mkvm** ou (PowerShell) **mkvm.ps1** pour créer une VM Virtualbox.
```shell ```shell
gsb2024> cd gsb2024/scripts
cd scripts mkvm -r s-adm
$ mkvm -r s-adm
``` ```
### Machine s-adm ### Machine s-adm
* créer la machine virtuelle **s-adm** avec **mkvm** comme décrit plus haut. * créer la machine virtuelle **s-adm** avec **mkvm** comme décrit plus haut.
* démarrer la VM puis ouvir une session
* utiliser le script de renommage comme suit : * utiliser le script de renommage comme suit :
```shell ```shell
bash chname <nouveau_nom_de_machine>` , puis redémarrer bash chname <nouveau_nom_de_machine>` , puis redémarrer
@ -89,20 +95,35 @@ bash chname <nouveau_nom_de_machine>` , puis redémarrer
### Pour chaque machine ### Pour chaque machine
#### Etape 1
- créer la machine avec **mkvm -r**, les cartes réseau sont paramétrées par **mkvm** selon les spécifications - créer la machine avec **mkvm -r**, les cartes réseau sont paramétrées par **mkvm** selon les spécifications
- utiliser le script de renommage comme suit : `bash chname <nouveau_nom_de_machine>` - ouvrir une session sur la machine considérée
- redémarrer - renomme la machine soit
* en utilisant le script de renommage comme suit :
` /root/tools/ansible/gsb2024/scripts/chname <nouveau_nom_de_machine>`
* soit avec :
```shell
NHOST=mavm
sed -i "s/bookworm/${NHOST}/g" /etc/host{s,name}
sudo reboot # on redemarre
```
#### Etape 2
- utiliser le script **gsb-start** : `bash gsb-start` - utiliser le script **gsb-start** : `bash gsb-start`
- ou sinon: - ou sinon:
```shell ```shell
mkdir -p tools/ansible ; cd tools/ansible mkdir -p tools/ansible ; cd tools/ansible
git clone https://gitea.lyc-lecastel.fr/gsb/gsb2024.git git clone https://gitea.lyc-lecastel.fr/gsb/gsb2024.git
cd gsb2024/pre cd gsb2024/pre
export DEPL=192.168.99.99 DEPL=192.168.99.99 bash gsbboot
bash gsbboot
cd ../.. cd ../..
bash pull-config bash pull-config
``` ```
#### Etape 3
- redémarrer - redémarrer
- **Remarque** : une machine doit avoir été redémarrée pour prendre en charge la nouvelle configuration - **Remarque** : une machine doit avoir été redémarrée pour prendre en charge la nouvelle configuration

View File

@ -1,72 +1,70 @@
package: package:
dnsmasq: dnsmasq:
installed: true installed: true
squid: squid:
installed: true installed: true
addr: addr:
tcp://depl.sio.lan:80: tcp://depl.sio.lan:80:
reachable: true reachable: true
timeout: 500 timeout: 500
port: port:
tcp:53: tcp:53:
listening: true listening: true
ip: ip:
- 0.0.0.0 - 0.0.0.0
tcp6:53: tcp6:53:
listening: true listening: true
ip: ip:
- '::' - '::'
udp:53: udp:53:
listening: true listening: true
ip: ip:
- 0.0.0.0 - 0.0.0.0
udp:67: udp:67:
listening: true listening: true
ip: ip:
- 0.0.0.0 - 0.0.0.0
udp6:53: udp6:53:
listening: true listening: true
ip: ip:
- '::' - '::'
service: service:
dnsmasq: dnsmasq:
enabled: true enabled: true
running: true running: true
squid: squid:
enabled: true enabled: true
running: true running: true
ssh: ssh:
enabled: true enabled: true
running: true running: true
user: user:
dnsmasq: dnsmasq:
exists: true exists: true
gid: 65534 gid: 65534
groups: groups:
- nogroup - nogroup
home: /var/lib/misc home: /var/lib/misc
shell: /usr/sbin/nologin shell: /usr/sbin/nologin
group:
ssh:
exists: true
command: command:
/sbin/sysctl net.ipv4.ip_forward: /sbin/sysctl net.ipv4.ip_forward:
exit-status: 0 exit-status: 0
stdout: stdout:
- net.ipv4.ip_forward = 1 - net.ipv4.ip_forward = 1
stderr: [] stderr: []
timeout: 10000 timeout: 10000
dns: dns:
depl.sio.lan: depl.sio.lan:
resolveable: true resolveable: true
timeout: 500 resolvable: null
timeout: 500
process: process:
dnsmasq: dnsmasq:
running: true running: true
squid: squid:
running: true running: true
interface: interface:
enp0s8: enp0s8:
exists: true exists: true
addrs: addrs:
- 192.168.99.99/24 - 192.168.99.99/24

13
install-fog.yml Normal file
View File

@ -0,0 +1,13 @@
---
- hosts: localhost
connection: local
roles:
# - base
# - goss
# - dhcp-fog
#- ssh-cli
#- snmp-agent
# - syslog-cli
- fog
#- post

83
localhost, Normal file
View File

@ -0,0 +1,83 @@
# Ce fichier viminfo a été généré par Vim 9.0.
# Vous pouvez l'éditer, mais soyez prudent.
# Viminfo version
|1,4
# 'encoding' dans lequel ce fichier a été écrit
*encoding=utf-8
# hlsearch on (H) or off (h):
~h
# Historique ligne de commande (chronologie décroissante) :
:q!
|2,0,1703236388,,"q!"
:x
|2,0,1703236381,,"x"
:x!
|2,0,1703236221,,"x!"
# Historique chaîne de recherche (chronologie décroissante) :
# Historique expression (chronologie décroissante) :
# Historique ligne de saisie (chronologie décroissante) :
# Historique Ligne de débogage (chronologie décroissante) :
# Registres :
""1 LINE 0
connection: local
|3,1,1,1,1,0,1703236374," connection: local"
"2 LINE 0
hosts: localhost
|3,0,2,1,1,0,1703236374," hosts: localhost"
# Marques dans le fichier :
'0 1 2 ~/tools/ansible/gsb2024/s-mon.yml
|4,48,1,2,1703236388,"~/tools/ansible/gsb2024/s-mon.yml"
'1 1 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,49,1,9,1703236339,"~/tools/ansible/gsb2024/s-mon.yml"
'2 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,50,9,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
'3 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,51,9,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
'4 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,52,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
'5 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,53,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
'6 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,54,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
'7 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,55,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
'8 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,56,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
'9 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,57,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
# Liste de sauts (le plus récent en premier) :
-' 1 2 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,1,2,1703236388,"~/tools/ansible/gsb2024/s-mon.yml"
-' 1 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,1,9,1703236339,"~/tools/ansible/gsb2024/s-mon.yml"
-' 9 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,9,9,1703236318,"~/tools/ansible/gsb2024/s-mon.yml"
-' 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,11,9,1703236318,"~/tools/ansible/gsb2024/s-mon.yml"
-' 11 9 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,11,9,1703236221,"~/tools/ansible/gsb2024/s-mon.yml"
-' 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,1,13,1703236018,"~/tools/ansible/gsb2024/s-mon.yml"
-' 1 13 ~/tools/ansible/gsb2024/s-mon.yml
|4,39,1,13,1703236013,"~/tools/ansible/gsb2024/s-mon.yml"
# Historique des marques dans les fichiers (les plus récentes en premier) :
> ~/tools/ansible/gsb2024/s-mon.yml
* 1703236386 0
" 1 2
^ 9 10
. 2 0
+ 10 0
+ 2 0

View File

@ -5,7 +5,7 @@ prj=gsb2024
opt="" opt=""
if [ -z ${UREP+x} ]; then if [ -z ${UREP+x} ]; then
UREP=https://gitea.lyc-lecastel.fr/gsb/gsb2024.git UREP=https://gitea.lyc-lecastel.fr/gsb/gsb2024.git
fi fi
dir=/root/tools/ansible dir=/root/tools/ansible

View File

@ -74,3 +74,9 @@
- net.ipv6.conf.all.disable_ipv6 - net.ipv6.conf.all.disable_ipv6
- net.ipv6.conf.default.disable_ipv6 - net.ipv6.conf.default.disable_ipv6
- net.ipv6.conf.lo.disable_ipv6 - net.ipv6.conf.lo.disable_ipv6
- name: desactive unatentted upgrade
ansible.builtin.service:
name: unattended-upgrades.service
state: stopped
enabled: false

View File

@ -2,8 +2,8 @@
## Created by the FOG Installer ## Created by the FOG Installer
## Find more information about this file in the FOG Project wiki: ## Find more information about this file in the FOG Project wiki:
## https://wiki.fogproject.org/wiki/index.php?title=.fogsettings ## https://wiki.fogproject.org/wiki/index.php?title=.fogsettings
## Version: 1.5.9 ## Version: 1.5.10
## Install time: jeu. 26 janv. 2023 11:41:05 ## Install time: jeu. 11 janv. 2024 11:41:05
ipaddress='172.16.64.16' ipaddress='172.16.64.16'
copybackold='0' copybackold='0'
interface='enp0s9' interface='enp0s9'

View File

@ -1,44 +1,84 @@
## Comment marche le rôle ## Comment fonctionne le rôle
Le rôle installe un serveur GLPI fonctionnant graĉe à php et à nginx. Le rôle installe un serveur GLPI fonctionnant graĉe à php et à nginx.
Ce rôle permet aussi d'installer FusionInventory sur glpi. Ce rôle permet aussi de télécharger l'agent GLPI sur glpi.
Le rôle permet aussi de sauvegarde la BDD de glpi. Le rôle permet de créer la base GLPI.
## Comment utiliser GLPI ## Comment utiliser GLPI
Après le pull-config, aller sur une machine du réseau n-user et aller sur http://s-itil/install/install.php Après le pull-config, depuis une machine du réseau n-user, se rendre sur l'URL : *http://s-itil/install/install.php*
Puis lancer l'installation, les paramètres sql à fournir sont : Puis lancer l'installation, les paramètres sql à fournir sont les suivant :
serveur : localhost * serveur : **localhost**
utilisateur : glpi * utilisateur : **glpi**
mot de passe : glpi * mot de passe : **glpi**
Selectionner la base glpi * Selectionner la base **glpi**
Ne pas envoyer de statistique d'usage Ne pas envoyer de statistique d'usage
## Postfix : ## Postfix :
Postfix est utilisé pour renvoyer des messages pour assuré le suivi de l'avancement du ticket.
Aller dans Configuration > Notification, activer le suivi et les notification Aller dans **Configuration > Notification**, activer le suivi et les notification
Aller dans Configuration des notifications par courriels Aller dans Configuration des notifications par courriels
Mettre l'adresse mail de supervision dans : Courriel de l'administrateur, Courriel expéditeur et comme adresse de réponse Mettre l'adresse mail de supervision dans : Courriel de l'administrateur, Courriel expéditeur et comme adresse de réponse
Le mode d'envoie des courriels est SMTP Le mode d'envoie des courriels est SMTP
l'hôte SMTP est localhost l'hôte SMTP est localhost
## Inventorier une machine windows sur le serveur GLPI avec l'agent :
Actuellement la version de l'agent glpi disponible directement sur le serveur est la version 1.7 de celui.
- Télécharger l'agent depuis le serveur GLPI : *http://s-itil/glpicli*
- Installer l'agent : sélectionner l'option "Typical" et entrer l'URL du serveur dans "Remote Targets" : *http://s-itil/*
- Se rendre sur localhost:62354 pour forcer la remonter
*Note: si la machine ne remonte aprés avoir forcer l'interface depuis l'interface web il est possible de rédémarrer le service glpi agent.*
- Actualiser GLPI et la machine sera inventoriée
## Enregistrement A et PTR pour S-WIN :
L'enregistrement A et PTR est utilisé pour résoudre les noms des machines nécessaire à la synchronisation de l'annuaire LDAP sur le serveur comme serveur DNS GLPI en utilisant le serveur S-WIN sans passé sur le serveur S-INFRA.
Ajouter les enregistrement "A" et "PTR" sur le DNS de l'Active Directory:
Sur le serveur S-WIN:
**Gestionnaire de serveur** --> **Gestionnaire DNS** --> **Zones Recherches Directes** --> **gsb.lan** --> **Ajouter un hôte (A)**:
- s-infra 172.16.0.1
- s-itil 172.16.0.9
- r-int 172.16.0.254
- s-win 172.16.0.6
Cocher la case **Créer un pointeur d'enregistrement PTR associé**
## LDAP : ## LDAP :
Aller dans Configuration > Authentification > Annuaires LDAP. Aller dans Configuration > Authentification > Annuaires LDAP.
Ajouter un serveur en cliquant sur le + Ajouter un serveur en cliquant sur le +
Remplisser les cases: Remplisser les cases:
Nom : s-win * Nom : **s-win**
Serveur par défaut : oui * Serveur par défaut : **oui**
Actif : oui * Actif : **oui**
Serveur : s-win.gsb.lan * Serveur : **s-win.gsb.lan**
Filtre de connexion : (&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2))) * Filtre de connexion : (&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
BaseDN : DC=gsb,DC=lan * BaseDN : **DC=gsb,DC=lan**
DN du compte : GSB\Administrateur * DN du compte : **GSB\Administrateur**
Mot de passe : Azerty1+ * Mot de passe : **Azerty1+**
Champ de l'identifiant : samaccountname * Champ de l'identifiant : **samaccountname**
Pour importer les utilisateurs allez dans Administration > Utilisateur > Liaison annuaire LDAP > Importation de nouveau utilisateurs Pour importer les utilisateurs allez dans **Administration > Utilisateur > Liaison annuaire LDAP > Importation de nouveau utilisateurs**
Appuyer sur rechercher Appuyer sur rechercher
Puis sélectionner les utilisateurs afficher, allez dans action et sélectionnez importer. Puis sélectionner les utilisateurs afficher, allez dans action et sélectionnez importer.
## Rejoindre le domaine gsb.lan depuis un client windows :
## Les modification à faire pour un prochaine version de GLPI :
Pour les prochaines versions de GLPI et pouvoir utiliser le playbook, voici les modification à faire :
- Changer la version de GLPI
- Changer la version de PHP
- Changer la version de GLPI Agent
*Modification effectué par : jm - ak*

View File

@ -1,6 +1,15 @@
#variable depl
depl_url: "http://s-adm.gsb.adm/gsbstore" depl_url: "http://s-adm.gsb.adm/gsbstore"
#depl_glpi: "glpi-9.5.6.tgz" #depl_glpi: "glpi-9.5.6.tgz"
depl_glpi: "glpi-10.0.6.tgz" depl_glpi: "glpi-10.0.11.tgz"
#depl_fusioninventory: "fusioninventory-9.5+3.0.tar.bz2" #depl_fusioninventory: "fusioninventory-9.5+3.0.tar.bz2"
depl_glpi_agentx64: "GLPI-Agent-1.4-x64.msi" depl_glpi_agentx64: "GLPI-Agent-1.7-x64.msi"
depl_glpi_agentx86: "GLPI-Agent-1.4-x86.msi"
#variables glpi
glpi_version: "10.0.11"
glpi_dir: "/var/www/html/glpi"
glpi_dbhost: "127.0.0.1"
glpi_dbname: "glpi"
glpi_dbuser: "glpi"
glpi_dbpasswd: "glpi"
glpi_cli: "/var/www/html/glpicli"

View File

@ -1,4 +0,0 @@
#!/bin/sh
chm="/var/www/html/glpi/files/_dumps"
# Dump base GLPI
mysqldump -uroot -proot glpi |gzip > $chm/$(date +%Y-%m-%d).sql.gz

View File

@ -1,6 +1,6 @@
--- ---
- name: restart php-fpm - name: restart php-fpm
service: name=php7.0-fpm state=restarted service: name=php8.2-fpm state=restarted
- name: restart nginx - name: restart nginx
service: name=nginx state=restarted service: name=nginx state=restarted

View File

@ -1,7 +1,7 @@
--- ---
- name: Installation des paquets - name: Installation des paquets
apt: apt:
state: latest state: present
name: name:
- nginx - nginx
- php-fpm - php-fpm
@ -24,10 +24,10 @@
- postfix - postfix
- mailutils - mailutils
- name: Changement listen dans le fichier conf de php7.3 - name: Changement listen dans le fichier conf de php8.2
replace: replace:
dest: /etc/php/7.4/fpm/pool.d/www.conf dest: /etc/php/8.2/fpm/pool.d/www.conf
regexp: 'listen = /run/php/php7.4-fpm.sock' regexp: 'listen = /run/php/php8.2-fpm.sock'
replace: 'listen = 127.0.0.1:9000' replace: 'listen = 127.0.0.1:9000'
backup: yes backup: yes
@ -41,9 +41,12 @@
src: block.j2 src: block.j2
dest: /etc/nginx/sites-enabled/glpi dest: /etc/nginx/sites-enabled/glpi
notify:
- restart nginx
- name: Remplacement dans le fichier de conf php du timeout - name: Remplacement dans le fichier de conf php du timeout
replace: replace:
dest: /etc/php/7.4/fpm/php.ini dest: /etc/php/8.2/fpm/php.ini
regexp: 'max_execution_time = 30' regexp: 'max_execution_time = 30'
replace: 'max_execution_time = 600' replace: 'max_execution_time = 600'
backup: yes backup: yes
@ -112,9 +115,9 @@
# dest: /var/www/html/glpi/plugins # dest: /var/www/html/glpi/plugins
# remote_src: yes # remote_src: yes
- name: Creation de ficlient - name: Creation de glpicli
file: file:
path: /var/www/html/ficlients path: "{{ glpi_cli }}"
state: directory state: directory
owner: www-data owner: www-data
group: www-data group: www-data
@ -130,21 +133,19 @@
- name: Installation de GLPI Agent windows x64 - name: Installation de GLPI Agent windows x64
get_url: get_url:
url: "{{ depl_url }}/{{ depl_glpi_agentx64 }}" url: "{{ depl_url }}/{{ depl_glpi_agentx64 }}"
dest: "/var/www/html/ficlients" dest: "{{ glpi_cli }}"
# - name: Installation de GLPI Agent windows x86 notify:
# get_url: - restart nginx
# url: "{{ depl_url }}/{{ depl_glpi_agentx86 }}"
# dest: "/var/www/html/ficlients"
- name: Copie du script dbdump - name: lancer la commande de création de la base de donnees glpi
copy: ansible.builtin.shell: "php bin/console database:install --reconfigure --db-name {{ glpi_dbname }} --db-user {{ glpi_dbuser }} --db-password {{ glpi_dbpasswd }} -f -n"
src: dbdump args:
dest: /root/ chdir: "{{ glpi_dir }}"
- name: chmod de dbdump
shell: chmod +x /root/dbdump
- debug:
msg: "base de donnees de glpi creer"
- debug: - debug:
msg: "Redemarrez le serveur GLPI" msg: "Redemarrez le serveur GLPI"

View File

@ -16,7 +16,7 @@ server {
fastcgi_param SERVER_NAME $host; fastcgi_param SERVER_NAME $host;
} }
location /ficlients { location /glpicli {
root /var/www/html; root /var/www/html;
autoindex on; autoindex on;
} }

View File

@ -0,0 +1,16 @@
# Role syslog : installation et configuration de syslog serveur (centralisation des logs)
***
Ce role a pour objectif de activer le module UDP dans le fichier /etc/rsyslog.conf pour accepter les logs entrants des machines concernées :
on décommente la ligne suivante :
'module(load="imudp"\)'
Ensuite le role active l'écoute du module UDP sur le port 514 afin de pouvoir envoyer les logs.
on décommente la ligne suivante dans le même fichier que ci-dessus :
'input\(type="imudp" port="514"\)'
pour finir le role va charger le module UDP afin que la machine **s-infra** puissent reçevoir les logs entrants.
Pour faire cela on décommente la ligne suivante dans le fichier /etc/systemd/journald.conf :
'ForwardToSyslog=yes'
pour finir le role va redemmarer automatiquement les services journald et rsyslog

View File

@ -0,0 +1,5 @@
---
- name: restart journald
service:
name: systemd-journald.service
state: restarted

View File

@ -0,0 +1,44 @@
---
- name: 1. Installation de systemd-journal-remote
apt:
name: systemd-journal-remote
state: present
- name: 2. Enable et start systemd-journal-remote.socket
systemd:
name: systemd-journal-remote.socket
enabled: yes
state: started
- name: 3. Copie de systemd-journal-remote.service dans /etc/systemd/system
copy:
src: /lib/systemd/system/systemd-journal-remote.service
dest: /etc/systemd/system/systemd-journal-remote.service
remote_src: yes
backup: yes
- name: 4. Modification de systemd-journal-remote.service
replace:
path: /etc/systemd/system/systemd-journal-remote.service
regexp: '--listen-https=-3'
replace: '--listen-http=-3'
- name: 5. active le mode SplitMode en mode Host
replace:
path: /etc/systemd/journal-remote.conf
regexp: '^#\sSplitMode=host'
replace: 'SplitMode=host'
- name: 6. Creation /var/log/journal/remote directory
file:
path: /var/log/journal/remote
state: directory
owner: systemd-journal-remote
- name: 7. Redemarrage de systemd
systemd:
daemon_reload: yes
# notify:
#- restart journald

View File

@ -0,0 +1,16 @@
# Role syslog : installation et configuration de syslog serveur (centralisation des logs)
***
Ce role a pour objectif de activer le module UDP dans le fichier /etc/rsyslog.conf pour accepter les logs entrants des machines concernées :
on décommente la ligne suivante :
'module(load="imudp"\)'
Ensuite le role active l'écoute du module UDP sur le port 514 afin de pouvoir envoyer les logs.
on décommente la ligne suivante dans le même fichier que ci-dessus :
'input\(type="imudp" port="514"\)'
pour finir le role va charger le module UDP afin que la machine **s-infra** puissent reçevoir les logs entrants.
Pour faire cela on décommente la ligne suivante dans le fichier /etc/systemd/journald.conf :
'ForwardToSyslog=yes'
pour finir le role va redemmarer automatiquement les services journald et rsyslog

View File

@ -0,0 +1,10 @@
---
- name: enable systemd-journal-upload
service:
name: systemd-journal-upload.service
state: enabled
- name: restart systemd-journal-upload
service:
name: systemd-journal-upload.service
state: restarted

View File

@ -0,0 +1,31 @@
---
- name: 1. installe systemd-journal-remote
apt:
name:
- systemd-journal-remote
state: present
- name: 2. indique l'URL journald distant
replace:
path: /etc/systemd/journal-upload.conf
regexp: '^#\sURL='
replace: 'URL=http://syslog.gsb.adm:19532'
- name: 3. Just force systemd to reread configs (2.4 and above)
ansible.builtin.systemd_service:
daemon_reload: true
- name: 4. active le service systemd-journald-upload
ansible.builtin.service:
name: systemd-journal-upload.service
enabled: yes
- name: 5. redemarre systemd-journal-upload.service
service:
name: systemd-journal-upload.service
state: restarted
#notify:
#- enable systemd-journal-upload
#- restart systemd-journal-upload

View File

@ -0,0 +1,14 @@
# Rôle Zabbix client
***
Rôle du Zabbix client pour la supervision des différentes machines en active
## Tables des matières
1. [Que fait le rôle Zabbix ?]
## Que fait le rôle Zabbix ?
Il permet de configurer les agents zabbix en active sur le serveur à définir dans defaults.
### Installation et configuration de Zabbix-agent
Le rôle Zabbix-cli va installer zabbix-agent pour les serveurs, zabbix-agent pour superviser, zabbix-agent sera notre outil de supervision côté serveurs.

View File

@ -0,0 +1,5 @@
- name: restart zabbix agent
service:
name: zabbix-agent
state: restarted
enabled: yes

View File

@ -0,0 +1,42 @@
- name: Intallation paquet zabbix agent
get_url:
url: "https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian12_all.deb"
dest: "/tmp"
- name: Intallation paquet zabbix agent suite
apt:
deb: "/tmp/zabbix-release_6.4-1+debian12_all.deb"
state: present
- name: Update apt
apt:
update_cache: yes
- name: Intallation Zabbix agent
apt:
name: zabbix-agent
state: present
- name: Enable Zabbix agent service
systemd:
name: zabbix-agent
state: restarted
enabled: yes
- name: Rm package
file:
path: "/tmp/zabbix-release_6.4-1+debian12_all.deb"
state: absent
- name: config
template:
src: zabbix_agentd.conf.temp
dest: /etc/zabbix/zabbix_agentd.conf
vars:
PidFile: "/run/zabbix/zabbix_agentd.pid"
LogFile: "/var/log/zabbix/zabbix_agentd.log"
LogFileSize: "0"
Server: "127.0.0.1"
ServerActive: "192.168.99.8"
Hostname: "{{ ansible_hostname }}"
Include: "/etc/zabbix/zabbix_agentd.d/*.conf"

View File

@ -0,0 +1,7 @@
PidFile={{ PidFile }}
LogFile={{ LogFile }}
LogFileSize={{ LogFileSize }}
Server={{ Server }}
ServerActive={{ ServerActive }}
Hostname={{ Hostname }}
Include={{ Include }}

View File

@ -0,0 +1,18 @@
# Rôle Zabbix
***
Rôle Zabbix pour la supervision des différentes machines
## Tables des matières
1. [Que fait le rôle Zabbix ?]
## Que fait le rôle Zabbix ?
### Installation et configuration de Zabbix
Le rôle Zabbix va installer apache2 pour le serveur web, zabbix-server pour la supervision, zabbix qui sera notre outil de supervision.
Lors de la première connexion, on indique les identifiants de la BDD avec "zabbix" et "password".
Pour l'id de Zabbix, c'est "Admin" et "zabbix", à l'adresse "https://s-mon/zabbix".

View File

@ -0,0 +1,17 @@
- name: restart zabbix server
service:
name: zabbix-server
state: restarted
enabled: yes
- name: restart apache2
service:
name: apache2
state: restarted
enabled: yes
- name: restart zabbix agent
service:
name: zabbix-agent
state: restarted
enabled: yes

View File

@ -0,0 +1,94 @@
- name: 1. Récupérer les dépots de zabbix
get_url:
url: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian12_all.deb
dest: /tmp
- name: 2. Installer les depots
apt:
deb: "/tmp/zabbix-release_6.4-1+debian12_all.deb"
state: present
- name: 3. Lancer un apt update
apt:
update_cache: yes
- name: 4. Installer les paquets de zabbix et mariadb
apt:
name:
- zabbix-server-mysql
- zabbix-frontend-php
- zabbix-apache-conf
- zabbix-sql-scripts
- zabbix-agent
- mariadb-server
- python3-pymysql
state: present
- name: 5. s'assurer que mariadb est en fonctionnement
service:
name: mariadb
state: started
- name: 6. Créer la base de données
community.mysql.mysql_db:
name: zabbix
encoding: utf8mb4
collation: utf8mb4_bin
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: 7. Creer un utilisateur et lui attribuer tous les droits
community.mysql.mysql_user:
name: zabbix
password: password
priv: '*.*:ALL,GRANT'
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: 8. Modifier une variable pour importer un schema
community.mysql.mysql_variables:
variable: log_bin_trust_function_creators
value: 1
mode: global
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: 9. Importer le schema initial
community.mysql.mysql_db:
state: import
name: zabbix
encoding: utf8mb4
login_user: zabbix
login_password: password
target: /usr/share/zabbix-sql-scripts/mysql/server.sql.gz
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: 10. Modifier la variable pour le schema
community.mysql.mysql_variables:
variable: log_bin_trust_function_creators
value: 0
mode: global
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: 11. Configurer le mdp de la db
replace:
path: /etc/zabbix/zabbix_server.conf
regexp: '^# DBPassword='
replace: 'DBPassword=password'
- name: 12. Lancer le service zabbix-server
service:
name: zabbix-server
state: restarted
enabled: yes
- name: 13. Lancer le service zabbix-agent
service:
name: zabbix-agent
state: restarted
enabled: yes
- name: 14. Lancer le service apache2
service:
name: apache2
state: restarted
enabled: yes

View File

@ -8,7 +8,7 @@
- dnsmasq - dnsmasq
- squid - squid
# - local-store # - local-store
- snmp-agent - zabbix-cli
## - syslog-cli ## - syslog-cli
- post - post
# - goss # - goss

View File

@ -8,7 +8,7 @@
- appli - appli
- ssh-cli - ssh-cli
# - syslog-cli # - syslog-cli
- snmp-agent - zabbix-cli
- ssl-apache - ssl-apache
- post - post

View File

@ -6,7 +6,7 @@
- base - base
- goss - goss
# - proxy3 # - proxy3
- snmp-agent - zabbix-cli
# - ssh-cli # - ssh-cli
# - syslog-cli # - syslog-cli
- smb-backup - smb-backup

View File

@ -9,5 +9,5 @@
- ssh-cli - ssh-cli
- snmp-agent - snmp-agent
# - syslog-cli # - syslog-cli
- fog # - fog
- post - post

View File

@ -4,11 +4,11 @@
# include: config.yml # include: config.yml
roles: roles:
- base - base
- goss - zabbix-cli
- goss
- dns-master - dns-master
- webautoconf - webautoconf
- snmp-agent - journald-snd
# - syslog-cli
- ssh-cli - ssh-cli
- post - post

View File

@ -2,18 +2,18 @@
- hosts: localhost - hosts: localhost
connection: local connection: local
vars: #vars:
glpi_version: "10.0.6" #glpi_version: "10.0.11"
glpi_dir: "/var/www/html/glpi" #glpi_dir: "/var/www/html/glpi"
glpi_dbhost: "127.0.0.1" #glpi_dbhost: "127.0.0.1"
glpi_dbname: "glpi" #glpi_dbname: "glpi"
glpi_dbuser: "glpi" #glpi_dbuser: "glpi"
glpi_dbpasswd: "glpi" #glpi_dbpasswd: "glpi"
roles: roles:
- base - base
- goss - goss
- snmp-agent - zabbix-cli
- glpi - glpi
- ssh-cli - ssh-cli
# - syslog-cli # - syslog-cli

View File

@ -1,16 +1,15 @@
- name: Nagios ---
hosts: localhost - name: Zabbix
connection: local hosts: all
become: yes # become: yes
become_method: sudo # become_method: sudo
become_user: root # become_user: root
vars: # vars:
access: "Restricted Nagios4 Access" # access: "Restricted Nagios4 Access"
roles: roles:
- base - base
- goss - goss
- nagios
- postfix
- ssh-cli - ssh-cli
- syslog - zabbix-srv
- journald-rcv
- post - post

View File

@ -6,7 +6,7 @@
- base - base
- goss - goss
- squid - squid
- snmp-agent - zabbix-cli
- ssh-cli - ssh-cli
# - syslog-cli # - syslog-cli
- post - post

View File

@ -1,12 +1,12 @@
#!/bin/bash #!/bin/bash
mkvmrelease="v1.3.0" mkvmrelease="v1.3.1"
ovarelease="2023c" ovarelease="2023c"
ovafogrelease="2023b" ovafogrelease="2024a"
#ovafile="$HOME/Téléchargements/debian-bullseye-gsb-${ovarelease}.ova" #ovafile="$HOME/Téléchargements/debian-bullseye-gsb-${ovarelease}.ova"
ovafile="$HOME/Téléchargements/debian-bookworm-gsb-${ovarelease}.ova" ovafile="$HOME/Téléchargements/debian-bookworm-gsb-${ovarelease}.ova"
ovafilefog="$HOME/Téléchargements/debian-buster-gsb-${ovafogrelease}.ova" ovafilefog="$HOME/Téléchargements/debian-bullseye-gsb-${ovafogrelease}.ova"
deletemode=0 deletemode=0
usage () { usage () {

View File

@ -3,11 +3,11 @@
#mkvm pour toutes les vms #mkvm pour toutes les vms
$mkvmrelease="v1.3.0" $mkvmrelease="v1.3.1"
$ovarelease="2023c" $ovarelease="2023c"
$ovafogrelease="2023b" $ovafogrelease="2024a"
$ovafile="$HOME\Downloads\debian-bookworm-gsb-${ovarelease}.ova" $ovafile="$HOME\Downloads\debian-bookworm-gsb-${ovarelease}.ova"
$ovafilefog="$HOME\Downloads\debian-buster-gsb-${ovafogrelease}.ova" $ovafilefog="$HOME\Downloads\debian-bullseye-gsb-${ovafogrelease}.ova"
$vboxmanage="C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" $vboxmanage="C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
$deletemode=0 $deletemode=0

View File

@ -1,18 +1,22 @@
# Tuto Installation Windows Serveur # Tutoriel d'Installation Windows Serveur
- Une fois l'installation du serveur Windows, renommer le serveur en s-win et installer git. ## Installation Windpws Server 2019
- Installer Serveur DNS et Services AD DS.
- Créer une nouvelle fôret pour le domaine gsb.lan.
- Configurer la zone inverse du DNS.
## Création des dossiers partagés et des utilisateur - Une fois l'installation terminée, renommer le serveur en **s-win** et installer git.
- ajouter les deux cartes réseau adressées conformement aux spécifications
- Installer les services Windows suivants :
- Serveur DNS
- Service AD DS.
- Créer une nouvelle fôret pour le domaine **gsb.lan**.
- Configurer la zone DNS inverse du DNS et l'alimenter avec les enregistrements . souhaités (NS, A pour **s-win**, **s-itil**, ..., PTR pour les précités)
- Lancer mkusr-compta.cmd et mkusr-ventes.cmd sur s-win pour créer les utilisateurs avec leurs droits. ## Création des répertoires partagés et des utilisateurs
- Le fichier gsb-dossiers.cmd permet de créer des dossiers partagés.
- Le fichier mkusr.cmd permet de créer un autre utiliateur avec les mêmes droits que les autres.
## Utilisation des comptes utilisateurs - Lancer les script `mkusr-compta.cmd` et `mkusr-ventes.cmd` sur **s-win** pour créer les utilisateurs avec leurs droits.
- Le script `gsb-dossiers.cmd` permet de créer des dossiers partagés.
- Le script `mkusr.cmd` permet de créer un autre utilisateur avec les mêmes droits que les autres.
- Pour utiliser l'AD du serveur s-win, créer une machine Windows 10 dans le réseau n-user. ## Utilisation des comptes utilisateurs avec AD
- Une fois son adresse IP obtenue (172.16.64.xx) ajouter la machine dans le domaine gsb.lan en utilisant un utiliateur (autre que l'Administrateur). - Pour utiliser l'AD du serveur **s-win**, installer un poste de travail Windows 10 dans le réseau `n-user`.
- Redémarrer puis se connecter avec les identifiants choisis. - Une fois la machine installéee et démarrée, la faire adhérer au domaine **gsb.lan** (Poste de Travail/Nom).
- Redémarrer puis se connecter avec les identifiants de domaine choisis.