6 Commits

Author SHA1 Message Date
Adam Alphonso
6442aa8cc3 supprimé : ansible/apbase.yml
supprimé :        ansible/apdb.yml
2024-11-15 11:55:08 +01:00
7642dbb831 Actualiser ap32-test/journalisation/journald-snd.sh 2024-11-15 11:53:06 +01:00
90f775ad11 Actualiser ap32-prod/journalisation/journald-snd.sh 2024-11-15 11:52:52 +01:00
4fac1f20d7 Actualiser ansible/wireguard/README.md 2024-11-15 11:47:30 +01:00
a6d4a6929c Actualiser README.md 2024-11-15 11:45:40 +01:00
2856a2dbc0 Actualiser ansible/wireguard/README.md 2024-11-15 11:22:09 +01:00
6 changed files with 30 additions and 89 deletions

View File

@@ -6,15 +6,18 @@
* **ap32-test** : Serveur web permettant aussi d'effectuer des phases de tests durant le projet avant de l'implémenter sur le serveur **ap32-prod**. * **ap32-test** : Serveur web permettant aussi d'effectuer des phases de tests durant le projet avant de l'implémenter sur le serveur **ap32-prod**.
* **ap32-prod** : Serveur web final. * **ap32-prod** : Serveur web final.
* **ap32-mon** : Serveur de supervision (monitoring) jouant un rôle crucial dans l'administration et la continuité de nos opérations. * **ap32-mon** : Serveur de supervision (monitoring) jouant un rôle crucial dans l'administration et la continuité de nos opérations.
* **ap32-ans** : Serveur Ansible et Wireguard contenant les playbooks pour la base de données et le déploiement de WireGuard.
* **ap32-pt** : Machine de test pour le déploiement des playbook Ansible.
--- ---
### Création initiale des serveurs : ### Création initiale des serveurs :
* Création des serveurs **ap32-prod**, **ap32-test** et **ap32-mon** via un clone intégral de la template Debian-12.7-Template sur pxlab2. * Création des serveurs **ap32-prod**, **ap32-test**, **ap32-mon**, **ap32-ans** et **ap32-pt** via un clone intégral de la template Debian-12.7-Template sur pxlab2.
* Définition des IDs : 2610 pour **ap32-prod**, 2611 pour **ap32-test** et 2612 pour **ap32-mon**. * Définition des IDs : 2610 pour **ap32-prod**, 2611 pour **ap32-test**, 2612 pour **ap32-mon**, 2614 pour **ap32-ans**, 2615 pour **ap32-pt**.
* Ajout d'étiquettes ap32 pour une meilleure gestion du projet. * Ajout d'étiquettes ap32 pour une meilleure gestion du projet.
* Disques redimensionnés de 2Go à 12Go. * Disques redimensionnés de 2Go à 12Go.
* Définition des adresses IP : 172.16.0.110/24 pour **ap32-prod**, 172.16.0.111/24 pour **ap32-test** et 172.16.0.112/24 pour **ap32-mon**. * Définition des adresses IP : 172.16.0.110/24 pour **ap32-prod**, 172.16.0.111/24 pour **ap32-test** 172.16.0.112/24 pour **ap32-mon**, pour **ap32-ans**, 172.16.0.114/24 et pour **ap32-pt**, 172.16.0.115/24.
* Ajout de nos clés publiques SSH (id-rsa.pub) de nos machines physiques dans les serveurs ap32 grâce à cloud-init. * Ajout de nos clés publiques SSH (id-rsa.pub) de nos machines physiques dans les serveurs ap32 grâce à cloud-init.
* Regénération des images cloud-init avant le démarrage les serveurs. * Regénération des images cloud-init avant le démarrage les serveurs.
--- ---
@@ -27,4 +30,4 @@
* La commande `apt update && apt upgrade -y` ensuite effectuée sur chacun des machines pour mettre à jour la liste des paquets et installe toutes les mises à jour disponibles automatiquement. * La commande `apt update && apt upgrade -y` ensuite effectuée sur chacun des machines pour mettre à jour la liste des paquets et installe toutes les mises à jour disponibles automatiquement.
* La commande `apt install qemu-guest-agent -y` effectuée sur l'ensemble des machines permet de faciliter la communication entre la VM et Proxmox. * La commande `apt install qemu-guest-agent -y` effectuée sur l'ensemble des machines permet de faciliter la communication entre la VM et Proxmox.
Modification : Adam Alphonso

View File

