Compare commits

..

10 Commits

Author SHA1 Message Date
f9e48e7614 création ferm2.conf 2023-02-03 09:18:11 +01:00
16d22619bf typo 2023-02-02 22:34:47 +01:00
3fc572ca72 maj README 2023-02-02 22:32:43 +01:00
da25a9dda0 modif README 2023-02-02 11:56:36 +01:00
0af1984a3f Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-02-02 11:53:32 +01:00
fef6b25101 modif readme 2023-02-02 11:52:11 +01:00
797b65ef56 goss pour s-elk 2023-02-02 11:52:10 +01:00
e3694bb917 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-02-02 11:48:01 +01:00
e9b0ad453b filebeat metricbeat bonne version et instdepl aussi 2023-02-02 11:26:00 +01:00
559566e1d1 montage nfs marche stp 2023-02-02 11:25:32 +01:00
13 changed files with 149 additions and 41 deletions

View File

@ -1,6 +1,6 @@
# gsb2023 # gsb2023
2023-02-01 ps 2023-02-02 ps
Environnement et playbooks ansible pour le projet GSB 2023 Environnement et playbooks ansible pour le projet GSB 2023
@ -59,9 +59,9 @@ $ 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.
* utiliser le script de renommage comme suit --> bash chname [nouveau_nom_de_machine] puis redémarrer * utiliser le script de renommage comme suit --> `bash chname <nouveau_nom_de_machine>` , puis redémarrer
* utiliser le script s-adm-start --> bash s-adm-start, redémarrer * utiliser le script **s-adm-start** : `bash s-adm-start` , puis redémarrer
* ou sinon : * ou sinon :
```shell ```shell
mkdir -p tools/ansible ; cd tools/ansible mkdir -p tools/ansible ; cd tools/ansible
@ -79,9 +79,9 @@ $ mkvm -r s-adm
### Pour chaque machine ### Pour chaque machine
- 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] - utiliser le script de renommage comme suit : `bash chname <nouveau_nom_de_machine>`
- redémarrer - redémarrer
- 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
@ -94,3 +94,16 @@ bash pull-config
``` ```
- 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
## Les tests
Il peuvent êtres mis en oeuvre avec **goss** de la façon suivante : chaque machine installée dispose d'un fichier de test ad-hoc portant le nom de la machine elle-même (machine.yml).
```
cd tools/ansible/gsb2023
bash agoss # lance le test portant le nom de la machine
```
`bash agoss -f tap` permet de lancer le test avec le détail d'exécution

26
goss/s-elk.yaml Normal file
View File

@ -0,0 +1,26 @@
port:
tcp:5044:
listening: true
ip:
- 0.0.0.0
tcp:5601:
listening: true
ip:
- 0.0.0.0
tcp:9200:
listening: true
ip:
- 0.0.0.0
service:
docker:
enabled: true
running: true
interface:
enp0s3:
exists: true
addrs:
- 192.168.99.11/24
enp0s8:
exists: true
addrs:
- 172.16.0.11/24

View File

@ -45,7 +45,9 @@ str6="curl -L https://github.com/aelsabbahy/goss/releases/download/${GOSSVER}/go
#str8="wget -nc 'https://gestsup.fr/index.php?page=download&channel=stable&version=${GESTSUPREL}&type=gestsup' -O gestsup_${GESTSUPREL}.zip" #str8="wget -nc 'https://gestsup.fr/index.php?page=download&channel=stable&version=${GESTSUPREL}&type=gestsup' -O gestsup_${GESTSUPREL}.zip"
str8="wget -nc 'https://gestsup.fr/index.php?page=download&channel=stable&version=3.2.30&type=gestsup' -O gestsup_3.2.30.zip" str8="wget -nc 'https://gestsup.fr/index.php?page=download&channel=stable&version=3.2.30&type=gestsup' -O gestsup_3.2.30.zip"
ELKREL=8.6.0
#METRICBEAT ET FILEBEAT
ELKREL=8.5.3
str81="wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-${ELKREL}-amd64.deb" str81="wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-${ELKREL}-amd64.deb"
str82="wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-${ELKREL}-windows-x86_64.zip" str82="wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-${ELKREL}-windows-x86_64.zip"

