Compare commits

...

45 Commits

Author SHA1 Message Date
b659652480 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-12 16:35:40 +01:00
250bbff7f5 ajout de postfix 2021-01-12 16:35:19 +01:00
155421f2c6 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-12 16:19:26 +01:00
0ef79d9bf9 ajout de force-all dans dpkg 2021-01-12 16:18:21 +01:00
bb
96cb377d9b Changement des droits sur /plugins/fusioninventory 2021-01-12 16:16:04 +01:00
cd4ac6c12b ajout python3 par defaut 2021-01-12 15:50:34 +01:00
0021fdca7d modif pathresults 2021-01-12 15:29:24 +01:00
d8bc589637 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-12 15:21:03 +01:00
tl
3cf9daf8cb modification des droits sur le repertoire fusioninventory 2021-01-12 15:16:32 +01:00
55c1b8cda0 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-12 15:16:24 +01:00
56cd0c515b ajout de dpkg et ajout de checkresults 2021-01-12 15:14:30 +01:00
c96d7cdfcd commit delgsb.cmd 2021-01-12 15:01:10 +01:00
32e4b3d7ea commit mkgsb.cmd 2021-01-12 14:40:03 +01:00
tl
dbe94d3977 ajout paquet php-intl 2021-01-11 11:34:54 +01:00
tl
b624c73feb ajout paquet necessaire python3-pymysql 2021-01-11 11:04:11 +01:00
bb
aedd315561 Probleme resolv.conf resolu 2021-01-11 10:58:17 +01:00
tl
0ba2f3e24d modification variables des agents fusioninventory 2021-01-11 10:35:31 +01:00
bb
6845bc191b Maj liens /defaut 2021-01-11 10:33:56 +01:00
sio
7369432feb chgt version fi client Windows 2.5.2-> 2.6 2021-01-11 09:50:20 +01:00
tl
596ceda13c modification privileges mysql 2021-01-11 09:43:57 +01:00
bb
7f47454ebf Changement url 2021-01-11 09:39:27 +01:00
bb
c478e22273 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-11 09:15:27 +01:00
bb
811b7c246f Syntaxe + login_unix_socket 2021-01-11 09:11:54 +01:00
4d23d1a720 modif du paquet python 2021-01-11 08:36:45 +01:00
18ba7d06e5 modif de l'ordre des droits rw 2021-01-11 08:24:37 +01:00
9998a1f91a commit s-backup 2021-01-11 08:10:23 +01:00
sio
ce810bf71e typo 2021-01-07 17:30:45 +01:00
sio
04e893f1ee itil utilisation depl 2021-01-07 17:24:35 +01:00
ad2a36783b Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-07 17:08:50 +01:00
177ed5ada6 modif main.yml 2021-01-07 17:08:32 +01:00
sio
d6e497807e err typo s-mon .adm 2021-01-07 16:58:18 +01:00
sio
0445c30ae8 err typo s-mon 2021-01-07 16:56:08 +01:00
sio
c80a5fa165 err typo 2021-01-07 16:48:16 +01:00
sio
7ac4290d6c local-store : gestion de goss 2021-01-07 16:45:03 +01:00
sio
d6637fd506 chgt getall pour fusioninventory 2021-01-07 16:29:41 +01:00
7250eefb44 Merge branch 'master' of https://gitea.lyc-lecastel.fr/gadmin/gsb2021 2021-01-07 15:56:29 +01:00
d1f2f12b34 modif main.yml 2021-01-07 15:55:42 +01:00
bb
cc31f5da3b commentaire postfix-fk 2021-01-07 14:55:33 +01:00
ffbfc1c6c7 ajout role local-store + pbook s-adm 2021-01-06 22:11:28 +01:00
5c44880bf6 Mise à jour de 'README.md' 2021-01-06 12:03:17 +01:00
7a655af2f2 Mise à jour de 'README.md' 2021-01-06 12:01:06 +01:00
e1ea414dd2 Mise à jour de 'README.md' 2021-01-06 12:00:28 +01:00
tl
73c5d2a952 adapt s-proxy.yml bugs divers 2021-01-06 11:32:38 +01:00
sio
69e676027c adapt pull-config pout gitea distant 2021-01-06 09:49:04 +01:00
41a489362b ajout Vagrantfile pour s-adm 2021-01-06 01:02:58 +01:00
19 changed files with 294 additions and 63 deletions

View File

@ -1,3 +1,15 @@
# gsb2021
Environnement et playbooks ansible pour le projet GSB 2021
Environnement et playbooks ansible pour le projet GSB 2021
## Quickstart
prérequis : une machine Debian buster
## Les machines
* s-adm
* s-infra
* r-int
* r-ext
* s-proxy
## Les playbooks

View File

