-ft- installation - apache et mariadb sur debianapache et mariadb sur debian 16 alexandre petitjean...
TRANSCRIPT
- FT- Installation - Apache et MariaDB sur debian
16
Alexandre PETITJEAN @M3TALzero1
Recap des mot de passe et des VMs 3
Préparation du serveur 4 Vérification de la configuration du serveur 4
Vérifier les interfaces : 4 Vérifier la table de routage : 4
Installation du serveur MariaDB 5 Installation du serveur mariadb 5
Mise à jour de la liste des paquets en cache 5 Installez la base de données et reconfigurez-la : 5 Vérifiez l'état du services et jouez avec le processus 6
Les Fichiers de configuration du serveur mariadb 7 État des connexions 7
Vérifions l'état de ces connexions : 8 Testons l'accès aux bases de données 8
Installation du service web 9 Installation les paquets du serveur web (apache) 9 Installation de l'interpréteur php 9 Installation des modules pour l'interface php/apache 9 Installation du middleware php mysql/mariadb 9
Installation de phpmyadmin 10 Création des utilisateurs 10 Création de l’utilisateur temporaire 10 Installez le paquet 10 Suppression du compte admin temporaire 11
Installation du serveur FTP 13 Installation du paquet 13 Configuration du serveur 13
Configuration du routeur 15
Configuration des machines clients 16
Installation du serveur GLPI 17 Téléchargement de GLPI 17 Configuration du virtualhost 17 Configuration de GLPI 18
Installation de OCS Serveur 25
Installation du plugin OCS pour GLPI 33
Installation des clients ocs 37
Alexandre PETITJEAN @M3TALzero1
Windows 37 Linux 38 Import vers GLPI 39
1) Recap des mot de passe et des VMs
● Serveur GLPI : ○ login : root / root ○ ip : 192.168.0.10 ○ glpi : 192.168.0.10:8000 ○ ocs inventory : 192.168.0.10/ocsreports/
● Routeur :
○ login : root / root ○ ip : 192.168.0.100
● Client Debian :
○ login : root / root ○ ip : 192.168.0.2
● Client Windows :
○ login : admin.local / motdepasse ○ ip : 192.168.0.3
● Comptes pour GLPI :
○ administrateur : glpi / qjuW*h7y ○ tech : tech / P@ssw0rd ○ normal : normal / motdepasse ○ post-only : post-only / bequiet
● Compte OCS Inventory ○ admin / admin
Alexandre PETITJEAN @M3TALzero1
2)Préparation du serveur
a) Vérification de la configuration du serveur
Vérifier les interfaces :
ip addr show
Quelle est l'entrée qui permet de savoir que l'on dispose bien d'une adresse ip v4?
Vérifier la table de routage :
ip route show
Alexandre PETITJEAN @M3TALzero1
3)Installation du serveur MariaDB a) Installation du serveur mariadb
Mise à jour de la liste des paquets en cache Commande :
apt update
Installez la base de données et reconfigurez-la : Expliquez le rôle des commandes suivantes (avant toute utilisation) : apt search mariadb recherche le paquet “mariadb” dans la liste des paquet du miroir.
apt install mariadb-server
Installe le paquet MariaDB
Expliquez le rôle de la commande suivante ?
Alexandre PETITJEAN @M3TALzero1
mariadb --version Donne la version de mariadb installé en local sur le serveur . Ici nous somme en 15.1.
Vérifiez l'état du services et jouez avec le processus A l'aide du man et des commandes ci-dessous,
man kill man signal
kill -L
Répondez aux questions suivantes :
• Quels sont les signaux associés à 9 et à 15 . Quelles différences existe-t-il entre ces signaux . 9 = SIGKILL et 15 = SIGTERM
• Quel est le signal utilisé par défaut par la commande Kill. TERM • Quel est le signal qui permet de forcer la fin d'un processus
SIGKILL
systemctl status mariadb.service
Alexandre PETITJEAN @M3TALzero1
kill 2879 systemctl status mariadb.service
- valeur de retour : inactive - déroulement de l'arrêt : - état actuel du processus : down
Relancez le service :
systemctl start mariadb.service
et vérifiez de nouveau son état :
systemctl status mariadb.service
b) Les Fichiers de configuration du serveur mariadb Retrouvez le fichier 50-server.cnf, et identifiez : ◦ le port par défaut d'écoute du serveur : 3306 ◦ l'interface sur laquelle il écoute : localhost
c) État des connexions
Alexandre PETITJEAN @M3TALzero1
Vérifions l'état de ces connexions : A quoi sert la commande , pourquoi la lancer ?
ss -ln
ss = récupère les stats du socket. -l = affiche uniquement les sockets en écoute -n = ne résout pas les noms de services Complétez la commande pour ne filtrer que les connexions tcp ss -lnt
Identifiez la connexion du serveur mariadb.
Testons l'accès aux bases de données
Alexandre PETITJEAN @M3TALzero1
4)Installation du service web a) Installation les paquets du serveur web (apache)
apt install apache2
b) Installation de l'interpréteur php
apt install php7.0
c) Installation des modules pour l'interface php/apache
apt install libapache2-mod-php
d) Installation du middleware php mysql/mariadb Qu'est-ce qu'un middleware ? Le middleware fait la liaison entre le software et le hardware.
apt install php7.0-mysql
Alexandre PETITJEAN @M3TALzero1
5) Installation de phpmyadmin
Création des utilisateurs
mariadb -u root -p
CREATE USER 'admintmp'@'localhost';
GRANT ALL ON *.* TO 'admintmp'@'localhost' WITH GRANT OPTION;
Création de l’utilisateur temporaire
CREATE USER 'admindb'@'localhost' IDENTIFIED BY 'P@ssw0rd';
GRANT ALL ON *.* TO 'admindb'@'localhost' with GRANT OPTION
exit
Installez le paquet
apt install phpmyadmin
L'installation va surement crash, il faut donner le user ‘admintmp’ que l’on vient de créer.
Alexandre PETITJEAN @M3TALzero1
dpkg-reconfigure phpmyadmin
Suppression du compte admin temporaire
mariadb -u root -p
On peut voir les privilèges de notre utilisateur.
SHOW GRANTS FOR 'admintmp'@'localhost';
On supprime les privilèges.
REVOKE ALL, GRANT OPTION ON *.* FROM 'admintmp'@'localhost';
SHOW GRANTS FOR 'admintmp'@'localhost';
SELECT user FROM mysql.user;
DROP user 'admintmp'@'localhost';
SELECT user FROM mysql.user;
exit
Alexandre PETITJEAN @M3TALzero1
Alexandre PETITJEAN @M3TALzero1
6) Installation du serveur FTP a) Installation du paquet
apt install proftpd-basic
systemctl status proftpd.service
# si le service n'est pas lancé :
systemctl start proftpd.service
# Ajout au lancement debian
systemctl enable proftpd
b) Configuration du serveur
nano /etc/proftpd/proftpd.conf
# Nom du serveur qui s'affiche
ServerName "Debian : ProFTPD Default Server" # Serveur Autonome (ne pas modifier)
ServerType standalone
# Activer le serveur par défaut (Si pas de "VirtualHost"). Si l'on
configure des virtualhosts, il est préférable de laisser à cette valeur
à off. Ainsi chaque hôte virtuel aura son répertoire de transfert
configuré individuellement.
DefaultServer on
# Est-ce qu'on a besoin d'un shell valide pour se connecter
RequireValidShell off
# Port d'écoute (21 par défaut)
Port 21
# Permissions d'un dossier ou d'un fichier créé via FTP
Umask 022
# Nombre de connexions simultanées au FTP
MaxInstances 30
Alexandre PETITJEAN @M3TALzero1
# Lancer le démon ftp sous cet utilisateur et groupe
User proftpd
Group nogroup
# Racine du FTP ( ~ correspond au fait que l'utilisateur est cloisonné dans son dossier personnel ~ ) ou un sous dossier ex : ~/ftp
DefaultRoot ~
# Generally files are overwritable.
AllowOverwrite on
# Désactiver la commande CHMOD via le FTP <Limit SITE_CHMOD>
DenyAll
</Limit>
# Exemple de dossier anonyme sans possibilité d'uploader
<Anonymous ~ftp>
User ftp
Group ftp
# Possibilité de se connecter avec les utilisateurs "anonymous" et
"ftp".
UserAlias anonymous ftp
# Limiter le nombre de connexions anonymes
MaxClients 10
# Désactiver la commande WRITE (d'écriture) pour les utilisateurs
anonymes
<Limit WRITE>
DenyAll
<Limit>
</Anonymous>
On configure le virtualhost
nano /etc/proftpd/virtuals.conf
Alexandre PETITJEAN @M3TALzero1
7) Configuration du routeur
Alexandre PETITJEAN @M3TALzero1
8) Configuration des machines clients
nano etc/network/interfaces
Alexandre PETITJEAN @M3TALzero1
9) Installation du serveur GLPI
a) Téléchargement de GLPI
cd /var/www wget
"https://github.com/glpi-project/glpi/releases/download/9.2/glpi9.2.tgz"
tar -xvzf glpi-9.2.tgz
rm glpi-9.2.tgz
b) Configuration du virtualhost
cd /etc/apache2/site-available/ cp 000-default.conf site-glpi.conf
nano site-glpi.conf
cd .. nano ports.conf
Alexandre PETITJEAN @M3TALzero1
a2ensite
systemctl restart apache2.service
ss -ln
c) Configuration de GLPI On se connecte à l’adresse 192.168.0.10:8000
Alexandre PETITJEAN @M3TALzero1
Il y a plein d’erreur
On installe donc les plug-in
apt install php-ldap php-imap php-apcu php-xmlrpc
Si besoin, on active les modules avec a2enmod
a2enmod ldap
Alexandre PETITJEAN @M3TALzero1
Il reste toujours des erreurs, cette fois ci au niveau des droits de notre utilisateur
chmod -R www-data glpi/
Alexandre PETITJEAN @M3TALzero1
Il faut renseigner l’adresse du serveur Maridb et et créer un utilisateur glpidb pour Mariadb.
CREATE USER 'glipdb'@'%' IDENTIFIED BY 'P@ssw0rd';
GRANT ALL ON *.* TO 'glipdb'@'%' WITH GRANT OPTION;
Alexandre PETITJEAN @M3TALzero1
On va créer une nouvelle base de données
Alexandre PETITJEAN @M3TALzero1
Alexandre PETITJEAN @M3TALzero1
On a un message d’erreur lors de la connexion !
on va commencer par changer les mot de passe des utilisateurs ! Il faut aller dans l’onglet Administration > Utilisateurs.
En cas de grosse erreur (du genre : vous avez oublié votre propre accès à GLPI...), pour « relancer » cette procédure d’installation, il suffit d’effacer le fichier suivant : glpi/config/config_db.php
Alexandre PETITJEAN @M3TALzero1
10) Installation de OCS Serveur
cd /usr/src wget
"https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/dow
nload/2.5/OCSNG_UNIX_SERVER_2.5.tar.gz"
unzip master.zip
cd OCSInventory-Server-master sh setup.sh
Alexandre PETITJEAN @M3TALzero1
Alexandre PETITJEAN @M3TALzero1
UNE ERREUR !!!!
en effet, comme on peut le voir sur le GitHub il y a des prérequis
on va donc tester nos versions des différents services et installer ce qui manque. on commencera par les mise a jour.
apt update
apt upgrade
Alexandre PETITJEAN @M3TALzero1
Ensuite on regarde si on a les bonnes versions des services.
mysql --version
perl -v
apachectl -v
apt install libxml-simple-perl libperl5.24 libdbi-perl libdbd-mysql-perl
libapache-dbi-perl libnet-ip-perl libsoap-lite-perl libarchive-zip-perl
make build-essential libmojolicious-perl libplack-perl
cpan install XML::ENtities
Alexandre PETITJEAN @M3TALzero1
Alexandre PETITJEAN @M3TALzero1
On n’a pas installé le module Apache :: SOAP, ce n’est pas grave, on ne va pas faire de requête en SOAP vers notre serveur OCS, une erreur apparaîtra dans les log d’apache mais rien de grave.
On redémarre le service apache
a2enconf z-ocsinventory-server
a2enconf ocsinventory-reports
# Recharger les fichier :
systemctl reload apache2.service
# si besoin relancer le serveur
systemctl restart apache2.service
Alexandre PETITJEAN @M3TALzero1
On peut se connecter a ocs report depuis la vm Windows 192.168.0.10/ocsreports/
Il faudra créer un utilisateur mariadb :
mariadb -u root -p root
GRANT ALL PRIVILEGES ON *.* TO 'ocs'@'localhost' IDENTIFIED BY 'ocs' WITH GRANT OPTION;
C’est fini !
Alexandre PETITJEAN @M3TALzero1
Il y a des mise a jours a faire
On va devoir faire du nettoyage après l’installation.
rm /usr/share/ocsinventory-reports/ocsreports/install.php
systemctl restart apache2.service
Alexandre PETITJEAN @M3TALzero1
11) Installation du plugin OCS pour GLPI
On va chercher le plugin sur le site de glpi : https://plugins.glpi-project.org/#/
https://plugins.glpi-project.org/#/plugin/ocsinventoryng
Alexandre PETITJEAN @M3TALzero1
Il est compatible avec GLPI version 9.4. On le télécharge sur le serveur
cd /var/www/glpi/plugins/
wget
"https://github.com/pluginsGLPI/ocsinventoryng/releases/download/1.6.0/g
lpi-ocsinventoryng-1.6.0.tar.gz"
on retourne sur l’interface de glpi. dans Administration > Plugin. On clique sur installer puis sur activer.
Alexandre PETITJEAN @M3TALzero1
Dans Outils > OCS . On fait un nouveau serveur.
on renseignera l’utilisateur ocs avec son mot de passe.
Dans Outils > OCS > Configuration du serveur. On a ce message.
Se connecter sur OCS Dans Configuration > générale configuration. Il faut activer le traçage.
Alexandre PETITJEAN @M3TALzero1
On update est c’est bon ! On recharge la page sur GLPI !
Alexandre PETITJEAN @M3TALzero1
12) Installation des clients ocs a) Windows
On va sur le site de OCS https://www.ocsinventory-ng.org/fr/#telechargement On télécharge le client windows et on l'extrait à la racine du disque. installation :
Après l’installation on va check le service
Alexandre PETITJEAN @M3TALzero1
le service est bien démarré.
b) Linux https://github.com/OCSInventory-NG/UnixAgent/releases ou
apt install ocsinventory-agent
cd /usr/src/
wget
“https://github.com/OCSInventory-NG/UnixAgent/releases/download/v2.4.2/Ocsinventory-Unix-Agent-2.4.2.tar.gz” Ocsinventory-Unix-Agent-2.4.2/./ocsinventory-agent --devlib
--server http://192.168.0.10/ocsinventory
Alexandre PETITJEAN @M3TALzero1
13) Import vers GLPI Dans GLPI > Outils > OCS > import de l’inventaire > importation de nouveaux ordinateurs
Alexandre PETITJEAN @M3TALzero1
Maintenant il suffit de faire importer puis d’aller dans l’onglet parc
Alexandre PETITJEAN @M3TALzero1