Compare commits

..

28 Commits

Author SHA1 Message Date
edbce48966 correc2 2023-01-25 11:02:49 +01:00
56f3780480 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-01-25 10:45:47 +01:00
5eae26a67c correction roles lb 2023-01-25 10:45:36 +01:00
7711d023e8 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-01-25 10:43:19 +01:00
1777bec595 mise a jour 2023-01-25 10:43:14 +01:00
12621bb60a ajout readme 2023-01-25 10:28:22 +01:00
592843932c modif doc README 2023-01-25 00:23:46 +01:00
abfe277180 script s-backup backup.sh trap 2023-01-24 10:49:32 +01:00
c2eb2b85a4 correction script gsb partage 2023-01-24 10:13:40 +01:00
c20f44ec6e mkusr-backup windows 2023-01-24 09:34:23 +01:00
0c7d48caf3 Merge branch 'main' of https://gitea.lyc-lecastel.fr/gadmin/gsb2023 2023-01-24 09:23:40 +01:00
12de1c8891 commenter erreur 2023-01-24 09:23:21 +01:00
5fffbc77e2 ajout echo pour ping 2023-01-24 08:50:27 +01:00
b1e87cdd1e modification ping infra 2023-01-23 11:32:54 +01:00
7f7207cf46 ortho 2023-01-21 17:37:36 +01:00
1187a5e28d doc... 2023-01-21 17:36:02 +01:00
8cef3cbf6b doc ... 2023-01-21 17:08:20 +01:00
49ca8325e8 doc ... 2023-01-21 16:57:44 +01:00
08973e83b3 doc role nxc-traefik 2023-01-21 16:44:56 +01:00
79c7bd34e6 Maj lb-front 2023-01-20 09:46:08 +01:00
0cd9f1bb4c Correction fichier interface 2023-01-20 09:38:46 +01:00
4dd5b711e2 nettoyage 2023-01-20 09:15:54 +01:00
f4361d9ecb maj doc 2023-01-19 12:48:44 +01:00
5d767a195d maj doc 2023-01-19 12:46:32 +01:00
7092ed5963 maj doc .md 2023-01-19 12:36:35 +01:00
a508e7e65c reorganisation 2023-01-19 00:03:47 +01:00
da5011466b nettoyage, maj doc, README 2023-01-19 00:02:58 +01:00
e395c14752 modif mkvm 2023-01-18 23:24:33 +01:00
84 changed files with 419 additions and 202 deletions

View File

@ -1,22 +1,40 @@
# gsb2023
2023-01-06
2023-01-25 ps
Environnement et playbooks ansible pour le projet GSB 2023
## Quickstart
prérequis :
Prérequis :
* une machine Debian Bullseye
* VirtualBox
* fichier machines viruelles **ova** :
* **debian-bullseye-gsb-2023a.ova**
* **debian-buster-gsb-2023a.ova**
## Les machines
* s-adm
* s-infra
* r-int
* r-ext
* s-proxy
* **s-adm** : routeur adm, DHCP + NAT, deploiement, proxy squid
* **s-infra** : DNS maitre, autoconfiguration navigateurs avec **wpad**
* **r-int** : routage, DHCP
* **r-ext** : routage, NAT
* **s-proxy** : squid
* **s-itil** : serveur GLPI
* **s-backup** : DNS esclave + sauvegarde s-win (SMB)
* **s-mon** : supervision avec **Nagios4**, notifications et syslog
* **s-fog** : deploiement postes de travail avec **FOG**
* **s-win** : Windows Server 2019, AD, DNS, DHCP, partage fichiers
* **s-nxc** : NextCloud avec **docker**
* **s-elk** : pile ELK dockerisée
* **s-lb** : Load Balancer **HaProxy** pour application Wordpress (DMZ)
* **r-vp1** : Routeur VPN Wireguard coté siège
* **r-vp2** : Routeur VPN Wireguard coté agence, DHCP
* **s-agence** : Serveur agence
* **s-lb** : Load Balancer **HaProxy** pour application Wordpress
* **s-lb-web1** : Serveur Wordpress 1 Load Balancer
* **s-lb-web2** : Serveur Wordpress 2 Load Balancer
* **s-lb-db** : Serveur Mariadb pour Wordpress
* **s-lb-nfs** : Serveur NFS pour application Wordpress
## Les playbooks
@ -26,7 +44,7 @@ prérequis :
On utilisera l'image de machine virtuelle suivante :
* **debian-bullseye-2023a.ova** (2023-01-06)
* Debian Bullseye 11 - 2 cartes - 1 Go - stockage 20 Go
* Debian Bullseye 11.6 - 2 cartes - 1 Go - stockage 20 Go
### Machine s-adm

