Compare commits
12 Commits
v0.0.1p-aa
...
v0.0.2b-jl
Author | SHA1 | Date | |
---|---|---|---|
0cd9f1bb4c | |||
4dd5b711e2 | |||
f4361d9ecb | |||
5d767a195d | |||
7092ed5963 | |||
a508e7e65c | |||
da5011466b | |||
e395c14752 | |||
c5c261893c | |||
b8d05aa7c5 | |||
ce6d9e4c57 | |||
8d241f8786 |
25
README.md
25
README.md
@ -1,6 +1,6 @@
|
|||||||
# gsb2023
|
# gsb2023
|
||||||
|
|
||||||
2023-01-06
|
2023-01-18 ps
|
||||||
|
|
||||||
Environnement et playbooks ansible pour le projet GSB 2023
|
Environnement et playbooks ansible pour le projet GSB 2023
|
||||||
|
|
||||||
@ -8,15 +8,28 @@ Environnement et playbooks ansible pour le projet GSB 2023
|
|||||||
prérequis :
|
prérequis :
|
||||||
* une machine Debian Bullseye
|
* une machine Debian Bullseye
|
||||||
* VirtualBox
|
* VirtualBox
|
||||||
|
* fichier machines viruelles ova :
|
||||||
|
* debian-bullseye-gsb-2023a.ova
|
||||||
|
* debian-buster-gsb-2023a.ova
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Les machines
|
## Les machines
|
||||||
* s-adm
|
* s-adm : routeur adm, DHCP + NAT, deploiement, proxy squid
|
||||||
* s-infra
|
* s-infra : DNS maitre
|
||||||
* r-int
|
* r-int : routaage, DHCP
|
||||||
* r-ext
|
* r-ext : routage, NAT
|
||||||
* s-proxy
|
* s-proxy : squid
|
||||||
|
* s-itil : serveur GLPI
|
||||||
|
* s-backup : DNS esclave + sauvegarde s-win
|
||||||
|
* s-mon : supervision avec **Nagios4** 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
|
||||||
|
* r-vp1 : Routeur VPN Wireguard coté siège
|
||||||
|
* r-vp2 : Routeur VPN Wireguard coté agence, DHCP
|
||||||
|
|
||||||
|
|
||||||
## Les playbooks
|
## Les playbooks
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
---
|
|
||||||
- hosts: localhost
|
|
||||||
connection: local
|
|
||||||
|
|
||||||
roles:
|
|
||||||
- goss
|
|
||||||
- docker-graylog-pont
|
|
||||||
- post
|
|
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
## ps : 2021-04-01 15:25
|
## aa : 2023-04-18 15:25
|
||||||
|
|
||||||
set -o errexit
|
set -o errexit
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
@ -9,11 +9,11 @@ apt update && apt upgrade
|
|||||||
apt install -y apache2 git
|
apt install -y apache2 git
|
||||||
STOREREP="/var/www/html/gsbstore"
|
STOREREP="/var/www/html/gsbstore"
|
||||||
|
|
||||||
GLPIREL=9.5.6
|
GLPIREL=10.0.5
|
||||||
str="wget -nc https://github.com/glpi-project/glpi/releases/download/${GLPIREL}/glpi-${GLPIREL}.tgz"
|
str="wget -nc https://github.com/glpi-project/glpi/releases/download/${GLPIREL}/glpi-${GLPIREL}.tgz"
|
||||||
|
|
||||||
FIREL=9.5
|
FIREL=10.0.3+1.0
|
||||||
str2="https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5%2B3.0/fusioninventory-9.5+3.0.tar.bz2"
|
str2="https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi${FIREL}/fusioninventory-${FIREL}.tar.bz2"
|
||||||
|
|
||||||
FIAGREL=2.6
|
FIAGREL=2.6
|
||||||
str31="wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x64_${FIAGREL}.exe"
|
str31="wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x64_${FIAGREL}.exe"
|
||||||
@ -23,19 +23,21 @@ str32="wget -nc https://github.com/fusioninventory/fusioninventory-agent/release
|
|||||||
FOGREL=1.5.9
|
FOGREL=1.5.9
|
||||||
str4="wget -nc https://github.com/FOGProject/fogproject/archive/${FOGREL}.tar.gz -O fogproject-${FOGREL}.tar.gz"
|
str4="wget -nc https://github.com/FOGProject/fogproject/archive/${FOGREL}.tar.gz -O fogproject-${FOGREL}.tar.gz"
|
||||||
|
|
||||||
WPREL=5.8.2
|
WPREL=6.1.1
|
||||||
str5="wget -nc https://fr.wordpress.org/wordpress-${WPREL}-fr_FR.tar.gz"
|
#v6.1.1 le 17/01/2023
|
||||||
|
str5="wget -nc https://fr.wordpress.org/latest-fr_FR.tar.gz -O wordpress-6.1.1-fr_FR.tar.gz"
|
||||||
|
|
||||||
GOSSVER=v0.3.16
|
GOSSVER=v0.3.21
|
||||||
str6="curl -L https://github.com/aelsabbahy/goss/releases/download/${GOSSVER}/goss-linux-amd64 -o goss"
|
str6="curl -L https://github.com/aelsabbahy/goss/releases/download/${GOSSVER}/goss-linux-amd64 -o goss"
|
||||||
|
|
||||||
DOCKERREL=1.29.2
|
#DOCKERREL=1.29.2
|
||||||
str7="curl -L https://github.com/docker/compose/releases/download/${DOCKERREL}/docker-compose-$(uname -s)-$(uname -m) -o docker-compose"
|
#str7="curl -L https://github.com/docker/compose/releases/download/${DOCKERREL}/docker-compose-$(uname -s)-$(uname -m) -o docker-compose"
|
||||||
|
|
||||||
GESTSUPREL=3.2.15
|
#GESTSUPREL=3.2.30
|
||||||
str8="wget -nc https://gestsup.fr/downloads/versions/current/version/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"
|
||||||
|
|
||||||
ELKREL=7.16.3
|
ELKREL=8.6.0
|
||||||
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"
|
||||||
@ -70,12 +72,12 @@ curl -L https://get.docker.com -o getdocker.sh
|
|||||||
|
|
||||||
chmod +x ./getdocker.sh
|
chmod +x ./getdocker.sh
|
||||||
|
|
||||||
${str7}
|
#${str7}
|
||||||
|
|
||||||
chmod +x ./docker-compose
|
#chmod +x ./docker-compose
|
||||||
|
|
||||||
|
|
||||||
wget -nc https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-amd64 -O mkcert
|
wget -nc https://github.com/FiloSottile/mkcert/releases/download/v1.4.4/mkcert-v1.4.4-linux-amd64 -O mkcert
|
||||||
|
|
||||||
chmod +x ./mkcert
|
chmod +x ./mkcert
|
||||||
|
|
||||||
@ -90,4 +92,3 @@ EOT
|
|||||||
)
|
)
|
||||||
|
|
||||||
cat "${STOREREP}/getall"
|
cat "${STOREREP}/getall"
|
||||||
|
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
dir=/root/tools/ansible
|
||||||
|
prj=gsb2023
|
||||||
|
opt=""
|
||||||
|
|
||||||
if [ -z ${UREP+x} ]; then
|
if [ -z ${UREP+x} ]; then
|
||||||
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
|
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
|
||||||
fi
|
fi
|
||||||
@ -11,6 +15,14 @@ dir=/root/tools/ansible
|
|||||||
cd "${dir}" || exit 1
|
cd "${dir}" || exit 1
|
||||||
|
|
||||||
hostname > hosts
|
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
|
exit 0
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ -z ${UREP+x} ]; then
|
if [ -z ${UREP+x} ]; then
|
||||||
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
|
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2023.git
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -11,6 +11,6 @@ dir=/root/tools/ansible
|
|||||||
cd "${dir}" || exit 1
|
cd "${dir}" || exit 1
|
||||||
|
|
||||||
hostname > hosts
|
hostname > hosts
|
||||||
ansible-pull -i "${dir}/hosts" -U "${UREP}"
|
ansible-pull -i "${dir}/hosts" -C main -U "${UREP}"
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
10
roles/lb-nfs-server/README.md
Normal file
10
roles/lb-nfs-server/README.md
Normal 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**
|
2
roles/lb-web/defaults/main.yml
Normal file
2
roles/lb-web/defaults/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
depl_url: "http://s-adm.gsb.adm/gsbstore/"
|
||||||
|
depl_wordpress: "wordpress-6.1.1-fr_FR.tar.gz"
|
@ -8,37 +8,30 @@ iface lo inet loopback
|
|||||||
# Reseau N-adm
|
# Reseau N-adm
|
||||||
allow-hotplug enp0s3
|
allow-hotplug enp0s3
|
||||||
iface enp0s3 inet static
|
iface enp0s3 inet static
|
||||||
address 192.168.99.12
|
address 192.168.99.12/24
|
||||||
netmask 255.255.255.0
|
|
||||||
|
|
||||||
|
|
||||||
# Reseau liaison avec r-ext
|
# Reseau liaison avec r-ext
|
||||||
allow-hotplug enp0s8
|
allow-hotplug enp0s8
|
||||||
iface enp0s8 inet static
|
iface enp0s8 inet static
|
||||||
address 192.168.200.254
|
address 192.168.200.254/24
|
||||||
netmask 255.255.255.0
|
|
||||||
gateway 192.168.200.253
|
gateway 192.168.200.253
|
||||||
up ip route add default via 192.168.200.253
|
|
||||||
|
|
||||||
|
|
||||||
# Reseau wifi
|
# Reseau wifi
|
||||||
allow-hotplug enp0s9
|
allow-hotplug enp0s9
|
||||||
iface enp0s9 inet static
|
iface enp0s9 inet static
|
||||||
address 172.16.65.254
|
address 172.16.65.254/24
|
||||||
netmask 255.255.255.0
|
|
||||||
|
|
||||||
|
|
||||||
# Reseau user
|
# Reseau user
|
||||||
allow-hotplug enp0s10
|
allow-hotplug enp0s10
|
||||||
iface enp0s10 inet static
|
iface enp0s10 inet static
|
||||||
address 172.16.64.254
|
address 172.16.64.254/24
|
||||||
netmask 255.255.255.0
|
|
||||||
|
|
||||||
|
|
||||||
# Reseau infra
|
# Reseau infra
|
||||||
allow-hotplug enp0s16
|
allow-hotplug enp0s16
|
||||||
iface enp0s16 inet static
|
iface enp0s16 inet static
|
||||||
address 172.16.0.254
|
address 172.16.0.254/24
|
||||||
netmask 255.255.255.0
|
|
||||||
up /root/routagenat
|
|
||||||
|
|
||||||
|
@ -3,11 +3,11 @@
|
|||||||
- name: Copie du fichier sysctl.conf
|
- name: Copie du fichier sysctl.conf
|
||||||
copy: src=sysctl.conf dest=/etc/
|
copy: src=sysctl.conf dest=/etc/
|
||||||
|
|
||||||
- name: copier le script de routage
|
#- name: copier le script de routage
|
||||||
copy: src=routagenat dest=/root/
|
# copy: src=routagenat dest=/root/
|
||||||
|
|
||||||
- name: rendre executabe le script
|
#- name: rendre executabe le script
|
||||||
shell: chmod +x /root/routagenat
|
# shell: chmod +x /root/routagenat
|
||||||
|
|
||||||
#- name: exectuer le script
|
#- name: exectuer le script
|
||||||
# script: /root/routagenat
|
# script: /root/routagenat
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
depl_url: "http://s-adm.gsb.adm/gsbstore/"
|
|
||||||
depl_wordpress: "wordpress-5.8.2-fr_FR.tar.gz"
|
|
@ -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.
|
|
@ -8,7 +8,7 @@
|
|||||||
- s-ssh
|
- s-ssh
|
||||||
- dnsmasq
|
- dnsmasq
|
||||||
- squid
|
- squid
|
||||||
- local-store
|
# - local-store
|
||||||
- snmp-agent
|
- snmp-agent
|
||||||
- syslog-cli
|
- syslog-cli
|
||||||
- post
|
- post
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
---
|
|
||||||
- hosts: localhost
|
|
||||||
connection: local
|
|
||||||
|
|
||||||
roles:
|
|
||||||
- base
|
|
||||||
- s-lb-web-ab
|
|
||||||
- snmp-agent
|
|
||||||
- s-nas-client
|
|
||||||
- post
|
|
||||||
|
|
@ -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
|
|
46
scripts/mkvm
46
scripts/mkvm
@ -1,21 +1,24 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
mkvmrelease="v1.2"
|
||||||
|
|
||||||
ovarelease="2023a"
|
ovarelease="2023a"
|
||||||
ovafogrelease="2023a"
|
ovafogrelease="2023a"
|
||||||
ovafile="$HOME/Téléchargements/debian-bullseye-gsb-${ovarelease}.ova"
|
ovafile="$HOME/Téléchargements/debian-bullseye-gsb-${ovarelease}.ova"
|
||||||
ovafilefog="$HOME/Téléchargements/debian-buster-gsb-${ovafogrelease}.ova"
|
ovafilefog="$HOME/Téléchargements/debian-buster-gsb-${ovafogrelease}.ova"
|
||||||
|
deletemode=0
|
||||||
|
|
||||||
usage () {
|
usage () {
|
||||||
echo "$0 - version ${ovarelease}"
|
echo "$0 - version ${mkvmrelease} - Ova version ${ovarelease}"
|
||||||
echo "$0 : creation VM et parametrage interfaces"
|
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
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
create_vm () {
|
create_vm () {
|
||||||
nom="$1"
|
local nom="$1"
|
||||||
nomova=${ovafile}
|
local nomova="${ovafile}"
|
||||||
if [[ "${nom}" == "s-fog" ]] ; then
|
if [[ "${nom}" == "s-fog" ]] ; then
|
||||||
nomova="${ovafilefog}"
|
nomova="${ovafilefog}"
|
||||||
fi
|
fi
|
||||||
@ -23,6 +26,9 @@ create_vm () {
|
|||||||
echo "$0 : erreur ouverture fichier ${nomova} ..."
|
echo "$0 : erreur ouverture fichier ${nomova} ..."
|
||||||
exit 3
|
exit 3
|
||||||
fi
|
fi
|
||||||
|
if [[ "${deletemode}" = 1 ]] ; then
|
||||||
|
VBoxManage unregistervm --delete "${nom}"
|
||||||
|
fi
|
||||||
vboxmanage import "${nomova}" --vsys 0 --vmname "${nom}"
|
vboxmanage import "${nomova}" --vsys 0 --vmname "${nom}"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,15 +44,25 @@ setif () {
|
|||||||
create_if () {
|
create_if () {
|
||||||
# enp0s3
|
# enp0s3
|
||||||
setif "$1" 1 "$2"
|
setif "$1" 1 "$2"
|
||||||
setif "$1" 2 "$3"
|
|
||||||
#(enp0s8)
|
#(enp0s8)
|
||||||
|
setif "$1" 2 "$3"
|
||||||
|
#(enp0s9)
|
||||||
|
if [[ -n "$4" ]] ; then
|
||||||
|
setif "$1" 3 "$4"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if [[ $# != 1 ]] ; then
|
if [[ $# == 0 ]] ; then
|
||||||
usage
|
usage
|
||||||
fi
|
fi
|
||||||
|
if [[ $1 == "--help" ]] || [[ $1 == "-h" ]] || [[ $1 == "-V" ]] ; then
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
if [[ $1 == "-r" ]] ; then
|
||||||
|
deletemode=1
|
||||||
|
shift
|
||||||
|
fi
|
||||||
vm="$1"
|
vm="$1"
|
||||||
|
|
||||||
create_vm "${vm}"
|
create_vm "${vm}"
|
||||||
@ -56,9 +72,7 @@ elif [[ "${vm}" == "s-proxy" ]] ; then
|
|||||||
create_if "${vm}" "n-adm" "n-infra"
|
create_if "${vm}" "n-adm" "n-infra"
|
||||||
elif [[ "${vm}" == "r-int" ]] ; then
|
elif [[ "${vm}" == "r-int" ]] ; then
|
||||||
# n-adm, n-link, n-wifi, n-user, n-infra
|
# n-adm, n-link, n-wifi, n-user, n-infra
|
||||||
create_if "${vm}" "n-adm" "n-infra"
|
create_if "${vm}" "n-adm" "n-link" "n-wifi"
|
||||||
setif "${vm}" 2 "n-link"
|
|
||||||
setif "${vm}" 3 "n-wifi"
|
|
||||||
setif "${vm}" 4 "n-user"
|
setif "${vm}" 4 "n-user"
|
||||||
setif "${vm}" 5 "n-infra"
|
setif "${vm}" 5 "n-infra"
|
||||||
elif [[ "${vm}" == "r-ext" ]] ; then
|
elif [[ "${vm}" == "r-ext" ]] ; then
|
||||||
@ -74,9 +88,8 @@ elif [[ "${vm}" == "s-itil" ]] ; then
|
|||||||
elif [[ "${vm}" == "s-nxc" ]] ; then
|
elif [[ "${vm}" == "s-nxc" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-infra"
|
create_if "${vm}" "n-adm" "n-infra"
|
||||||
elif [[ "${vm}" == "s-fog" ]] ; then
|
elif [[ "${vm}" == "s-fog" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-infra"
|
create_if "${vm}" "n-adm" "n-infra" "n-user"
|
||||||
setif "${vm}" 3 "n-user"
|
elif [[ "${vm}" == "s-dns-ext" ]] ; then
|
||||||
elif [[ "${vm}" == "s-DNS-ext" ]] ; then
|
|
||||||
create_if "${vm}" "n-adm" "n-dmz"
|
create_if "${vm}" "n-adm" "n-dmz"
|
||||||
elif [[ "${vm}" == "s-web-ext" ]] ; then
|
elif [[ "${vm}" == "s-web-ext" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-dmz"
|
create_if "${vm}" "n-adm" "n-dmz"
|
||||||
@ -86,12 +99,10 @@ elif [[ "${vm}" == "s-lb" ]] ; then
|
|||||||
create_if "${vm}" "n-adm" "n-dmz" "n-dmz-lb"
|
create_if "${vm}" "n-adm" "n-dmz" "n-dmz-lb"
|
||||||
elif [[ "${vm}" == "s-web1" ]] ; then
|
elif [[ "${vm}" == "s-web1" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
|
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-web2" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
|
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
|
||||||
elif [[ "${vm}" == "s-web3" ]] ; then
|
elif [[ "${vm}" == "s-web3" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
|
create_if "${vm}" "n-adm" "n-dmz-lb" "n-dmz-db"
|
||||||
# setif "${vm}" 3 "n-dmz-lb"
|
|
||||||
elif [[ "${vm}" == "s-lb-bd" ]] ; then
|
elif [[ "${vm}" == "s-lb-bd" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-dmz-db"
|
create_if "${vm}" "n-adm" "n-dmz-db"
|
||||||
elif [[ "${vm}" == "s-nas" ]] ; then
|
elif [[ "${vm}" == "s-nas" ]] ; then
|
||||||
@ -102,8 +113,7 @@ elif [[ "${vm}" == "r-vp2" ]] ; then
|
|||||||
./addint.r-vp2
|
./addint.r-vp2
|
||||||
elif [[ "${vm}" == "s-agence" ]] ; then
|
elif [[ "${vm}" == "s-agence" ]] ; then
|
||||||
create_if "${vm}" "n-adm" "n-agence"
|
create_if "${vm}" "n-adm" "n-agence"
|
||||||
|
|
||||||
else
|
else
|
||||||
echo "$0 : vm ${vm} non prevu"
|
echo "$0 : vm ${vm} non prevue "
|
||||||
exit 2
|
exit 2
|
||||||
fi
|
fi
|
||||||
|
135
scripts/mkvm.pl
Executable file
135
scripts/mkvm.pl
Executable 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);
|
||||||
|
|
||||||
|
}
|
@ -1,15 +1,18 @@
|
|||||||
# Création des dossiers partagés et des utilisateur
|
# Tuto Installation Windows Serveur
|
||||||
|
|
||||||
Les fichiers .cmd lancer sur la machine s-win permet de créer les utilisateur, leurs mettres
|
- Une fois l'installation du serveur Windows, renommer le serveur en s-win et installer git.
|
||||||
droits et créer des dossiers partagés.
|
- Installer Serveur DNS et Services AD DS.
|
||||||
|
- Créer une nouvelle fôret pour le domaine gsb.lan.
|
||||||
|
- Configurer la zone inverse du DNS.
|
||||||
|
|
||||||
le fichier mkusr.cmd permet de créer un autre utiliateur avec les mêmes droits que les autres.
|
## Création des dossiers partagés et des utilisateur
|
||||||
|
|
||||||
# Utilisation des comptes utilisateurs
|
- 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.
|
||||||
|
|
||||||
Pour vous connecter au serveurs DNS s-win il faut créer un machine dans le réseau n-user et que
|
## Utilisation des comptes utilisateurs
|
||||||
cette machine puisse ping le serveur.
|
|
||||||
|
|
||||||
Après il suffit de changer le domaine de cette machine et la redémarrer.
|
- 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).
|
||||||
suite à ça, connecter vous avec les identifiants d'un utilisateurs.
|
- Redémarrer puis se connecter avec les identifiants choisis.
|
Reference in New Issue
Block a user