@@ -1,4 +1,4 @@
## Établissement d'un tunnel VPN entre les machines ap31-mon, ap31-prod et ap31-test : ## Établissement d'un tunnel VPN entre les machines ap32-mon, ap32-prod et ap32-test :
--- ---
* Création d'un playbook wg.yml qui se chargera d'installer Wireguard et ses outils sur les trois machines, puis qui exécute un script modifié pour générer les clés et les fichiers de configuration. * Création d'un playbook wg.yml qui se chargera d'installer Wireguard et ses outils sur les trois machines, puis qui exécute un script modifié pour générer les clés et les fichiers de configuration.
* Il suffit d'éxécuté le playbook wg.yml et le tunnel entre ap32-mon ap32-test et ap32-prod estfonctionnel, la centralisation des logs va se faire via le tunnel Wireguard en modifiant le fichier de configuration dans /etc/systemd/journal-upload.conf, dans ce fichier il faut modifier l'Ip qui redirigent les logs et mettre les Ips des interfaces du Vpn (dans le réseau 10.0.0.0/32). * Il suffit d'éxécuté le playbook wg.yml et le tunnel entre ap32-mon ap32-test et ap32-prod estfonctionnel, la centralisation des logs va se faire via le tunnel Wireguard en modifiant le fichier de configuration dans /etc/systemd/journal-upload.conf, dans ce fichier il faut modifier l'Ip qui redirigent les logs et mettre les Ips des interfaces du Vpn (dans le réseau 10.0.0.0/32).
@@ -9,22 +9,29 @@
```` ````
ap32-mon : ap32-mon :
debian@ap32-mon:~$ sudo wg interface: debian@ap32-mon:~$ sudo wg
public key: WX9p5InAokmjc7nno+ch8F8Qoa6OnKARbk4HOJyxMQM= public key: 8Mo+pfjCRP+HqE2MM5b9jHudBcTdPktd7pOCvfdk8Qs=
private key: (hidden) private key: (hidden)
listening port: 51820 listening port: 51820
peer: mnWYL52q8bzvvary6s81ROHV1hohu3nlQN0YQkTZTzg= peer: hjWFTzNbAMfNlETuO2qkdNOZnRQ24hkxN/1onfMJ2TA=
endpoint: 172.16.0.110:51820 endpoint: 172.16.0.111:51820
allowed ips: 10.0.0.2/32 allowed ips: 10.0.0.2/32
latest handshake: 2 seconds ago
transfer: 123.32 KiB received, 37.34 KiB sent
peer: Amfx3tgY9WyjhVH8gQJWZpbQVNYwpIt3OFZokMqq43M= peer: aVqH5DwDiGQFXqbVbBFVF8HTcd/pIGHXnEOjBSPbklY=
endpoint: 172.16.0.111:51820 endpoint: 172.16.0.110:51820
allowed ips: 10.0.0.3/32 allowed ips: (none)
latest handshake: 21 seconds ago
transfer: 1.23 KiB received, 1.41 KiB sent
peer: uyamrEFfja1bJh1StqsKk+tRSElIThWlqTO6MlOYGho=
endpoint: 10.121.38.35:57017
allowed ips: 10.0.0.3/32
latest handshake: 14 minutes, 8 seconds ago
transfer: 468 B received, 348 B sent
debian@ap32-mon:~$ ip a:
10: wg0:
inet 10.0.0.1/32 scope global wg0
```` ````

View File

@@ -1,31 +0,0 @@
---
- hosts: all
become: true
tasks:
- name: Parametrage Timezone Europe/Paris
community.general.timezone:
name: Europe/Paris
- name: Copie apt.conf
copy:
content: |
Acquire::http::Proxy "http://10.121.38.1:8080";
Acquire::https::Proxy "http://10.121.38.1:8080";
dest: /etc/apt/apt.conf
- name: Update and upgrade apt packages
apt:
upgrade: yes
update_cache: yes
cache_valid_time: 86400 #One day
- name: Installation paquets
apt:
name: "{{ item }}"
with_items:
- tomcat10
- mariadb-server
- ant
- qemu-guest-agent

View File

@@ -1,38 +0,0 @@
---
- hosts: all
become: true
tasks:
- name: installation extensions python
apt:
name: python3-pymysql
state: present
- name: Create a new database
community.mysql.mysql_db:
name: sdis29
state: present
login_unix_socket: /run/mysqld/mysqld.sock
- name: Create a new user
community.mysql.mysql_user:
name: admin
password: Azerty1+
priv: 'sdis29.*:ALL'
state: present
login_unix_socket: /run/mysqld/mysqld.sock
- name:
copy:
src: sdis29.sql
dest: /tmp/
- name: Import database
community.mysql.mysql_db:
name: sdis29
state: import
target: /tmp/sdis29.sql
login_unix_socket: /run/mysqld/mysqld.sock

View File

@@ -2,7 +2,7 @@
sudo timedatectl set-timezone Europe/Paris sudo timedatectl set-timezone Europe/Paris
sudo apt-get update sudo apt-get update
sudo apt-get install -y systemd-journal-remote sudo apt-get install -y systemd-journal-remote
rpl="s/^# URL=/URL=http:\/\/ap32-mon:19532/" rpl="s/^# URL=/URL=http:\/\/10.0.0.1:19532/"
sudo sed -i "$rpl" /etc/systemd/journal-upload.conf 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

View File

@@ -2,7 +2,7 @@
sudo timedatectl set-timezone Europe/Paris sudo timedatectl set-timezone Europe/Paris
sudo apt-get update sudo apt-get update
sudo apt-get install -y systemd-journal-remote sudo apt-get install -y systemd-journal-remote
rpl="s/^# URL=/URL=http:\/\/ap32-mon:19532/" rpl="s/^# URL=/URL=http:\/\/10.0.0.1:19532/"
sudo sed -i "$rpl" /etc/systemd/journal-upload.conf 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