Compare commits
4 Commits
v0.0.5c-rr
...
3cc5c7a773
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3cc5c7a773 | ||
|
|
149e630c47 | ||
| d6e080d014 | |||
| 006a4c5f4f |
12
README.md
12
README.md
@@ -1,6 +1,9 @@
|
|||||||
# Projet SDIS29 - 2025 - Groupe 3
|
# Projet SDIS29 - 2025 - Groupe 3
|
||||||
|
**Lastest Update** Version v0.0.5c-rr : le 14/11/24 à 10h40 par Rotsy Rahaingo
|
||||||
|
|
||||||
**Lastest Update** Version v0.0.4c-jp : le 08/11/2024 à 11h10 par Jarod PAUCHET
|
**Oldest Update** Version v0.0.5b-rr : le 14/11/24 à 09h35 par Rotsy Rahaingo
|
||||||
|
|
||||||
|
**Oldest Update** Version v0.0.4c-jp : le 08/11/2024 à 11h10 par Jarod PAUCHET
|
||||||
|
|
||||||
**Oldest Update** Version v0.0.4a-rr : le 08/11/2024 à 10h30 par Rotsy Rahaingo
|
**Oldest Update** Version v0.0.4a-rr : le 08/11/2024 à 10h30 par Rotsy Rahaingo
|
||||||
|
|
||||||
@@ -192,3 +195,10 @@ sudo sed -i "$rpl" /etc/systemd/journal-upload.conf
|
|||||||
sudo systemctl enable --now systemd-journal-upload.service
|
sudo systemctl enable --now systemd-journal-upload.service
|
||||||
sudo systemctl restart systemd-journal-upload.service
|
sudo systemctl restart systemd-journal-upload.service
|
||||||
````
|
````
|
||||||
|
|
||||||
|
## **Etape 6: Automatisation avec ansible**
|
||||||
|
Il est également possible d'installer les serveurs ap33-prod et ap33-test automatiquement grâce à ansible. Comme ces machines sont en production, il sera plus judicieux de le faire sur une machine test. Il faudra donc créer deux autres machines :
|
||||||
|
* **ap33-ans** qui contiendra les différents playbooks
|
||||||
|
* **ap33-pt** sera la machine cible et également la machine test
|
||||||
|
|
||||||
|
Pour avoir plus de détails sur chaque playbook, on peut voir dans le répertoire [ansible](https://gitea.lyc-lecastel.fr/uap33-2025-r/sdis29-3/src/branch/main/ansible).
|
||||||
|
|||||||
BIN
ansible/.wg.yml.swp
Normal file
BIN
ansible/.wg.yml.swp
Normal file
Binary file not shown.
@@ -7,10 +7,7 @@ Ce playbook permet de faire la configuration de base :
|
|||||||
* installation des paquets nécessaires pour la réalisation du projet (tomcat, ant, mariadb-server)
|
* installation des paquets nécessaires pour la réalisation du projet (tomcat, ant, mariadb-server)
|
||||||
* installation du paquet qemu-guest-agent
|
* installation du paquet qemu-guest-agent
|
||||||
|
|
||||||
Pour l'exécuter :
|
Pour l'exécuter : ````ansible-playbook -i hosts apbase.yml````
|
||||||
````
|
|
||||||
ansible-playbook -i hosts apbase.yml
|
|
||||||
````
|
|
||||||
|
|
||||||
### Playbook : apdb.yml
|
### Playbook : apdb.yml
|
||||||
Ce playbook permet de :
|
Ce playbook permet de :
|
||||||
@@ -21,17 +18,11 @@ Ce playbook permet de :
|
|||||||
* importer le fichier sdis29.sql sur la base de données
|
* importer le fichier sdis29.sql sur la base de données
|
||||||
**NB**: Le module **login_unix_socket: /run/mysqld/mysqld.sock** est nécessaire à chaque fois qu'on fait appel à la base de données
|
**NB**: Le module **login_unix_socket: /run/mysqld/mysqld.sock** est nécessaire à chaque fois qu'on fait appel à la base de données
|
||||||
|
|
||||||
Pour l'exécuter :
|
Pour l'exécuter :````ansible-playbook - i hosts apdb.yml````
|
||||||
````
|
|
||||||
ansible-playbook - i hosts apdb.yml
|
|
||||||
````
|
|
||||||
|
|
||||||
### Playbook : apdbdump.yml
|
### Playbook : apdbdump.yml
|
||||||
Ce playbook permet de faire une sauvegarde de la base de données :
|
Ce playbook permet de faire une sauvegarde de la base de données :
|
||||||
* export de la base de données
|
* export de la base de données
|
||||||
* recupération du fichier dump
|
* recupération du fichier dump
|
||||||
|
|
||||||
Pour l'exécuter :
|
Pour l'exécuter : ````ansible-playbook -i hosts apdbdump.yml````
|
||||||
````
|
|
||||||
ansible-playbook -i hosts apdbdump.yml
|
|
||||||
````
|
|
||||||
|
|||||||
@@ -1,2 +1,12 @@
|
|||||||
[pt]
|
[pt]
|
||||||
ap33-pt
|
ap33-pt
|
||||||
|
|
||||||
|
[wg]
|
||||||
|
ap33-mon
|
||||||
|
ap33-prod
|
||||||
|
|
||||||
|
[wg_master]
|
||||||
|
ap33-mon
|
||||||
|
|
||||||
|
[wg_cli]
|
||||||
|
ap33-prod
|
||||||
|
|||||||
65
ansible/mkwgconf.sh
Normal file
65
ansible/mkwgconf.sh
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -u
|
||||||
|
set -e
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
|
AddressAwg=10.0.0.1/24 # Adresse VPN Wireguard extremite A
|
||||||
|
EndpointA=172.16.0.122 # Adresse extremite A
|
||||||
|
PortA=51820 # Port ecoute extremite A
|
||||||
|
AddressBwg=10.0.0.2/24 # Adresse VPN Wireguard extremite B
|
||||||
|
=======
|
||||||
|
AddressAwg=172.16.0.1/24 # Adresse VPN Wireguard extremite A
|
||||||
|
EndpointA=172.16.0.122 # Adresse extremite A
|
||||||
|
PortA=51820 # Port ecoute extremite A
|
||||||
|
AddressBwg=172.16.0.2/24 # Adresse VPN Wireguard extremite B
|
||||||
|
>>>>>>> d6e080d0145615056a7a0eb3d2f9e512809eb4f5
|
||||||
|
EndpointB=172.16.0.121 # Adresse extremite B
|
||||||
|
PortB=51820 # Port ecoute extremite B
|
||||||
|
|
||||||
|
umask 077 ;
|
||||||
|
wg genkey > endpoint-a.key
|
||||||
|
wg pubkey < endpoint-a.key > endpoint-a.pub
|
||||||
|
|
||||||
|
wg genkey > endpoint-b.key
|
||||||
|
wg pubkey < endpoint-b.key > endpoint-b.pub
|
||||||
|
|
||||||
|
PKA=$(cat endpoint-a.key)
|
||||||
|
pKA=$(cat endpoint-a.pub)
|
||||||
|
PKB=$(cat endpoint-b.key)
|
||||||
|
pKB=$(cat endpoint-b.pub)
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
|
cat <<FINI > wg0-1.conf
|
||||||
|
=======
|
||||||
|
cat <<FINI > wg1-a.conf
|
||||||
|
>>>>>>> d6e080d0145615056a7a0eb3d2f9e512809eb4f5
|
||||||
|
# local settings for Endpoint A
|
||||||
|
[Interface]
|
||||||
|
PrivateKey = $PKA
|
||||||
|
Address = $AddressAwg
|
||||||
|
ListenPort = $PortA
|
||||||
|
|
||||||
|
# remote settings for Endpoint B
|
||||||
|
[Peer]
|
||||||
|
PublicKey = $pKB
|
||||||
|
Endpoint = ${EndpointB}:$PortB
|
||||||
|
AllowedIPs = $AddressBwg
|
||||||
|
FINI
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
|
cat <<FINI > wg0-2.conf
|
||||||
|
=======
|
||||||
|
cat <<FINI > wg1-b.conf
|
||||||
|
>>>>>>> d6e080d0145615056a7a0eb3d2f9e512809eb4f5
|
||||||
|
# local settings for Endpoint B
|
||||||
|
[Interface]
|
||||||
|
PrivateKey = $PKB
|
||||||
|
Address = $AddressBwg
|
||||||
|
ListenPort = $PortB
|
||||||
|
|
||||||
|
# remote settings for Endpoint A
|
||||||
|
[Peer]
|
||||||
|
PublicKey = $pKA
|
||||||
|
Endpoint = ${EndpointA}:$PortA
|
||||||
|
AllowedIPs = $AddressAwg
|
||||||
|
FINI
|
||||||
90
ansible/wg.yml
Normal file
90
ansible/wg.yml
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
---
|
||||||
|
- hosts: wg
|
||||||
|
<<<<<<< HEAD
|
||||||
|
become: yes
|
||||||
|
tasks:
|
||||||
|
- name: arrete unattended-upgrades
|
||||||
|
service:
|
||||||
|
name: unattended-upgrades
|
||||||
|
state: stopped
|
||||||
|
|
||||||
|
- name: installe Wireguard
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- wireguard
|
||||||
|
- wireguard-tools
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- hosts: wg_master
|
||||||
|
tasks:
|
||||||
|
- name: copie le fichier wg0-1.conf et wg0-2.conf vers les machines master et cli
|
||||||
|
copy:
|
||||||
|
src: mkwgconf.sh
|
||||||
|
dest: mkwgconf.sh
|
||||||
|
|
||||||
|
- name: generations fichier configuration wireguard wg0-1.conf etc
|
||||||
|
shell: bash mkwgconf.sh
|
||||||
|
|
||||||
|
- name: récupération du fichier wg0-1.conf vers ap33-ans
|
||||||
|
fetch:
|
||||||
|
src: wg0-1.conf
|
||||||
|
dest: wg0-1.conf
|
||||||
|
flat: yes
|
||||||
|
|
||||||
|
- name: récupération du fichier wg0-2.conf vers ap33-ans
|
||||||
|
fetch:
|
||||||
|
src: wg0-2.conf
|
||||||
|
dest: wg0-2.conf
|
||||||
|
flat: yes
|
||||||
|
|
||||||
|
- hosts: wg
|
||||||
|
become: yes
|
||||||
|
tasks:
|
||||||
|
- name: copie fichier wg0-1 vers les clients
|
||||||
|
copy:
|
||||||
|
src: wg0-1.conf
|
||||||
|
dest: /etc/wireguard/wg0.conf
|
||||||
|
when: ansible_hostname == "ap33-mon"
|
||||||
|
|
||||||
|
- name: copie fichier wg0-2 vers les clients
|
||||||
|
copy:
|
||||||
|
src: wg0-2.conf
|
||||||
|
dest: /etc/wireguard/wg0.conf
|
||||||
|
when: ansible_hostname == "ap33-prod"
|
||||||
|
|
||||||
|
- hosts: wg
|
||||||
|
become: yes
|
||||||
|
tasks:
|
||||||
|
- name: Activation de wireguard
|
||||||
|
service:
|
||||||
|
name: wg-quick@wg0.service
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: Redémarre le wireguard
|
||||||
|
service:
|
||||||
|
name: wg-quick@wg0.service
|
||||||
|
state: restarted
|
||||||
|
=======
|
||||||
|
tasks:
|
||||||
|
- name: installe Wireguard
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- wireguard
|
||||||
|
- wireguard-tools
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- hosts: wg-master
|
||||||
|
tasks:
|
||||||
|
- name: copie le fichier wg1-a.conf et wg1-b.conf vers les machines master et cli
|
||||||
|
copy:
|
||||||
|
src: mkwgconf.sh
|
||||||
|
dest: mkwgconf.sh
|
||||||
|
flat: yes
|
||||||
|
- name: generations fichier configuration wireguard wg0-1.conf etc
|
||||||
|
shell: bash mkwgconf.sh
|
||||||
|
|
||||||
|
- hosts: wg-cli
|
||||||
|
tasks:
|
||||||
|
- name: copie fichier
|
||||||
|
|
||||||
|
>>>>>>> d6e080d0145615056a7a0eb3d2f9e512809eb4f5
|
||||||
Reference in New Issue
Block a user