View File

@ -0,0 +1 @@
BEATVER: "8.5.3"

View File

@ -1,4 +1,4 @@
- name: start filebeat - name: restart filebeat
service: service:
name: filebeat name: filebeat
state: started state: started

View File

@ -1,12 +1,12 @@
--- ---
- name: Récupération de filebeat - name: Récupération de filebeat
get_url: get_url:
url: http://s-adm.gsb.adm/gsbstore/filebeat-7.16.3-amd64.deb url: http://s-adm.gsb.adm/gsbstore/filebeat-${BEATVAR}-amd64.deb
dest: /tmp/ dest: /tmp/
- name: Installation de filebeat - name: Installation de filebeat
apt: apt:
deb: /tmp/filebeat-7.16.3-amd64.deb deb: /tmp/filebeat-${BEATVEAR}-amd64.deb
- name: Changement du fichier de conf - name: Changement du fichier de conf
copy: copy:
@ -15,9 +15,9 @@
- name: Configuration de filebeat - name: Configuration de filebeat
shell: filebeat modules enable system shell: filebeat modules enable system
notify: start filebeat notify: restart filebeat
- name: Lancement de la configuration de filebeat - name: Lancement de la configuration de filebeat
shell: filebeat setup -e shell: filebeat setup -e
notify: start filebeat notify: restart filebeat

View File

@ -1,11 +1,16 @@
# Fog # Fog
Ce rôle permet l'installation et la modification de Fog. Ce rôle permet l'installation et la modification de Fog.
## Fog, c'est quoi ? ## Fog, c'est quoi ?
Fog permet le déploiement d'images disque tel que Windows ou bien Linux en utilisant PXE (Preboot Execution Environment). Fog permet le déploiement d'images disque tel que Windows ou bien Linux en utilisant PXE (Preboot Execution Environment).
## Comment l'installer ? ## Comment l'installer ?
Avant toute chose, lancer le fichier goss de s-fog ( présent dans gsb2023/goss/s-fog.yaml ) pour vérifier que la configuration réseau est correct et opérationel. Une fois l'installation principal effectué, il faut lancé le playbook ansible s-fog.yaml.
Il faudra se rendre dans le dossier **fog** pour lancer le script **installfog.sh** ( fog/bin/ ). La configuration sera déjà établi via le fichier **.fogsettings** Avant toute chose, lancer le fichier goss de s-fog ( présent dans gsb2023/goss/s-fog.yaml ) pour vérifier que la configuration réseau est correct et opérationnel. Une fois l'installation principale effectuée, il faut lancer le playbook ansible s-fog.yaml.
Il faudra se rendre dans le dossier **fog** pour lancer le script **installfog.sh** ( fog/bin/ ). La configuration sera déjà établie via le fichier **.fogsettings**

View File

@ -0,0 +1,47 @@
# -*- shell-script -*-
@def $DEV_VPN= wg0;
table filter {
chain INPUT {
policy DROP;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# allow local connections
interface lo ACCEPT;
interface $DEV_VPN{
# respond to ping
proto icmp icmp-type echo-request ACCEPT;
# disallow ssh
saddr proto tcp dport ssh DROP;
}
}#FIN INPUT
# outgoing connections are not limited
chain OUTPUT {
policy ACCEPT;
interface $DEV_VPN{
# allow ssh
daddr proto tcp dport ssh ACCEPT;
# respond to ping
proto icmp icmp-type echo-request ACCEPT;
}
}#FIN OUTPUT
chain FORWARD {
policy ACCEPT;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# connections from the internal net to the internet or to other
# internal nets are allowed
interface $DEV_VPN ACCEPT;
# the rest is dropped by the above policy
}#FIN FO
}