@ -2,7 +2,7 @@ package:
squid:
installed: true
addr:
tcp://192.168.99.99:8080:
tcp://192.168.99.99:8080:
reachable: true
timeout: 500
port:
@ -10,6 +10,7 @@ port:
listening: true
ip:
- '::'
service:
squid:
enabled: true
running: true
@ -24,19 +25,17 @@ interface:
enp0s3:
exists: true
addrs:
- 192.168.99.1/24
enp0s8
exists: true
addrs:
- 192.168.99.1/24
- 192.168.99.2/24
mtu: 1500
enp0s8:
exists: true
exists: true
addrs:
- 172.16.0.1/24
- 172.16.0.2/24
mtu: 1500
http:
http://localhost/wpad.dat:
status: 200
allow-insecure: false
no-follow-redirects: false
timeout: 5000
body: []
body: []

77
pre/Vagrantfile-s-adm Normal file
View File

@ -0,0 +1,77 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
config.vm.box = "debian/buster64"
config.vm.hostname = "s-adm"
config.vm.define "s-adm"
config.vm.provider :virtualbox do |vb|
vb.name = "s-adm"
end
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
# config.vm.box_check_update = false
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
# NOTE: This will enable public access to the opened port
# config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine and only allow access
# via 127.0.0.1 to disable public access
# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network "public_network", ip: "192.168.1.91"
config.vm.network "private_network", ip: "192.168.99.99"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
# config.vm.provider "virtualbox" do |vb|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
# vb.memory = "1024"
# end
#
# View the documentation for the provider you are using for more
# information on available options.
# Enable provisioning with a shell script. Additional provisioners such as
# Ansible, Chef, Docker, Puppet and Salt are also available. Please see the
# documentation for more information about their specific syntax and use.
config.vm.provision "shell", inline: <<-SHELL
apt-get update
apt-get upgrade
apt-get install -y vim wget curl
# apt-get install -y apache2
SHELL
end

View File

@ -1,24 +1,21 @@
#!/bin/bash
if [ -z ${UREP+x} ]; then
UREP=https://gitea.lyc-lecastel.fr/gadmin/gsb2021.git
fi
REPO=$(basename ${UREP})
dir=/root/tools/ansible
host=depl
hostf=$host.sio.lan
repo=gsb
[ -e $dir ] || mkdir -p $dir
[ -e ${dir} ] || mkdir -p ${dir}
grep $hostf /etc/hosts > /dev/null || echo "10.121.38.10 $hostf $host" >> /etc/hosts
#grep $hostf /etc/hosts > /dev/null || echo "10.121.38.10 $hostf $host" >> /etc/hosts
cd $dir
cd ${dir}
hostname > hosts
#git clone http://$host/$repo.git
cd $repo
git pull
ansible-playbook -c local -i 'localhost,' $(hostname).yml
#ansible-pull -i $dir/hosts -d $repo -U http://$host/$repo.git
ansible-pull -i ${dir}/hosts -U "${UREP}"
exit 0

View File

@ -0,0 +1,3 @@
depl_url: "http://s-adm.gsb.adm/gsbstore"
depl_goss: "goss"

View File

@ -5,6 +5,9 @@
register: gossbin
- name: install goss
shell: export https_proxy=http://10.121.38.1:8080 && curl -fsSL https://goss.rocks/install | sh
get_url:
url: "{{ depl_url }}/{{ depl_goss }}"
dest: /usr/local/bin/{{ depl_goss }}
mode: 0755
when: gossbin.stat.exists == False

View File

@ -6,7 +6,7 @@
- snmp
- icinga
- nagios-snmp-plugins
- python-passlib
- python3-passlib
state: present
- name: Copie de fichier icinga.conf pour apache
@ -32,6 +32,13 @@
backup : yes
notify:
- restart icinga
- name: python3 par defaut
alternatives:
link: /usr/bin/python
name: python
path: /usr/bin/python3
priority: 10
- name: Changement de mot de passe de icingaadmin
htpasswd:
@ -50,39 +57,50 @@
notify:
- restart icinga
- name: attribution des droits dossier icinga rw
file:
path: /var/lib/icinga/rw
owner: nagios
mode: 2710
recurse: yes
notify:
- restart icinga
- name: attribution des droits dossier icinga
file:
path: /var/lib/icinga
owner: nagios
mode: 751
recurse: yes
recurse: yes
notify:
- restart icinga
- restart icinga
- name: attribution des droits dossier var lib icinga
shell: chmod 2770 /var/lib/icinga/rw
notify:
- stop icinga
- name: attribution des droits dossier var lib icinga
- name: attribution des droits dossier icinga rw
file:
path: /var/lib/icinga/rw
owner: www-data
owner: nagios
mode: 2710
recurse: yes
notify:
- restart icinga
- restart icinga
- name: activation des commandes externes
replace:
dest: /etc/icinga/icinga.cfg
regexp: 'check_external_commands=0'
replace: 'check_external_commands=1'
notify:
- restart icinga
- name: reconfiguration des droits avec dpkg statoverride
shell: dpkg-statoverride --update --force-all --add nagios www-data 2710 /var/lib/icinga/rw
- name: reconfiguration des droits avec dpkg statoverride
shell: dpkg-statoverride --update --force-all --add nagios nagios 751 /var/lib/icinga
- name: suppression de checkresults
file:
path: /var/lib/icinga/spool/checkresults
state: absent
- name: creation du dossier checkresults avec droits de lecture
file:
path: /var/lib/icinga/spool/checkresults
state: directory
owner: nagios
group: root
mode: '755'
#- name: Changement droit notif
# shell: chmod 644 /var/log/icinga/icinga.log
@ -101,4 +119,6 @@
debug: msg="Pour superviser le Windows, il faut installer NSClient++"
- name: redemarrage apache
shell: service apache2 restart
service:
name: apache2
state: restarted

