forked from gadmin/gsb2023
Mise à jour du playbook pour l'installation de GLPI
This commit is contained in:
60
roles/glpi/README.md
Normal file
60
roles/glpi/README.md
Normal file
@@ -0,0 +1,60 @@
|
||||
## Comment marche le rôle
|
||||
|
||||
Le rôle installe un serveur GLPI fonctionnant graĉe à php et à nginx.
|
||||
Ce rôle permet aussi d'installer FusionInventory sur glpi.
|
||||
Le rôle permet aussi de sauvegarde la BDD de glpi.
|
||||
|
||||
## Comment utiliser GLPI
|
||||
|
||||
Après le pull-config, aller sur une machine du réseau n-user et aller sur http://s-itil/install/install.php
|
||||
Puis lancer l'installation, les paramètres sql à fournir sont :
|
||||
serveur : localhost
|
||||
utilisateur : glpi
|
||||
mot de passe : glpi
|
||||
Selectionner la base glpi
|
||||
Ne pas envoyer de statistique d'usage
|
||||
|
||||
## Fusion Inventory :
|
||||
|
||||
Installer le plugin dans Configuration > Plugins
|
||||
Activer le plugin
|
||||
Pour que la remonter de l'agent se fasse, il faut ajouter une crontab (crontab -e) sur s-itil : * * * * * /usr/bin/php7.4 /var/www/glpi/front/cron.php &>/dev/null
|
||||
Puis éxécuter le tasksheduler dans Configuration > Actions automatiques > taskscheduler
|
||||
|
||||
Pour l'agent Windows, récuperer l'agent sur http://s-itil/ficlients
|
||||
Il faut faire une installation à parti de 0
|
||||
Selectionner comme type d'installation complète
|
||||
Dans le mode serveur mettre l'url : http://s-itil/plugins/fusioninventory et cocher la case installation rapide
|
||||
|
||||
Pour l'agent Debian il faut installer le paquet fusioninventory-agent
|
||||
Ajouter la ligne server = http://s-itil/plugins/fusioninventory dans le fichier /etc/fusioninventory/agent.cfg
|
||||
Redemarrer le service fusioninventory-agent puis faite un reload
|
||||
Exécuter la commande pkill -USR1 -f -P 1 fusioninventory-agent
|
||||
|
||||
## Postfix :
|
||||
|
||||
Aller dans Configuration > Notification, activer le suivi et les notification
|
||||
Aller dans Configuration des notifications par courriels
|
||||
Mettre l'adresse mail de supervision dans : Courriel de l'administrateur, Courriel expéditeur et comme adresse de réponse
|
||||
Le mode d'envoie des courriels est SMTP
|
||||
l'hôte SMTP est localhost
|
||||
## LDAP :
|
||||
|
||||
Aller dans Configuration > Authentification > Annuaires LDAP.
|
||||
Ajouter un serveur en cliquant sur le +
|
||||
Remplisser les cases:
|
||||
Nom : s-win
|
||||
Serveur par défaut : oui
|
||||
Actif : oui
|
||||
Serveur : s-win.gsb.lan
|
||||
Filtre de connexion : (&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
|
||||
BaseDN : DC=gsb,DC=lan
|
||||
DN du compte : GSB\Administrateur
|
||||
Mot de passe : Azerty1+
|
||||
Champ de l'identifiant : samaccountname
|
||||
|
||||
Pour importer les utilisateurs allez dans Administration > Utilisateur > Liaison annuaire LDAP > Importation de nouveau utilisateurs
|
||||
Appuyer sur rechercher
|
||||
Puis sélectionner les utilisateurs afficher, allez dans action et sélectionnez importer.
|
||||
|
||||
|
6
roles/glpi/defaults/main.yml
Normal file
6
roles/glpi/defaults/main.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
depl_url: "http://s-adm.gsb.adm/gsbstore"
|
||||
#depl_glpi: "glpi-9.5.6.tgz"
|
||||
depl_glpi: "glpi-10.0.6.tgz"
|
||||
#depl_fusioninventory: "fusioninventory-9.5+3.0.tar.bz2"
|
||||
depl_glpi_agentx64: "GLPI-Agent-1.4-x64.msi"
|
||||
depl_glpi_agentx86: "GLPI-Agent-1.4-x86.msi"
|
3
roles/glpi/files/.my.cnf
Normal file
3
roles/glpi/files/.my.cnf
Normal file
@@ -0,0 +1,3 @@
|
||||
[client]
|
||||
user=root
|
||||
password=root
|
4
roles/glpi/files/dbdump
Normal file
4
roles/glpi/files/dbdump
Normal file
@@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
chm="/var/www/html/glpi/files/_dumps"
|
||||
# Dump base GLPI
|
||||
mysqldump -uroot -proot glpi |gzip > $chm/$(date +%Y-%m-%d).sql.gz
|
12
roles/glpi/files/glpi.conf
Normal file
12
roles/glpi/files/glpi.conf
Normal file
@@ -0,0 +1,12 @@
|
||||
DocumentRoot /var/www/glpi
|
||||
<Directory /var/www/glpi>
|
||||
Options Indexes FollowSymLinks MultiViews
|
||||
AllowOverride All
|
||||
Order allow,deny
|
||||
allow from all
|
||||
AuthType Basic
|
||||
</Directory>
|
||||
|
||||
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
|
||||
CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined
|
||||
ErrorLog ${APACHE_LOG_DIR}/glpi_error.log
|
9
roles/glpi/handlers/main.yml
Normal file
9
roles/glpi/handlers/main.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
- name: restart php-fpm
|
||||
service: name=php7.0-fpm state=restarted
|
||||
|
||||
- name: restart nginx
|
||||
service: name=nginx state=restarted
|
||||
|
||||
- name: restart mariadb-server
|
||||
service: name=mariadb-server state=restarted
|
160
roles/glpi/tasks/main.yml
Normal file
160
roles/glpi/tasks/main.yml
Normal file
@@ -0,0 +1,160 @@
|
||||
---
|
||||
- name: Installation des paquets
|
||||
apt:
|
||||
state: latest
|
||||
name:
|
||||
- nginx
|
||||
- php-fpm
|
||||
- php-mbstring
|
||||
- php-mysql
|
||||
- php-gd
|
||||
- php-curl
|
||||
- php-xml
|
||||
- php-apcu
|
||||
- php-ldap
|
||||
- php-imap
|
||||
- php-xmlrpc
|
||||
- php-cas
|
||||
- python3-mysqldb
|
||||
- mariadb-server
|
||||
- python3-pymysql
|
||||
- php-intl
|
||||
- php-bz2
|
||||
- php-zip
|
||||
- postfix
|
||||
- mailutils
|
||||
|
||||
- name: Changement listen dans le fichier conf de php7.3
|
||||
replace:
|
||||
dest: /etc/php/7.4/fpm/pool.d/www.conf
|
||||
regexp: 'listen = /run/php/php7.4-fpm.sock'
|
||||
replace: 'listen = 127.0.0.1:9000'
|
||||
backup: yes
|
||||
|
||||
- name: Effacement block nginx default
|
||||
file:
|
||||
path: /etc/nginx/sites-enabled/default
|
||||
state: absent
|
||||
|
||||
- name: Creation fichier block nginx
|
||||
template:
|
||||
src: block.j2
|
||||
dest: /etc/nginx/sites-enabled/glpi
|
||||
|
||||
- name: Remplacement dans le fichier de conf php du timeout
|
||||
replace:
|
||||
dest: /etc/php/7.4/fpm/php.ini
|
||||
regexp: 'max_execution_time = 30'
|
||||
replace: 'max_execution_time = 600'
|
||||
backup: yes
|
||||
|
||||
notify:
|
||||
- restart nginx
|
||||
|
||||
- name: Creation de la base de donnee mysql
|
||||
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,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
|
||||
|
||||
- name: Installation de GLPI
|
||||
unarchive:
|
||||
src: "{{ depl_url }}/{{ depl_glpi }}"
|
||||
dest: /var/www/html
|
||||
remote_src: yes
|
||||
owner: www-data
|
||||
group: www-data
|
||||
|
||||
- name: Changement des attributs {{ glpi_dir }}
|
||||
file:
|
||||
path: "{{ glpi_dir }}"
|
||||
owner: www-data
|
||||
group: www-data
|
||||
mode: 0755
|
||||
recurse: yes
|
||||
|
||||
- name: Changement des attributs {{ glpi_dir }}/plugins
|
||||
file:
|
||||
path: "{{ glpi_dir }}/plugins"
|
||||
mode: 0777
|
||||
owner: www-data
|
||||
group: www-data
|
||||
recurse: yes
|
||||
|
||||
# - name: Attribution des permissions
|
||||
# shell: chown -R www-data:www-data /var/www/html/glpi/
|
||||
|
||||
# - name: copy .my.cnf file with root password credentials
|
||||
# copy: src=.my.cnf dest=/root/tools/ansible/.my.cnf owner=root mode=0600
|
||||
|
||||
# - name: Installation de Fusioninventory pour Linux
|
||||
# unarchive:
|
||||
# src: "{{ depl_url }}/{{ depl_fusioninventory }}"
|
||||
#src: http://depl/gsbstore/fusioninventory-{{ fd_version }}.tar.bz2
|
||||
# dest: /var/www/html/glpi/plugins
|
||||
# remote_src: yes
|
||||
|
||||
- name: Creation de ficlient
|
||||
file:
|
||||
path: /var/www/html/ficlients
|
||||
state: directory
|
||||
owner: www-data
|
||||
group: www-data
|
||||
mode: 0775
|
||||
|
||||
- name: Attribution des droits nginx.index
|
||||
file:
|
||||
path: /var/www/html/index.nginx-debian.html
|
||||
owner: www-data
|
||||
group: www-data
|
||||
mode: 0775
|
||||
|
||||
- name: Installation de GLPI Agent windows x64
|
||||
get_url:
|
||||
url: "{{ depl_url }}/{{ depl_glpi_agentx64 }}"
|
||||
dest: "/var/www/html/ficlients"
|
||||
|
||||
# - name: Installation de GLPI Agent windows x86
|
||||
# get_url:
|
||||
# url: "{{ depl_url }}/{{ depl_glpi_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/
|
||||
|
||||
- name: chmod de dbdump
|
||||
shell: chmod +x /root/dbdump
|
||||
|
||||
- debug:
|
||||
msg: "Redemarrez le serveur GLPI"
|
||||
|
||||
- debug:
|
||||
msg: "L'utilisateur mysql:ID:glpi et MDP:glpi"
|
23
roles/glpi/templates/block.j2
Normal file
23
roles/glpi/templates/block.j2
Normal file
@@ -0,0 +1,23 @@
|
||||
server {
|
||||
listen 80 default_server;
|
||||
root {{ glpi_dir }};
|
||||
index index.php;
|
||||
server_name localhost;
|
||||
|
||||
location / {try_files $uri $uri/ index.php;}
|
||||
|
||||
#prise en charge PHP
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_index index.php;
|
||||
include /etc/nginx/fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SERVER_NAME $host;
|
||||
}
|
||||
|
||||
location /ficlients {
|
||||
root /var/www/html;
|
||||
autoindex on;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user