View File

@ -1,7 +1,9 @@
package:
# ferm:
# installed: true
strongswan:
wireguard:
installed: true
wireguard-tools:
installed: true
port:
udp:68:
@ -10,7 +12,7 @@ service:
# dnsmasq:
# enabled: true
# running: true
strongswan:
wireguard:
enabled: true
running: true
ssh:
@ -51,6 +53,13 @@ command:
- 4 received = 1
stderr: []
timeout: 10000
command:
ping -c 4 10.0.0.2:
exit-status: 0
stdout:
- 4 received = 1
stderr: []
timeout: 10000
#process:
# dnsmasq:
# running: true
@ -64,4 +73,4 @@ interface:
enp0s9:
exists: true
addrs:
- 192.168.1.2/24
- 192.168.1.2/24

View File

@ -1,8 +0,0 @@
---
- hosts: localhost
connection: local
roles:
- goss
- docker-graylog-pont
- post

View File

@ -1,14 +0,0 @@
#!/bin/bash
ping -c3 172.16.128.254
ping -c3 192.168.1.2
ping -c3 192.168.1.1
ping -c3 192.168.200.253
ping -c3 192.168.200.254
ping -c3 172.16.0.254
ping -c3 172.16.0.1

View File

@ -1,14 +0,0 @@
#!/bin/bash
ping -c3 172.16.0.1
ping -c3 172.16.0.254
ping -c3 192.168.200.254
ping -c3 192.168.1.1
ping -c3 192.168.1.2
ping -c3 172.16.128.254
ping -c3 172.16.128.10

View File

@ -1,12 +0,0 @@
#!/bin/bash
ping -c3 172.16.0.1
ping -c3 192.168.200.253
ping -c3 192.168.1.1
ping -c3 192.168.1.2
ping -c3 172.16.128.254
ping -c3 172.16.128.10

View File

@ -1,14 +0,0 @@
#!/bin/bash
ping -c3 172.16.0.254
ping -c3 192.168.200.254
ping -c3 192.168.200.253
ping -c3 192.168.1.1
ping -c3 192.168.1.2
ping -c3 172.16.125.254
ping -c3 172.16.128.10

View File

@ -1,5 +1,5 @@
#!/bin/bash
## ps : 2021-04-01 15:25
## aa : 2023-04-18 15:25
set -o errexit
set -o pipefail

View File

