Modifications apportées aux fichiers goss.yaml concernant l'agent Zabbix, et ajout de preuves au README.

This commit is contained in:
Guillaume Emorine 2024-11-15 09:10:51 +01:00
parent 0f39e57f84
commit 6c487604d1
3 changed files with 87 additions and 8 deletions

View File

@ -1,7 +1,7 @@
# sdis29-1 # sdis29-1
## Dépôt Git des programmes sources - SDIS 29. ## Dépôt Git des programmes sources - SDIS 29.
Version: v.0.0.2d-ge Version: v.0.0.2e-ge
Plage d'adresses: 172.16.0.100/24-172.16.0.105/24 Plage d'adresses: 172.16.0.100/24-172.16.0.105/24
@ -25,6 +25,20 @@ Plage d'adresses: 172.16.0.100/24-172.16.0.105/24
* **ap31-mon** : apache2, mariadb-server, zabbix-server-mysql, zabbix-frontend-php, zabbix-apache-conf, zabbix-sql-scripts, zabbix-agent, journald-remote * **ap31-mon** : apache2, mariadb-server, zabbix-server-mysql, zabbix-frontend-php, zabbix-apache-conf, zabbix-sql-scripts, zabbix-agent, journald-remote
* Ajout de goss sur **ap31-test** et **ap31-prod**, et création de fichiers de test fonctionnels pour les deux machines. * Ajout de goss sur **ap31-test** et **ap31-prod**, et création de fichiers de test fonctionnels pour les deux machines.
### Résultats des tests Goss :
debian@ap31-test:~$ goss v
.....................................
Total Duration: 0.115s
Count: 37, Failed: 0, Skipped: 0
debian@ap31-prod:~$ goss v
......................................
Total Duration: 0.244s
Count: 38, Failed: 0, Skipped: 0
### Configuration de Zabbix : ### Configuration de Zabbix :
* Pour **ap31-mon**, installation de Zabbix avec un script, et configuration initiale de Zabbix via l'interface web. * Pour **ap31-mon**, installation de Zabbix avec un script, et configuration initiale de Zabbix via l'interface web.
@ -45,6 +59,18 @@ Plage d'adresses: 172.16.0.100/24-172.16.0.105/24
* Import du fichier `sdis29.sql` sur MariaDB sur la machine **ap31-test**. * Import du fichier `sdis29.sql` sur MariaDB sur la machine **ap31-test**.
* Une fois fait, base de données disponible sur la machine et visible sur phpmyadmin une fois les privilèges requis donnés au compte. * Une fois fait, base de données disponible sur la machine et visible sur phpmyadmin une fois les privilèges requis donnés au compte.
### Preuve de la présence de la base de données :
* Sur **ap31-test** :
MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| sdis29 |
+--------------------+
2 rows in set (0.064 sec)
### Création de playbooks Ansible pour **ap31-prod** et **ap31-test** : ### Création de playbooks Ansible pour **ap31-prod** et **ap31-test** :
* Création du *playbook* `apbase.yml` qui prépare les machines **ap31-prod** et **ap31-test** en installant les paquets nécessaires, en configurant le proxy pour *APT*, et en définissant la *timezone*. * Création du *playbook* `apbase.yml` qui prépare les machines **ap31-prod** et **ap31-test** en installant les paquets nécessaires, en configurant le proxy pour *APT*, et en définissant la *timezone*.
@ -59,6 +85,40 @@ Plage d'adresses: 172.16.0.100/24-172.16.0.105/24
* Une fois cela fait, et le tunnel fonctionnel, la centralisation des logs peut se faire via le tunnel Wireguard en modifiant le fichier de configuration dans `/etc/systemd/journal-upload.conf`. Les IPs des fichiers de configuration sont donc modifiées pour fonctionner. * Une fois cela fait, et le tunnel fonctionnel, la centralisation des logs peut se faire via le tunnel Wireguard en modifiant le fichier de configuration dans `/etc/systemd/journal-upload.conf`. Les IPs des fichiers de configuration sont donc modifiées pour fonctionner.
* Pour plus de détails, se rendre dans le dossier `ansible`, puis le répertoire `wireguard`. * Pour plus de détails, se rendre dans le dossier `ansible`, puis le répertoire `wireguard`.
### Preuve de fonctionnement du VPN :
* **ap31-mon** :
debian@ap31-mon:~$ sudo wg
interface: wg0
public key: LEkM9UVt21zq7PS8sX+SBihuXr5k9bjAbwSN0dChmAk=
private key: (hidden)
listening port: 51820
peer: mnWYL52q8bzvvary6s81ROHV1hohu3nlQN0YQkTZTzg=
endpoint: 172.16.0.100:51820
allowed ips: 10.0.0.2/32
latest handshake: 1 minute, 22 seconds ago
transfer: 1.14 MiB received, 83.45 KiB sent
peer: Amfx3tgY9WyjhVH8gQJWZpbQVNYwpIt3OFZokMqq43M=
endpoint: 172.16.0.101:51820
allowed ips: 10.0.0.3/32
latest handshake: 12 minutes, 33 seconds ago
transfer: 1003.38 KiB received, 92.08 KiB sent
* **ap31-prod** :
debian@ap31-prod:~$ sudo wg
interface: wg0
public key: mnWYL52q8bzvvary6s81ROHV1hohu3nlQN0YQkTZTzg=
private key: (hidden)
listening port: 51820
peer: LEkM9UVt21zq7PS8sX+SBihuXr5k9bjAbwSN0dChmAk=
endpoint: 172.16.0.102:51820
allowed ips: 10.0.0.1/32
latest handshake: 1 minute, 8 seconds ago
transfer: 39.30 KiB received, 250.64 KiB sent
### Preuve de fonctionnement du VPN pour les logs : ### Preuve de fonctionnement du VPN pour les logs :
* Si on lance une commande `logger` avec un message lorsque le service Wireguard est fonctionnel, celui-ci apparaît sur **ap31-mon** : `Nov 15 08:20:06 ap31-prod debian[597]: test vpn` * Si on lance une commande `logger` avec un message lorsque le service Wireguard est fonctionnel, celui-ci apparaît sur **ap31-mon** : `Nov 15 08:20:06 ap31-prod debian[597]: test vpn`

