Compare commits

...

11 Commits

Author SHA1 Message Date
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
26 changed files with 487 additions and 100 deletions

View File

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

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

@ -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 nagios
***
Rôle Nagios pour la supervision des différentes machines
## Tables des matières
1. [Que fait le rôle Zabbix ?]
## Que fait le rôle Nagios ?
Il permet de configurer les agents zabbix en active.
### 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,6 @@
PidFile: "/run/zabbix/zabbix_agentd.pid"
LogFile: "/var/log/zabbix/zabbix_agentd.log"
LogFileSize: "0"
Server: "127.0.0.1"
ServerActive: "192.168.99.106"
Include: "/etc/zabbix/zabbix_agentd.d/*.conf"

View File

@ -0,0 +1,12 @@
- name: config
template:
src: zabbix_agentd.conf.temp
dest: /etc/zabbix/zabbix_agentd.conf
vars:
PidFile: "{{ PidFile }}"
LogFile: "{{ LogFile }}"
LogFileSize: "{{ LogFileSize }}"
Server: "{{ Server }}"
ServerActive: "{{ ServerActive }}"
Hostname: "{{ ansible_hostname }}"
Include: "{{ Include }}"

View File

@ -0,0 +1,29 @@
- 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/zabbix-release_6.4-1+debian12_all.deb"
- 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
enabled: yes
- name: Rm package
file:
path: "/tmp/zabbix-release_6.4-1+debian12_all.deb"
state: absent

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 nagios
***
Rôle Nagios pour la supervision des différentes machines
## Tables des matières
1. [Que fait le rôle Zabbix ?]
## Que fait le rôle Nagios ?
### 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,78 @@
- 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
shell: zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -ppassword zabbix
- 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
service:
name:
- zabbix-server
- zabbix-agent
- apache2
state: restarted
enabled: yes

View File

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

View File

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

View File

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

View File

@ -7,8 +7,8 @@
- goss
- dns-master
- webautoconf
- snmp-agent
# - syslog-cli
- zabbix-cli
- journald-snd
- ssh-cli
- post

View File

@ -13,7 +13,7 @@
roles:
- base
- goss
- snmp-agent
- zabbix-cli
- glpi
- ssh-cli
# - syslog-cli

View File

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

View File

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

View File

@ -1,12 +1,12 @@
#!/bin/bash
mkvmrelease="v1.3.0"
mkvmrelease="v1.3.1"
ovarelease="2023c"
ovafogrelease="2023b"
ovafogrelease="2024a"
#ovafile="$HOME/Téléchargements/debian-bullseye-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
usage () {

View File

@ -3,11 +3,11 @@
#mkvm pour toutes les vms
$mkvmrelease="v1.3.0"
$mkvmrelease="v1.3.1"
$ovarelease="2023c"
$ovafogrelease="2023b"
$ovafogrelease="2024a"
$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"
$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.
- Installer Serveur DNS et Services AD DS.
- Créer une nouvelle fôret pour le domaine gsb.lan.
- Configurer la zone inverse du DNS.
## Installation Windpws Server 2019
## 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.
- 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.
## Création des répertoires partagés et des utilisateurs
## 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.
- 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).
- Redémarrer puis se connecter avec les identifiants choisis.
## Utilisation des comptes utilisateurs avec AD
- Pour utiliser l'AD du serveur **s-win**, installer un poste de travail Windows 10 dans le réseau `n-user`.
- 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.