Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
floss:server_lamp_install [2015/01/02 20:47] – [Configuration initiale] villersd | floss:server_lamp_install [2018/12/03 13:32] – villersd | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Installation d'un serveur LAMP ====== | ====== Installation d'un serveur LAMP ====== | ||
- | Le serveur sera installé dans une machine virtuelle (invitée) sous VirtualBox, avec la configuration de deux CMS : Wordpress et Dokuwiki. | + | Le serveur sera installé dans une machine virtuelle (invitée) sous VirtualBox, avec la configuration de deux CMS (Wordpress et Dokuwiki) et d' |
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
Pour les " | Pour les " | ||
dans sa console, soit via ssh qui ouvre un terminal à partir d'un poste distant (sur la machine hôte par exemple). Les copier-coller fonctionne, mais avec la touche " | dans sa console, soit via ssh qui ouvre un terminal à partir d'un poste distant (sur la machine hôte par exemple). Les copier-coller fonctionne, mais avec la touche " | ||
- | Suggestion : une fois le serveur installé, n' | + | Suggestion : une fois le serveur installé, n' |
<note warning> | <note warning> | ||
===== Installation de VirtualBox ===== | ===== Installation de VirtualBox ===== | ||
- | ====Installation via ppa==== | + | ====Installation via ppa sous Linux (Ubuntu) |
Pour installer la version la plus récente, suivre les instructions de la page [[https:// | Pour installer la version la plus récente, suivre les instructions de la page [[https:// | ||
< | < | ||
- | < | + | < |
+ | (remplacer 5.2 par une nouvelle version si existante sur [[https:// | ||
< | < | ||
(remplacez la dernière variable par votre nom d' | (remplacez la dernière variable par votre nom d' | ||
< | < | ||
+ | ====Installation sous Windows ==== | ||
+ | Suivre les instructions sur [[https:// | ||
+ | |||
+ | ==== Désinstallation d'une version précédente ==== | ||
+ | Adapter le numéro de version | ||
+ | < | ||
+ | < | ||
===== Génération de clés SSH ===== | ===== Génération de clés SSH ===== | ||
L' | L' | ||
< | < | ||
- | Les clés publiques et privées sont stockées dans votre répertoire ~/.ssh. Les répertoires cachés (hidden) peuvent être visualisés dans votre gestionnaire de fichier (Nautilus) en tapant ctrl-h. La clés privées ne doit JAMAIS être communiquée. Votre clé publique | + | Les clés publiques et privées sont stockées dans votre répertoire ~/.ssh. Les répertoires cachés (hidden) peuvent être visualisés dans votre gestionnaire de fichier (Nautilus) en tapant ctrl-h. La clés privées ne doit JAMAIS être communiquée. Votre clé publique |
+ | |||
+ | <note tip>Sous Windows, utiliser : | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | Références : | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | </ | ||
===== Installation du serveur ===== | ===== Installation du serveur ===== | ||
Installation standard de Linux, Apache, MySQL, Php + outils. Base choisie : Ubuntu server | Installation standard de Linux, Apache, MySQL, Php + outils. Base choisie : Ubuntu server | ||
* [[http:// | * [[http:// | ||
* Lancement de VirtuaBox et création d'une nouvelle machine virtuelle (VM). Par exemple : | * Lancement de VirtuaBox et création d'une nouvelle machine virtuelle (VM). Par exemple : | ||
- | * Ubuntu-14.04.1_server | + | * Ubuntu-18.04.1_server |
- | * 1024 Mo | + | * 2048 Mo |
- | * Disque dur virtuel (.vdi) | + | * Disque dur virtuel (.vdi) |
- | * Ajustement (configuration) de quelques paramètres de la VM : | + | * Ajustement (menu configuration) de quelques paramètres de la VM : |
* stockage : renseigner le fichier iso dans le lecteur CD/DVD virtuel | * stockage : renseigner le fichier iso dans le lecteur CD/DVD virtuel | ||
- | * réseau : accès par pont | + | * réseau : accès par pont (si problème avec wlan0, tester eth0) |
- | * Démarrer la VM. Le live-CD virtuel de Ubuntu propose le choix de la langue (prendre français) et la touche | + | * Démarrer la VM. Le live-CD virtuel de Ubuntu propose le choix de la langue (prendre français) et la touche |
+ | * Select a langage (choisir French) | ||
+ | * Choix de votre situation géographique (Belgique, ou ailleurs...) | ||
+ | * Configurer le clavier (disposition belge ou autre...) et variante éventuelle | ||
* Renseigner des paramètres : | * Renseigner des paramètres : | ||
* nom de la machine (ex : vmix) | * nom de la machine (ex : vmix) | ||
Ligne 41: | Ligne 64: | ||
* choisir de chiffrer ou non, renseigner la timezone | * choisir de chiffrer ou non, renseigner la timezone | ||
* partitionnement : choisir " | * partitionnement : choisir " | ||
- | * appliquer les changements | + | * appliquer les changements |
* renseigner si nécessaire un serveur mandataire (proxy) | * renseigner si nécessaire un serveur mandataire (proxy) | ||
- | * Sélection de logiciels à installer | + | |
+ | | ||
* openSSH server | * openSSH server | ||
- | * LAMP server | + | * LAMP server |
* Définir un mot de passe superutilisateur de MySQL (ex : vmmysqladmin) | * Définir un mot de passe superutilisateur de MySQL (ex : vmmysqladmin) | ||
* installer GRUB sur le secteur d' | * installer GRUB sur le secteur d' | ||
Ligne 52: | Ligne 76: | ||
* sudo apt-get upgrade | * sudo apt-get upgrade | ||
* sudo apt-get update | * sudo apt-get update | ||
- | * redémarrage : sudo shutdown -r now | + | * redémarrage : sudo reboot |
+ | |||
+ | <note tip> | ||
==== Vérification du fonctionnement et configuration complémentaire ==== | ==== Vérification du fonctionnement et configuration complémentaire ==== | ||
* Tentez de vous connecter à votre serveur vituel via ssh à partir de votre machine hôte pas la commande "ssh vmuser@ip" | * Tentez de vous connecter à votre serveur vituel via ssh à partir de votre machine hôte pas la commande "ssh vmuser@ip" | ||
* création d'un utilisateur administrateur "de secours" | * création d'un utilisateur administrateur "de secours" | ||
- | * ajout de la clé publique SSH : " | + | * à partir d'une autre machine sous Linux, |
+ | * ajout de la clé publique sous Windows : FIXME | ||
* test du serveur web (apache) : tapez " | * test du serveur web (apache) : tapez " | ||
- | * fichier de configuration de php dans / | ||
- | ===php === | + | === php === |
- | Installation complémentaire (utilité incertaine par rapport à l' | + | |
- | < | + | |
* test de php : sudo nano / | * test de php : sudo nano / | ||
+ | * fichier de configuration de php dans / | ||
+ | * Installation complémentaire (utilité incertaine par rapport à l' | ||
+ | * Ensuite : sudo service apache2 restart | ||
+ | |||
+ | FIXME (//cf// ref comme [[https:// | ||
+ | |||
=== Groupe www-data === | === Groupe www-data === | ||
Ligne 75: | Ligne 106: | ||
SI ré-installation : | SI ré-installation : | ||
< | < | ||
- | (choisir serveur apache2) | + | (choisir |
- | * le mot de passe superutilisateur de MySQL sera demandé | + | * le mot de passe superutilisateur de MySQL sera demandé |
* user : phpmyadmin | * user : phpmyadmin | ||
* mot de passe de connexion : vmuser_phpmyadmin_mdp | * mot de passe de connexion : vmuser_phpmyadmin_mdp | ||
Ligne 85: | Ligne 116: | ||
* sudo service apache2 restart | * sudo service apache2 restart | ||
* accéder à http:// | * accéder à http:// | ||
+ | |||
+ | ===== Installation de OpenLDAP et FusionDirectory ===== | ||
+ | Référence utilisée : [[https:// | ||
+ | |||
+ | cf aussi (?) [[https:// | ||
+ | |||
+ | * [[https:// | ||
+ | * Vérification du [[https:// | ||
+ | * "cat / | ||
+ | * "cat / | ||
+ | < | ||
+ | 127.0.1.1 vm.be vmix | ||
+ | </ | ||
+ | * sudo apt-get install slapd (mot de passe de l' | ||
+ | * sudo apt-get install ldap-utils | ||
+ | * sudo dpkg-reconfigure slapd | ||
+ | * omettre la configuration... --> No | ||
+ | * base DN : vm.be | ||
+ | * nom de l' | ||
+ | * mdp = adminvmbe | ||
+ | * module HDB | ||
+ | * Faut-il supprimer la base de données à la purge du paquet ? --> No | ||
+ | * déplacer l' | ||
+ | * Faut-il autoriser le protocole LDAPv2 ? | ||
+ | * sudo / | ||
+ | * sinon : "sudo / | ||
+ | * [[https:// | ||
+ | * Ubuntu 14.04 : il manque un paquet en dépôt. Télécharger [[http:// | ||
+ | * pour y arriver, il faut éventuellement faire ceci : | ||
+ | * sudo apt install smarty3 gettext | ||
+ | * sudo apt-get -f install | ||
+ | * Ubuntu 14.04 : il est nécessaire d' | ||
+ | * activer avec "sudo php5enmod imap" | ||
+ | * relancer apache : "sudo / | ||
+ | |||
+ | * Ubuntu 14.04 : ajouter des dépôts via "sudo nano / | ||
+ | < | ||
+ | # fusiondirectory repository | ||
+ | deb http:// | ||
+ | # fusiondirectory debian-extra repository | ||
+ | deb http:// | ||
+ | </ | ||
+ | * sudo apt update | ||
+ | * apt-cache search fusiondirectory | more | ||
+ | * gpg --keyserver keys.gnupg.net --recv-key 62B4981F | ||
+ | * gpg --export -a " | ||
+ | * sudo apt-key add FD-archive-key | ||
+ | * sudo apt-get install fusiondirectory-schema schema2ldif | ||
+ | * sudo fusiondirectory-insert-schema | ||
+ | * sudo fusiondirectory-insert-schema -l | ||
+ | * [[https:// | ||
+ | * aptitude search fusiondirectory-plugin | ||
+ | * sudo aptitude install fusiondirectory-plugin-systems fusiondirectory-plugin-systems-schema | ||
+ | * sudo fusiondirectory-insert-schema -i / | ||
+ | * [[https:// | ||
+ | * sudo apt-get install fusiondirectory | ||
+ | * [[http:// | ||
+ | * suivre les instructions de la page web pour installer un fichier : "echo -n rohnfpdec99himh1d2osf2gsr6 > / | ||
+ | * next | ||
+ | * Sélectionner le langage | ||
+ | * Vérification de php | ||
+ | * ajout : sudo apt install php-mdb2 | ||
+ | * next | ||
+ | * Paramètres de connexion : | ||
+ | * DN : cn=admin pwd = adminvmbe | ||
+ | |||
+ | <note tip>En cas de problème, pensez à redémarrer la machine virtuelle !</ | ||
+ | |||
+ | * Step 5 : Schema checking of LDAP directory | ||
+ | |||
+ | <note tip> | ||
+ | Si erreur " | ||
+ | |||
+ | * Step 6 : Generic settings | ||
+ | * Step 7 : Customization of special parameters (timezone à changer) | ||
+ | * Step 8 : Tweaking of some core behaviour | ||
+ | * LDAP inspection | ||
+ | * migrate | ||
+ | * admin avec pwd : fd-admin | ||
+ | * migrate | ||
+ | * refaire "check again" | ||
+ | * Finish - write the configuration file | ||
+ | * télécharger fusiondirectory.conf et le placer dans / | ||
+ | * sudo fusiondirectory-setup --check-config | ||
+ | * Checking FusionDirectory' | ||
+ | * / | ||
+ | * / | ||
+ | * yes | ||
+ | * sudo fusiondirectory-setup --check-config | ||
+ | * Rights on / | ||
+ | * -rw-r----- 1 root www-data 1170 Jun 25 08:09 fusiondirectory.conf | ||
+ | * Ecran de logon avec fd-admin !! | ||
+ | |||
+ | sudo fusiondirectory-setup --check-config → Checking FusionDirectory' | ||
+ | |||
===== Installation de wordpress ===== | ===== Installation de wordpress ===== | ||
Ligne 149: | Ligne 275: | ||
* fichiers : sudo find . ! -type d -exec chmod 660 {} \; | * fichiers : sudo find . ! -type d -exec chmod 660 {} \; | ||
* répertoires : sudo find . -type d -exec chmod 770 {} \; | * répertoires : sudo find . -type d -exec chmod 770 {} \; | ||
- | * en cas de migration, effacement de fichiers obsolètes : sudo grep -Ev ' | + | * en cas de migration, effacement de fichiers obsolètes : sudo grep -Ev '^(%%$%%|#)' data/ |
- | * à partir d'un autre PC : installation | + | * à partir d'un autre PC : installation |
* http:// | * http:// | ||
* FIXME procédure de backup de dokuwiki via cron | * FIXME procédure de backup de dokuwiki via cron | ||
Ligne 172: | Ligne 298: | ||
* modification des types mime (autoriser csv) : sudo nano / | * modification des types mime (autoriser csv) : sudo nano / | ||
+ | ===== Backups automatiques ===== | ||
+ | ==== Pré-requis ==== | ||
+ | * serveur LAMP installé | ||
+ | * accès ssh (y compris clés) | ||
+ | * noms et localisations connus des fichiers de configurations, | ||
+ | * un autre serveur accessible pour le backup distant (remote server) | ||
+ | |||
+ | ==== Constitution du backup local ==== | ||
+ | À partir du répertoire home de l' | ||
+ | < | ||
+ | mkdir backups | ||
+ | cd backups | ||
+ | touch -a backup.sh | ||
+ | chmod u+x backup.sh | ||
+ | mkdir files | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | #!/bin/sh | ||
+ | |||
+ | THESITE="" | ||
+ | THEDB=" | ||
+ | THEDBUSER=" | ||
+ | THEDBPW=" | ||
+ | THEDATE=`date +%F-%T` | ||
+ | |||
+ | # backup de la base de données | ||
+ | mysqldump -u $THEDBUSER -p${THEDBPW} $THEDB | gzip > ~/ | ||
+ | |||
+ | # backup des fichiers du site | ||
+ | tar -czf ~/ | ||
+ | |||
+ | # éliminer les fichier vieux de plus de 5 jours | ||
+ | find / | ||
+ | find / | ||
+ | |||
+ | </ | ||
+ | |||
+ | * Il s'agit de mettre le script backup.sh rendu exécutable dans le cron : utiliser la commande d' | ||
+ | * < | ||
+ | |||
+ | ==== Sauvegarde distante ==== | ||
+ | |||
+ | En mode " | ||
+ | |||
+ | < | ||
+ | # synchronisation par rsync (push) | ||
+ | rsync -a ~/ | ||
+ | </ | ||
+ | Mode " | ||
===== Références ===== | ===== Références ===== | ||
Ligne 178: | Ligne 354: | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
===== Difficultés ===== | ===== Difficultés ===== | ||
* [[https:// | * [[https:// | ||