View File

@ -20,9 +20,9 @@
block: | block: |
192.168.102.253:/home/wordpress /var/www/html nfs soft,timeo=5,intr,rsize=8192,wsize=8192,wsize=8192 0 0 192.168.102.253:/home/wordpress /var/www/html nfs soft,timeo=5,intr,rsize=8192,wsize=8192,wsize=8192 0 0
- name: monte export wordpress #- name: monte export wordpress
ansible.posix.mount: # ansible.posix.mount:
path: /var/www/html # path: /var/www/html
state: mounted # state: mounted
fstype: nfs # fstype: nfs
src: 192.168.102.253:/exports/wordpress # src: 192.168.102.253:/exports/wordpress

View File

@ -0,0 +1 @@
BEATVER: "8.5.3"

View File

@ -1,5 +1,5 @@
- name: start metricbeat - name: restart metricbeat
service: service:
name: metricbeat name: metricbeat
state: started state: restarted
enabled: yes enabled: yes

View File

@ -1,12 +1,12 @@
--- ---
- name: Récupération de metricbeat - name: Récupération de metricbeat
get_url: get_url:
url: http://s-adm.gsb.adm/gsbstore/metricbeat-7.16.3-amd64.deb url: http://s-adm.gsb.adm/gsbstore/metricbeat-${BEATVER}-amd64.deb
dest: /tmp/ dest: /tmp/
- name: Installation de metricbeat - name: Installation de metricbeat
apt: apt:
deb: /tmp/metricbeat-7.16.3-amd64.deb deb: /tmp/metricbeat-${BEATVER}-amd64.deb
- name: Changement du fichier de conf - name: Changement du fichier de conf
copy: copy:
@ -15,9 +15,9 @@
- name: Configuration de metricbeat - name: Configuration de metricbeat
shell: metricbeat modules enable system shell: metricbeat modules enable system
notify: start metricbeat notify: restart metricbeat
- name: Lancement de la configuration de metricbeat - name: Lancement de la configuration de metricbeat
shell: metricbeat setup -e shell: metricbeat setup -e
notify: start metricbeat notify: restart metricbeat

View File

@ -1,19 +1,32 @@
Procédure d'installation de **r-vp1** et de copie du fichier wg0-b.conf.
# <p align="center">Procédure d'installation </p>
de **r-vp1** et de copie du fichier wg0-b.conf.
*** ***
## Sur **r-vp1**:
Attendre la fin de l'installation. Ensuite lancer un serveur http avec python3 pour récuperer le fichier wg0-b.conf sur **r-vp2** .
### 🛠️ Lancer le script
```bash
cd /tools/ansible/gsb2023/Scripts
```
```bash
bash r-vp1-post.sh
```
## Sur **r-vp2**:
Depuis **r-vp1** se deplacer dans le repertoire **/tools/ansible/gsb2023** pour executer le playbook: Lancer le script r-vp2-post.sh pour récuperer le fichier de configuration et activer l'interface wg0.
**"ansible-playbook -i localhost, -c local r-vp1.yml"** puis reboot **r-vp1**. ### 🛠️ Lancer le script
```bash
cd /tools/ansible/gsb2023/Scripts
Sur **r-vp1**: ```
```bash
Attendre la fin de l'installation. Ensuite lancer un serveur http avec python3 pour récuperer le fichier bash r-vp2-post.sh
wg0-b.conf sur **r-vp2** . Lancer le script **r-vp1-post.sh** dans **/tools/ansible/gsb2023/Scripts**. ```
## Fin
Sur **r-vp2**:
Lancer le script r-vp2-post.sh dans **/tools/ansible/gsb2023/Scripts** pour recuperer wg0-b.conf
et qui renomme le fichier en **wg0.conf** . Il redémarre et active le service **wg-quick@wg0**.
redemarer les machines
```bash
reboot
```