View File

@ -0,0 +1,5 @@
depl_url: "http://s-adm.gsb.adm/gsbstore/"
depl_glpi: "glpi-9.5.3.tgz"
depl_fusioninventory: "fusioninventory-9.5.0+1.0.tar.bz2"
depl_fusioninventory_agentx64: "fusioninventory-agent_windows-x64_2.6.exe"
depl_fusioninventory_agentx86: "fusioninventory-agent_windows-x86_2.6.exe"

View File

@ -17,6 +17,8 @@
- php-cas
- python-mysqldb
- mariadb-server
- python3-pymysql
- php-intl
- name: Changement listen dans le fichier conf de php7.3
replace:
@ -29,7 +31,9 @@
file: path=/etc/nginx/sites-enabled/default state=absent
- name: Creation fichier block nginx
template: src=block.j2 dest=/etc/nginx/sites-enabled/glpi
template:
src: block.j2
dest: /etc/nginx/sites-enabled/glpi
- name: Remplacement dans le fichier de conf php du timeout
replace:
@ -42,20 +46,32 @@
- restart nginx
- name: Creation de la base de donnee mysql
mysql_db: name={{ glpi_dbname }} state=present
mysql_db:
name: "{{ glpi_dbname }}"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: Creation de l'utilisateur mysql avec tous les privileges
mysql_user:
name={{ glpi_dbuser }}
password={{ glpi_dbpasswd }}
priv=*.*:ALL
name: "{{ glpi_dbuser }}"
password: "{{ glpi_dbpasswd }}"
priv: "*.*:ALL,GRANT"
login_unix_socket: /var/run/mysqld/mysqld.sock
with_items:
- 127.0.0.1
# - ::1
# - localhost
- name: Creation du repertoire {{ glpi_dir }}
file: path={{ glpi_dir }} state=directory owner=www-data group=www-data
file:
path: "{{ glpi_dir }}"
state: directory
owner: www-data
group: www-data
- name: Installation de GLPI
unarchive:
src: http://depl/gsbstore/glpi-{{ glpi_version }}.tgz
src: "{{ depl_url }}/{{ depl_glpi }}"
dest: /var/www/html
remote_src: yes
owner: www-data
@ -68,6 +84,8 @@
file:
path: "{{ glpi_dir }}/plugins"
mode: 0777
owner: www-data
group: www-data
recurse: yes
- name: Attribution des permissions
@ -78,7 +96,8 @@
- name: Installation de Fusioninventory pour Linux
unarchive:
src: http://depl/gsbstore/fusioninventory-{{ fd_version }}.tar.bz2
src: "{{ depl_url }}/{{ depl_fusioninventory }}"
#src: http://depl/gsbstore/fusioninventory-{{ fd_version }}.tar.bz2
dest: /var/www/html/glpi/plugins
remote_src: yes
@ -99,14 +118,22 @@
- name: Installation de FusionInventory windows x64
get_url:
url: http://depl/gsbstore/fusioninventory-agent_windows-{{ fd_version64 }}.exe
url: "{{ depl_url }}/{{ depl_fusioninventory_agentx64 }}"
dest: "/var/www/html/ficlients"
- name: Installation de FusionInventory windows x86
get_url:
url: http://depl/gsbstore/fusioninventory-agent_windows-{{ fd_version86 }}.exe
url: "{{ depl_url }}/{{ depl_fusioninventory_agentx86 }}"
dest: "/var/www/html/ficlients"
- name: Attribution des permissions sur repertoire /plugins/fusioninventory
file:
path: /var/www/html/glpi/plugins/fusioninventory
owner: www-data
group: www-data
recurse: yes
state: directory
- name: Copie du script dbdump
copy: src=dbdump dest=/root/

View File