8
goss/goss_ap31-prod.yaml Executable file → Normal file
View File

@ -12,10 +12,10 @@ package:
installed: true installed: true
versions: versions:
- 10.1.6-1+deb12u2 - 10.1.6-1+deb12u2
zabbix-agent: zabbix-agent2:
installed: true installed: true
versions: versions:
- 1:6.0.14+dfsg-1+b1 - 1:7.0.5-1+debian12
service: service:
mariadb: mariadb:
enabled: true enabled: true
@ -32,7 +32,7 @@ service:
tomcat10: tomcat10:
enabled: true enabled: true
running: true running: true
zabbix-agent: zabbix-agent2:
enabled: true enabled: true
running: true running: true
user: user:
@ -66,4 +66,4 @@ http:
no-follow-redirects: false no-follow-redirects: false
timeout: 5000 timeout: 5000
body: body:
- Apache Tomcat # Le motif que Goss cherche - Apache Tomcat

View File

@ -16,10 +16,10 @@ package:
installed: true installed: true
versions: versions:
- 10.1.6-1+deb12u2 - 10.1.6-1+deb12u2
zabbix-agent: zabbix-agent2:
installed: true installed: true
versions: versions:
- 1:6.0.14+dfsg-1+b1 - 1:7.0.5-1+debian12
service: service:
mariadb: mariadb:
enabled: true enabled: true
@ -36,7 +36,7 @@ service:
tomcat10: tomcat10:
enabled: true enabled: true
running: true running: true
zabbix-agent: zabbix-agent2:
enabled: true enabled: true
running: true running: true
user: user:
@ -66,6 +66,25 @@ interface:
- 172.16.0.101/24 - 172.16.0.101/24
- fe80::be24:11ff:fe8d:7f30/64 - fe80::be24:11ff:fe8d:7f30/64
mtu: 1500 mtu: 1500
http:
http://172.16.0.101:8080:
status: 200
allow-insecure: false
no-follow-redirects: false
timeout: 5000
body:
- Apache Tomcat
- 10.121.38.7
timeout: 500
server: 10.121.38.8
interface:
eth0:
exists: true
addrs:
- 172.16.0.101/24
- fe80::be24:11ff:fe8d:7f30/64
mtu: 1500
http: http:
http://172.16.0.101:8080: http://172.16.0.101:8080:
status: 200 status: 200