@ -1,5 +1,9 @@
#!/bin/bash
dir=/root/tools/ansible
prj=gsb2023
opt=""
if [ -z ${UREP+x} ]; then
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
fi
@ -11,6 +15,14 @@ dir=/root/tools/ansible
cd "${dir}" || exit 1
hostname > hosts
ansible-pull -i "${dir}/hosts" -C main -U "${UREP}"
if [[ $# == 1 ]] ; then
opt=$1
fi
if [[ "${opt}" == '-l' ]] ; then
cd "${dir}/${prj}" || exit 2
ansible-playbook -i localhost, -c local "$(hostname).yml"
else
ansible-pull -i "${dir}/hosts" -C main -U "${UREP}"
fi
exit 0

1
proxy
View File

@ -1 +0,0 @@
/etc/nginx/sites-availables/proxy

View File

@ -1,6 +1,6 @@
#!/bin/bash
if [ -z ${UREP+x} ]; then
if [ -z ${UREP+x} ]; then
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
fi
@ -11,6 +11,6 @@ dir=/root/tools/ansible
cd "${dir}" || exit 1
hostname > hosts
ansible-pull -i "${dir}/hosts" -U "${UREP}"
ansible-pull -i "${dir}/hosts" -C main -U "${UREP}"
exit 0

View File

@ -0,0 +1,25 @@
- name: install haproxy
apt:
name: haproxy
state: present
- name: parametre backend et fontend
blockinfile:
path: /etc/haproxy/haproxy.cfg
block: |
frontend proxypublic
bind 192.168.56.2:80
default_backend fermeweb
backend fermeweb
balance roundrobin
option httpclose
#option httpchk HEAD / HTTP/1.0
server web1.test 192.168.56.3:80 check
#server web2.test 192.168.56.4:80 check
- name: redemarre haproxy
service:
name: haproxy
state: restarted
enabled: yes

View File

@ -0,0 +1,10 @@
# Role s-nas-server
## Installation de nfs-server et mise en oeuvre du partage /home/wordpress
Ce rôle :
* installe **nfs-server**
* copie le fichier de configuration **exports** pour exporter le répertoire **/home/wordpress**
* relance le service **nfs-server**
### Objectif
Le répertoire **/home/wordpress** est exporté par **nfs** sur le réseau **n-dmz-db**

View File

@ -2,34 +2,36 @@
Nextcloud et Traefik fonctionnent grâce à docker. Pour pouvoir faire fonctionner ce playbook, docker doit être installé.
## Premièrement
## 1.
Le playbook va créer le dossier nxc à la racine de root. Deux fichier docker-compose "nextcloud.yml" et "traefik.yml" y seront copiés depuis le répertoire "files" du playbook.
Enfin, dans le répertoire nxc, seront créé les dossier certs et config.
Le playbook crée le dossier **nxc** à la racine de root.
### Deuxièmement
Les fichiers "nextcloud.yml" et "traefik.yml" y seront copiés depuis le répertoire "files" du playbook.
Le playbook va copier les fichiers placés dans "files" et les placer dans les bons répertoires.
Enfin, dans le répertoire nxc, sont créés les répertoires **certs** et **config**.
#### Troisièmement
## 2. Copie des fichiers
Le playbook va créer un certificat x509 grâce à mkcert, il s'agit d'une solution permettant de créer
des certificats auto-signés. Pour cela il télécharge mkcert sur s-adm (utiliser le getall).
Le playbook copie les fichiers placés dans "files" et les placer dans les bons répertoires.
mkcert sera placé dans : /usr/local/bin/
## 3. Génération du certificat
Pour créer le certificat le playbook va executer des lignes de commandes (lancé depuis nxc/) :
Le playbook crée un certificat **x509** grâce à **mkcert**, il s'agit d'une solution permettant de créer des certificats auto-signés. Pour cela, il télécharge **mkcert** sur **s-adm** (utiliser le script **getall**).
**mkcert** est placé dans : /usr/local/bin/
Pour créer le certificat, le playbook exécute les commandes (lancé depuis nxc/) :
```
/usr/local/bin/mkcert -install # Installe mkcert
/usr/local/bin/mkcert -key-file key.pem -cert-file cert.pem "hôte.domaine.local" "*.domaine.local" #Crée le certificat le DNS spécifié
```
##### Quatrièmement
## 4. Lancement
Le playbook va lancer les fichier "docker-compose" à savoir : nextcloud.yml et traefik.yml.
Cela va installer les solutions automatiquement. Nextcloud est alors fonctionnel avec
un proxy inverse qui va rediriger en HTTPS.
Le playbook lance les fichiers "docker-compose" à savoir : nextcloud.yml et traefik.yml qui démarrent les deux piles **docker**.
Nextcloud est alors fonctionnel avec le proxy inverse **traefik** assurant la redirection vers HTTPS.
ATTENTION : Après avoir relancé la VM, executez le script "nxc-start.sh" afin d'installer les piles applicatives.
Une fois le script fini, accedez au site :
https://s-nxc.gsb.lan
ATTENTION : Après avoir relancé la VM, executez le script "nxc-start.sh" afin d'installer les piles applicatives.
Une fois le script terminé, le site est disponible ici : https://s-nxc.gsb.lan

View File

@ -8,37 +8,30 @@ iface lo inet loopback
# Reseau N-adm
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.99.12
netmask 255.255.255.0
address 192.168.99.12/24
# Reseau liaison avec r-ext
allow-hotplug enp0s8
iface enp0s8 inet static
address 192.168.200.254
netmask 255.255.255.0
address 192.168.200.254/24
gateway 192.168.200.253
up ip route add default via 192.168.200.253
# Reseau wifi
allow-hotplug enp0s9
iface enp0s9 inet static
address 172.16.65.254
netmask 255.255.255.0
address 172.16.65.254/24
# Reseau user
allow-hotplug enp0s10
iface enp0s10 inet static
address 172.16.64.254
netmask 255.255.255.0
address 172.16.64.254/24
# Reseau infra
allow-hotplug enp0s16
iface enp0s16 inet static
address 172.16.0.254
netmask 255.255.255.0
up /root/routagenat
address 172.16.0.254/24

View File

@ -3,11 +3,11 @@
- name: Copie du fichier sysctl.conf
copy: src=sysctl.conf dest=/etc/
- name: copier le script de routage
copy: src=routagenat dest=/root/
#- name: copier le script de routage
# copy: src=routagenat dest=/root/
- name: rendre executabe le script
shell: chmod +x /root/routagenat
#- name: rendre executabe le script
# shell: chmod +x /root/routagenat
#- name: exectuer le script
# script: /root/routagenat

View File

@ -1,11 +0,0 @@
---
- name: Installation d'HAproxy
apt: pkg=haproxy state=present update_cache=yes
- name: Fichier de configuration
copy: src=haproxy.cfg dest=/etc/haproxy/haproxy.cfg
notify:
- restart haproxy
- name: Copie de goss
copy: src=goss.yaml dest=/root

View File

@ -1,3 +0,0 @@
##Installation de nfs
Ce rôle télécharge NFS puis copie un fichier de configuration pour partager le dossier /home/wordpress.

View File

@ -1,27 +1,51 @@
#!/bin/bash
BDIR=/home/backup
SWIN=/tmp/s-win
LOCK=/tmp/s-backup.lock
#Fonction cleanup pour sortir propre dans tout les cas
cleanup()
{
rm "${LOCK}"
umount "${SWIN}"
echo "nettoyage effectue, sortie tout propre ..."
exit 3
}
#check si pas deja en cours d execution > sortie si fichier de lock existe
if [ -e "${LOCK}" ] ; then
echo "$0 : Verrouillage, deja en cours d execution"
trap cleanup 1 2 3 6
fi
#prepartion des dossiers qui vont accueillir les donnees à sauvegarder
[ -d "${BDIR}" ] || mkdir "${BDIR}"
[ -d "${BDIR}" ] || mkdir "${BDIR}/s-win"
[ -d "${BDIR}/s-win" ] || mkdir "${BDIR}/s-win"
[ -d "${SWIN}" ] || mkdir "${SWIN}"
mount -t cifs -o ro,vers=3.0,username=u-backup,password=Azerty1+ //s-win/commun "${SWIN}"
#etablissement du lock
touch "${LOCK}"
mount -t cifs -o ro,vers=3.0,username=uBackup,password=Azerty1+ //s-win/commun "${SWIN}"
if [ $? != 0 ] ; then
echo "$0 : erreur montage ${SWIN}"
exit 1
rm "${LOCK}"
trap cleanup 1 2 3 6
fi
rsync -av "${SWIN}/" "${BDIR}/s-win/commun"
umount "${SWIN}"
mount -t cifs -o ro,vers=3.0,username=u-backup,password=Azerty1+ //s-win/public "${SWIN}"
mount -t cifs -o ro,vers=3.0,username=uBackup,password=Azerty1+ //s-win/public "${SWIN}"
if [ $? != 0 ] ; then
echo "$0 : erreur montage"
exit 2
echo "$0 : erreur montage ${SWIN}"
trap cleanup 1 2 3 6
fi
rsync -av "${SWIN}/" "${BDIR}/s-win/public"
umount "${SWIN}"
#libere le verrou
rm "${LOCK}"
exit 0

View File

@ -0,0 +1,5 @@
#ajout du sleep 5
éditer "/etc/init.d/isc-dhcp-server"
aller au "case \"$1\" in" et rajouter "sleep 5" avant le "if"

View File

@ -17,5 +17,5 @@
#- name: copie du fichier de configuration depuis r-vp1
# command: "sshpass -p 'root' scp -r root@192.168.99.112:/root/confwg/wg0-b.conf /etc/wireguard/"
- name: renommage du fichier de configuration
command: "mv /etc/wireguard/wg0-b.conf /etc/wireguard/wg0.conf"
#- name: renommage du fichier de configuration
# command: "mv /etc/wireguard/wg0-b.conf /etc/wireguard/wg0.conf"

View File

@ -4,8 +4,8 @@
roles:
- base
- s-lb-web-ab
- lb-web
- snmp-agent
- s-nas-client
- lb-nfs-client
- post

View File

@ -4,8 +4,8 @@
roles:
- base
- s-lb-web-ab
- lb-web
- snmp-agent
- s-nas-client
- lb-nfs-client
- post

View File

@ -1,11 +0,0 @@
---
- hosts: localhost
connection: local
roles:
- base
- s-lb-web-ab
- snmp-agent
- s-nas-client
- post

View File

@ -1,18 +0,0 @@
---
- hosts: localhost
connection: local
vars:
wp_mysql_db: "wordpress"
wp_mysql_user: "wp"
wp_mysql_password: "wp"
wp_mysql_host: "192.168.102.50"
roles:
- base
- goss
- apache2
- s-lb-wordpress
- snmp-agent
- post
- mysql
- php-fpm

View File

@ -10,8 +10,8 @@
roles:
- base
- snmp-agent
- s-lb-wordpress
- s-nas-server
- lb-web
- lb-nfs-server
- ssh-cli
- syslog-cli
- post

View File

@ -1,21 +1,24 @@
#!/bin/bash
mkvmrelease="v1.2"
ovarelease="2023a"
ovafogrelease="2023a"
ovafile="$HOME/Téléchargements/debian-bullseye-gsb-${ovarelease}.ova"
ovafilefog="$HOME/Téléchargements/debian-buster-gsb-${ovafogrelease}.ova"
deletemode=0
usage () {
echo "$0 - version ${ovarelease}"
echo "$0 - version ${mkvmrelease} - Ova version ${ovarelease}"
echo "$0 : creation VM et parametrage interfaces"
echo "usage : $0 <s-infra|r-int|r-ext|s-proxy|s-mon>"
echo "usage : $0 [-r] <s-infra|r-int|r-ext|s-proxy|s-mon|s-appli|s-backup|s-itil|s-ncx|s-fog>"
echo " option -r : efface vm existante avant creation nouvelle"
exit 1
}
create_vm () {
nom="$1"
nomova=${ovafile}
local nom="$1"
local nomova="${ovafile}"
if [[ "${nom}" == "s-fog" ]] ; then
nomova="${ovafilefog}"
fi
@ -23,6 +26,9 @@ create_vm () {
echo "$0 : erreur ouverture fichier ${nomova} ..."
exit 3
fi
if [[ "${deletemode}" = 1 ]] ; then
VBoxManage unregistervm --delete "${nom}"
fi
vboxmanage import "${nomova}" --vsys 0 --vmname "${nom}"
}
@ -38,15 +44,25 @@ setif () {
create_if () {
# enp0s3
setif "$1" 1 "$2"
setif "$1" 2 "$3"
#(enp0s8)
setif "$1" 2 "$3"
#(enp0s9)
if [[ -n "$4" ]] ; then
setif "$1" 3 "$4"
fi
}
if [[ $# != 1 ]] ; then
if [[ $# == 0 ]] ; then
usage
fi
if [[ $1 == "--help" ]] || [[ $1 == "-h" ]] || [[ $1 == "-V" ]] ; then
usage
fi
if [[ $1 == "-r" ]] ; then
deletemode=1
shift
fi
vm="$1"
create_vm "${vm}"
@ -56,9 +72,7 @@ elif [[ "${vm}" == "s-proxy" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "r-int" ]] ; then
# n-adm, n-link, n-wifi, n-user, n-infra
create_if "${vm}" "n-adm" "n-infra"
setif "${vm}" 2 "n-link"
setif "${vm}" 3 "n-wifi"
create_if "${vm}" "n-adm" "n-link" "n-wifi"
setif "${vm}" 4 "n-user"
setif "${vm}" 5 "n-infra"
elif [[ "${vm}" == "r-ext" ]] ; then
@ -74,9 +88,8 @@ elif [[ "${vm}" == "s-itil" ]] ; then
elif [[ "${vm}" == "s-nxc" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-fog" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
setif "${vm}" 3 "n-user"
elif [[ "${vm}" == "s-DNS-ext" ]] ; then
create_if "${vm}" "n-adm" "n-infra" "n-user"
elif [[ "${vm}" == "s-dns-ext" ]] ; then
create_if "${vm}" "n-adm" "n-dmz"
elif [[ "${vm}" == "s-web-ext" ]] ; then
create_if "${vm}" "n-adm" "n-dmz"
@ -84,14 +97,12 @@ elif [[ "${vm}" == "s-nxc" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-lb" ]] ; then
create_if "${vm}" "n-adm" "n-dmz" "n-dmz-lb"
elif [[ "${vm}" == "s-web1" ]] ; then
elif [[ "${vm}" == "s-lb-web1" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
# setif "${vm}" 3 "n-dmz-lb"
elif [[ "${vm}" == "s-web2" ]] ; then
elif [[ "${vm}" == "s-lb-web2" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
elif [[ "${vm}" == "s-web3" ]] ; then
elif [[ "${vm}" == "s-lb-web3" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
# setif "${vm}" 3 "n-dmz-lb"
elif [[ "${vm}" == "s-lb-bd" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-db"
elif [[ "${vm}" == "s-nas" ]] ; then
@ -102,8 +113,7 @@ elif [[ "${vm}" == "r-vp2" ]] ; then
./addint.r-vp2
elif [[ "${vm}" == "s-agence" ]] ; then
create_if "${vm}" "n-adm" "n-agence"
else
echo "$0 : vm ${vm} non prevu"
echo "$0 : vm ${vm} non prevue "
exit 2
fi

135
scripts/mkvm.pl Executable file
View File

@ -0,0 +1,135 @@
#!/usr/pbin/perl
use strict;
use warnings;
use v5.10;
my $ovarelease = "2023a";
my $ovafogrelease = "2023a";
my $home=$ENV{'HOME'};
my $ovafile="$home/Téléchargements/debian-bullseye-gsb-".$ovarelease.".ova";
my $ovafilefog="$home/Téléchargements/debian-buster-gsb-i".$ovafogrelease.".ova";
my %vmtab = (
#name => "s-adm", params => ":1024:"
name => "s-adm", params => ":1024:n-adm:n-infra",
name => "s-infra", params => ":1024:n-adm:n-infra",
name => "s-proxy", params => ":1024:n-adm:n-infra",
name => "r-int", params => ":1024:n-adm:n-link:n-wifi:n-user:n-infra",
name => "r-ext", params => ":1024:n-adm:n-dmz:eno1:n-linkvi:n-link",
name => "s-mon", params => ":1024:n-adm:n-infra",
name => "s-itil", params => ":1024:n-adm:n-infra",
name => "s-appli", params => ":1024:n-adm:n-infra",
name => "s-backup", params => ":1024:n-adm:n-infra",
name => "s-fog", params => ":1024:n-adm:n-infra:n-user",
name => "s-nxc", params => ":1024:n-adm:n-infra",
)
sub usage () {
say "$0 - version ${ovarelease}";
say "$0 : creation VM et parametrage interfaces";
say "usage : $0 <s-infra|r-int|r-ext|s-proxy|s-mon>";
exit 1 ;
}
sub create_vm () {
my $nom = shift ;
my $nomova = shift ;
if ( $nom == "s-fog" ) {
$nomova = $ovafilefog;
}
if ( ! -r $nomova ) {
say "$0 : erreur ouverture fichier $nomova ..."
exit 3
}
qx (vboxmanage import $nomova --vsys 0 --vmname $nom);
}
sub setif () {
my ($vm, $interf, $parm) = @ARGV;
qx(VBoxManage modifyvm $vm --nic"${2}" intnet);
qx(VBoxManage modifyvm $vm --intnet"${2}" "$3");
qx(VBoxManage modifyvm $vm --nictype"${2}" 82540EM);
qx(VBoxManage modifyvm $vm --cableconnected"${2}" on);
qx(VBoxManage modifyvm $vm --nicpromisc"${2}" allow-all);
}
sub create_if () {
# enp0s3
setif "$1" 1 "$2"
setif "$1" 2 "$3"
#(enp0s8)
}
create_vm "${vm}"
if [[ "${vm}" == "s-infra" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-proxy" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "r-int" ]] ; then
# n-adm, n-link, n-wifi, n-user, n-infra
create_if "${vm}" "n-adm" "n-infra"
setif "${vm}" 2 "n-link"
setif "${vm}" 3 "n-wifi"
setif "${vm}" 4 "n-user"
setif "${vm}" 5 "n-infra"
elif [[ "${vm}" == "r-ext" ]] ; then
./addint.r-ext
elif [[ "${vm}" == "s-mon" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-appli" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-backup" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-itil" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-nxc" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-fog" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
setif "${vm}" 3 "n-user"
elif [[ "${vm}" == "s-DNS-ext" ]] ; then
create_if "${vm}" "n-adm" "n-dmz"
elif [[ "${vm}" == "s-web-ext" ]] ; then
create_if "${vm}" "n-adm" "n-dmz"
elif [[ "${vm}" == "s-nxc" ]] ; then
create_if "${vm}" "n-adm" "n-infra"
elif [[ "${vm}" == "s-lb" ]] ; then
create_if "${vm}" "n-adm" "n-dmz" "n-dmz-lb"
elif [[ "${vm}" == "s-web1" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
# setif "${vm}" 3 "n-dmz-lb"
elif [[ "${vm}" == "s-web2" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
elif [[ "${vm}" == "s-web3" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
# setif "${vm}" 3 "n-dmz-lb"
elif [[ "${vm}" == "s-lb-bd" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-db"
elif [[ "${vm}" == "s-nas" ]] ; then
create_if "${vm}" "n-adm" "n-dmz-db"
elif [[ "${vm}" == "r-vp1" ]] ; then
./addint.r-vp1
elif [[ "${vm}" == "r-vp2" ]] ; then
./addint.r-vp2
elif [[ "${vm}" == "s-agence" ]] ; then
create_if "${vm}" "n-adm" "n-agence"
else
echo "$0 : vm ${vm} non prevu"
exit 2
fi
sub usage () {
print "usage : mkvm.pl <vm-name>\n";
print "cree une VM a partir d'un fichier OVA et parametre les interfaces";
exit 1 ;
}
sub main () {
my $vm = shift;
usage unless ( $vm);
}

View File

@ -1,7 +0,0 @@
---
- hosts: localhost
connection: local
roles:
- snmp-agent

View File

@ -2,14 +2,14 @@ mkdir C:\gsb\partages
cd C:\gsb\partages
mkdir compta
mkdir compta
mkdir ventes
mkdir public
mkdir commun
mkdir users
cd C:\gsb
mkdir users

3
windows/mkusr-backup.cmd Normal file
View File

@ -0,0 +1,3 @@
net group gg-backup /ADD
call mkusr uBackup "u-backup" gg-backup
icacls "C:\gsb\partages\public" /Grant:r uBackup:M /T

22
wireguard/ping-agence.sh Normal file
View File

@ -0,0 +1,22 @@
#!/bin/bash
echo ping interface paserelle r-vp2
ping -c3 172.16.128.254
echo ping r-vp1 interface n-linkv
ping -c3 192.168.1.2
echo ping r-ext interface n-linkv
ping -c3 192.168.1.1
echo ping r-ext interface n-link
ping -c3 192.168.200.253
echo ping r-int interface n-link
ping -c3 192.168.200.254
echo ping r-int interface s-infra
ping -c3 172.16.0.254
echo ping s-infra
ping -c3 172.16.0.1

22
wireguard/ping-rext.sh Executable file
View File

@ -0,0 +1,22 @@
#!/bin/bash
echo ping s-infra
ping -c3 172.16.0.1
echo ping r-int interface n-infra
ping -c3 172.16.0.254
echo ping r-int interface n-link
ping -c3 192.168.200.254
echo ping r-ext interface n-linkv
ping -c3 192.168.1.1
echo ping r-vp1 interface n-linkv
ping -c3 192.168.1.2
echo ping r-vp2 interface n-ag
ping -c3 172.16.128.254
echo ping s-agence
ping -c3 172.16.128.10

19
wireguard/ping-rint.sh Normal file
View File

@ -0,0 +1,19 @@
#!/bin/bash
echo ping s-infra
ping -c3 172.16.0.1
echo ping r-ext interface n-link
ping -c3 192.168.200.253
echo ping r-ext interface n-linkv
ping -c3 192.168.1.1
echo ping r-vp1 interface n-link
ping -c3 192.168.1.2
echo ping r-vp2 interface n-ag
ping -c3 172.16.128.254
echo ping s-agence
ping -c3 172.16.128.10

21
wireguard/ping-sinfra.sh Normal file
View File

@ -0,0 +1,21 @@
#!/bin/bash
echo ping vers r-int
ping -c3 172.16.0.254
echo ping r-int interface externe
ping -c3 192.168.200.254
echo ping r-ext interface interne
ping -c3 192.168.200.253
echo ping r-ext interface liaison
ping -c3 192.168.1.1
echo ping r-vp1 interface liaison n-linkv
ping -c3 192.168.1.2
echo ping r-vp2 interface interface interne
ping -c3 172.16.128.254
echo ping s-agence
ping -c3 172.16.128.11