@ -0,0 +1,25 @@
#!/bin/bash
GLPIREL=9.5.3
wget -nc https://github.com/glpi-project/glpi/releases/download/${GLPIREL}/glpi-${GLPIREL}.tgz
FIREL=9.5+1.0
#wget -nc https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi${FIREL}/fusioninventory-${FIREL}.tar.gz
#https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5.0%2B1.0/fusioninventory-9.5.0+1.0.tar.bz2
wget -nc https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5.0%2B1.0/fusioninventory-9.5.0+1.0.tar.bz2
FIAGREL=2.6
wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x64_${FIAGREL}.exe
wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x86_${FIAGREL}.exe
FOGREL=1.5.9
wget -nc https://github.com/FOGProject/fogproject/archive/${FOGREL}.tar.gz -O fogproject-${FOGREL}.tar.gz
#https://github.com/FOGProject/fogproject/archive/1.5.9.tar.gz
#wget -nc https://fr.wordpress.org/wordpress-5.3.2-fr_FR.tar.gz
wget -nc https://fr.wordpress.org/wordpress-5.6-fr_FR.tar.gz
GOSSVER=v0.3.16
curl -L https://github.com/aelsabbahy/goss/releases/download/${GOSSVER}/goss-linux-amd64 -o goss
chmod +x goss

View File

@ -0,0 +1,25 @@
#!/bin/bash
GLPIREL=9.5.3
wget -nc https://github.com/glpi-project/glpi/releases/download/${GLPIREL}/glpi-${GLPIREL}.tgz
FIREL=9.5+1.0
#wget -nc https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi${FIREL}/fusioninventory-${FIREL}.tar.gz
#https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5.0%2B1.0/fusioninventory-9.5.0+1.0.tar.bz2
wget -nc https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5.0%2B1.0/fusioninventory-9.5.0+1.0.tar.bz2
FIAGREL=2.6
wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x64_${FIAGREL}.exe
wget -nc https://github.com/fusioninventory/fusioninventory-agent/releases/download/${FIAGREL}/fusioninventory-agent_windows-x86_${FIAGREL}.exe
FOGREL=1.5.9
wget -nc https://github.com/FOGProject/fogproject/archive/${FOGREL}.tar.gz -O fogproject-${FOGREL}.tar.gz
#https://github.com/FOGProject/fogproject/archive/1.5.9.tar.gz
#wget -nc https://fr.wordpress.org/wordpress-5.3.2-fr_FR.tar.gz
wget -nc https://fr.wordpress.org/wordpress-5.6-fr_FR.tar.gz
GOSSVER=v0.3.16
curl -L https://github.com/aelsabbahy/goss/releases/download/${GOSSVER}/goss-linux-amd64 -o goss
chmod +x goss

View File

@ -0,0 +1,18 @@
---
- name: Installation bind9
file:
path: /var/www/html/gsbstore/
state: directory
mode: '0755'
- name: Copie getall-latest
copy:
src: getall-latest
dest: /var/www/html/gsbstore
- name: Copie getall-2021
copy:
src: getall-2021
dest: /var/www/html/gsbstore

View File

@ -6,11 +6,7 @@
- name: Copie resolv.conf
copy: src=resolv.conf dest=/etc/
when: ansible_hostname != "s-adm"
- name: Copie resolv.conf
copy: src=resolv.conf dest=/etc/
when: ansible_hostname != "s-proxy"
when: ansible_hostname != "s-adm" and ansible_hostname != "s-proxy"
- name: Copie resolv.conf pour s-proxy
copy: src=resolv.conf.s-proxy dest=/etc/resolv.conf

View File

@ -0,0 +1,4 @@
rem azazazaz
rmdir C:\gsb.lan /s /q
net group g-compta /del
net group g-prod /del

View File

@ -0,0 +1,11 @@
rem regereger
mkdir C:\gsb.lan\commun
mkdir C:\gsb.lan\public
net share commun=C:\gsb.lan\commun /grant:"utilisateurs DHCP",full
net share public=C:\gsb.lan\public /grant:"utilisateurs DHCP",full
net group g-compta /add
net group g-prod /add
icacls C:\gsb.lan\commun /grant Administrateurs:F
icacls C:\gsb.lan\commun /grant g-compta:M
icacls C:\gsb.lan\public /grant Administrateurs:F
icacls C:\gsb.lan\public /grant g-prod:M

View File

@ -0,0 +1,8 @@
---
- name: installation rsync et smbclient
apt:
name:
- rsync
- smbclient
state: present

View File

@ -8,7 +8,7 @@
- s-ssh
- dnsmasq
- squid
# - webautoconf
- local-store
- snmp-agent
- syslog-cli
- post

View File

@ -9,3 +9,4 @@
# - ssh-cli
- syslog-cli
- post
- s-backup

View File

@ -6,7 +6,7 @@
- base
- goss
- icinga-fk
- postfix-fk
- postfix
- ssh-cli
- syslog
- post