floss:config_ubuntu_server

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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:config_ubuntu_server [2020/01/08 00:16] villersdfloss:config_ubuntu_server [2020/08/18 12:33] – [Installation de VirtualBox sous Linux (Ubuntu)] villersd
Ligne 1: Ligne 1:
 ====== Configuration type d'un serveur sous Ubuntu ====== ====== Configuration type d'un serveur sous Ubuntu ======
-  * 06/01/2020 19.10 Eoan Ermine : [[http://releases.ubuntu.com/19.10/]] : [[http://releases.ubuntu.com/19.10/ubuntu-19.10-live-server-amd64.iso|64-bit PC (AMD64server install image]] +  * Configuration pour usage général et scientifique 
-  * 07/01/2020 18.04 Bionic Beaver [[https://ubuntu.com/download/server/thank-you?version=18.04.3&architecture=amd64]]+  * Téléchargement : [[https://ubuntu.com/download/server]], dernière version Ubuntu Server 20.04 LTS Focal Fossa, architecture AMD64 (03/07/2020) 
 +  * Gravure du fichier iso, ou préparation d'une clé USB via Balena-Etcher (par exemple
 +  * Versions précédentes : 
 +    * [[config_ubuntu_server-18.04|Configuration type d'un serveur sous Ubuntu Server 18.04]], Bionic Beaver 
 +    * [[config_ubuntu_server-16.04|Configuration type d'un serveur sous Ubuntu Server 16.04]], Xenial Xerus 
   * références, tutoriels,...   * références, tutoriels,...
 +    * [[https://www.howtoforge.com/tutorial/ubuntu-lts-minimal-server/|How to Install Ubuntu 20.04 LTS (Focal Fossa) Server]]
     * [[https://hibbard.eu/install-ubuntu-virtual-box/|How to Install Ubuntu Server on VirtualBox]] 11 Dec 2019, James Hibbard     * [[https://hibbard.eu/install-ubuntu-virtual-box/|How to Install Ubuntu Server on VirtualBox]] 11 Dec 2019, James Hibbard
     * [[https://doc.ubuntu-fr.org/serveur]]     * [[https://doc.ubuntu-fr.org/serveur]]
 +    * [[https://forum.ubuntu-fr.org/viewtopic.php?id=1990066]] Installation Apache Mysql PHP phpmyadmin => LAMPP (+ vidéo)
 +    * [[https://blog.sodifrance.fr/installer-une-machine-virtuelle-avec-virtualbox/]] : installation d'une VM Ubuntu (serveur LAMP) avec VirtualBox sous Windows, avec processeur i5 et 8 Go RAM
 +  * commandes intéressantes
 +    * [[https://www.rosehosting.com/blog/list-all-installed-packages-with-apt-on-ubuntu/|Apt Get List Installed | List Installed Packages with Apt on Ubuntu]]
  
-===== Installation de VirtualBox =====+===== Installation de VirtualBox sous Linux (Ubuntu) =====
  
   * [[wp>fr:Oracle_VM_VirtualBox|Oracle VM VirtualBox]]   * [[wp>fr:Oracle_VM_VirtualBox|Oracle VM VirtualBox]]
Ligne 25: Ligne 35:
   * remplacez le numéro 6.1 par une nouvelle version si existante sur virtualbox.org   * remplacez le numéro 6.1 par une nouvelle version si existante sur virtualbox.org
   * remplacez la variable %%$%%USER par votre nom d'utilisateur Linux   * remplacez la variable %%$%%USER par votre nom d'utilisateur Linux
-  * ext pack : remplacer 6.0.14 en fonction de la version indiquée [[https://www.virtualbox.org/wiki/Downloads|ici]]+  * ext pack : remplacer 6.1.en fonction de la version indiquée [[https://www.virtualbox.org/wiki/Downloads|ici]]
 </note> </note>
 <code> <code>
Ligne 39: Ligne 49:
 sudo usermod -G vboxusers -a $USER sudo usermod -G vboxusers -a $USER
  
-wget https://download.virtualbox.org/virtualbox/6.1.0/Oracle_VM_VirtualBox_Extension_Pack-6.1.0.vbox-extpack+wget https://download.virtualbox.org/virtualbox/6.1.12/Oracle_VM_VirtualBox_Extension_Pack-6.1.12.vbox-extpack
  
 ou : ou :
Ligne 46: Ligne 56:
 </code> </code>
  
-===== Mise à jour de VirtualBox ===== +==== Mise à jour de VirtualBox ==== 
-Pour mettre à jour, simplement désinstaller, puis redéfinir des sources actualisées, puis réinstaller : Exécuter les commandes suivantes pour la désinstallation :+Si les sources sont identiques, et qu'il s'agit d'une mise à jour mineure, effectuer simplement : 
 +  sudo apt upgrade 
 + 
 +Sinon, pour mettre à jour, simplement désinstaller, puis redéfinir des sources actualisées, puis réinstaller : Exécuter les commandes suivantes pour la désinstallation :
   sudo apt remove --purge virtualbox virtualbox-*   sudo apt remove --purge virtualbox virtualbox-*
   sudo apt autoremove   sudo apt autoremove
Ligne 54: Ligne 67:
   sudo apt update   sudo apt update
  
-Ensuite reprendre l'installation.+Ensuite reprendre l'installation. Lors du démarrage de VirtualBox, il est très probable qu'une nouvelle version du pack d'extension sera proposée. Suivre simplement les instructions, et chaîner cela à l'exécution de VirtualBox plutôt que de sauvegarder le pack d'extension.
  
 ===== Génération de clés SSH ===== ===== Génération de clés SSH =====
 L'[[http://doc.ubuntu-fr.org/ssh#authentification_par_un_systeme_de_cles_publiqueprivee|authentification par un système de clés publique/privée]] vous sera très utile pour gérer vos serveurs. Générez ces clés avec la commande suivante : L'[[http://doc.ubuntu-fr.org/ssh#authentification_par_un_systeme_de_cles_publiqueprivee|authentification par un système de clés publique/privée]] vous sera très utile pour gérer vos serveurs. Générez ces clés avec la commande suivante :
 <code>ssh-keygen -t rsa</code> <code>ssh-keygen -t rsa</code>
-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 devra être placée dans le fichier ~/.ssh/authorized_keys des serveurs auxquels vous souhaitez accéder (voir plus loin). +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, Nemo,...) en tapant ctrl-h. La clés privées ne doit JAMAIS être communiquée. Votre clé publique devra être placée dans le fichier ~/.ssh/authorized_keys des serveurs auxquels vous souhaitez accéder via la commande ssh-copy-id -i ~/.ssh/id_rsa.pub username@ip_adress_or_dns_server (voir plus loin). 
  
 <note tip>Sous Windows, utiliser : <note tip>Sous Windows, utiliser :
Ligne 71: Ligne 84:
 </note> </note>
  
-===== Installation du serveur - tests avec 19.10 ===== +===== Installation du serveur sous Ubuntu 18.04 ===== 
-Installation standard de Linux, Apache, MySQL, Php + outils. Base choisie : Ubuntu server+<note important>VM VirtualBox testée sur un PC sous Linux avec processeur i7. Le fonctionnement devrait être aussi OK sous Windows ou mac, et avec un processeur i5.</note> 
 + 
 +Installation standard de Linux, Apache, MySQL, Php + outils. Base choisie : Ubuntu server. Un test préalable avec la version 19.10 aboutit à des difficultés, donc à une balance coût/bénéfice peu intéressante.
   * [[http://www.ubuntu.com/download/server|téléchargement de Ubuntu server]]   * [[http://www.ubuntu.com/download/server|téléchargement de Ubuntu server]]
   * 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-19.10_server (type Linux et version 64 bit)+    * Ubuntu-18.04_server (type Linux et version 64 bit)
     * 2048 Mo     * 2048 Mo
     * Disque dur virtuel (.vdi) 10 Go (dynamiquement alloué)     * Disque dur virtuel (.vdi) 10 Go (dynamiquement alloué)
Ligne 83: Ligne 98:
   * Démarrer la VM. Le live-CD virtuel de Ubuntu propose le choix de la langue (prendre français) et la touche F3 permet de choisir le clavier (par exemple belge). Sélectionner "Installer Ubuntu Server".   * Démarrer la VM. Le live-CD virtuel de Ubuntu propose le choix de la langue (prendre français) et la touche F3 permet de choisir le clavier (par exemple belge). Sélectionner "Installer Ubuntu Server".
     * Select a langage (choisir Français/French)     * Select a langage (choisir Français/French)
-    * ("installer update available" → Update to the new installer) → option en 19.10+    * ("installer update available" → Update to the new installer) → option lors du test avec la 19.10
     * Configurer le clavier (disposition belge/Belgian ou autre...) et variante éventuelle     * Configurer le clavier (disposition belge/Belgian ou autre...) et variante éventuelle
     * Connections réseau → accepter la proposition détectée     * Connections réseau → accepter la proposition détectée
Ligne 126: Ligne 141:
 ==== Serveur LAMP ==== ==== Serveur LAMP ====
   * Références   * Références
-    * [[https://doc.ubuntu-fr.org/lamp]] +    * [[https://doc.ubuntu-fr.org/lamp|Serveur web - LAMP]], acronyme pour Linux, Apache, MySQL|MariaDB, PHP (description globale) 
-    * [[https://phoenixnap.com/kb/how-to-install-lamp-stack-on-ubuntu]] +      * [[https://phoenixnap.com/kb/how-to-install-lamp-stack-on-ubuntu]] 
-    * [[https://doc.ubuntu-fr.org/apache2]] configuration de apache2 +    * [[https://doc.ubuntu-fr.org/apache2]] configuration de Apache 2 (serveur web) 
-    * [[https://doc.ubuntu-fr.org/mysql]] +    * Serveur de base de données SGBD : soit MySQL, soit MariaDB, version alternative, sous licence GPL et 100% compatible avec MySQL 
-  * sudo apt install apache2 +      * [[https://doc.ubuntu-fr.org/mysql]] configuration de MySQL 
-  * test du serveur apache : [[http://ip_adress]] +      * [[https://doc.ubuntu-fr.org/mariadb]] configuration de MariaDB 
-  * sudo apt install php libapache2-mod-php +    * [[https://doc.ubuntu-fr.org/phpmyadmin]] phpMyAdmin est une interface web en PHP pour administrer à distance les SGBD MySQL 
-  * sudo nano /var/www/html/phpinfo.php et ajouter <?php phpinfo(); ?> comme seule ligne à ce fichier. Sauver et test dans un navigateur : [[http://ip_adress/phpinfo.php]] +    * [[https://doc.ubuntu-fr.org/msmtp]] envoi d'emails par SMTP : solution idéale si vous avez besoin que votre serveur vous envoie les courriels de notifications sans avoir à mettre en place une solution lourde. 
-  * sudo apt install php-curl php-gd php-intl php-json php-mbstring php-xml php-zip+  * **sudo apt install apache2** 
 +  * test du serveur apache : [[http://ip_adress]] (serveur de pages web statiques) 
 +  * **sudo apt install php libapache2-mod-php** 
 +  * **sudo nano /var/www/html/phpinfo.php et ajouter <?php phpinfo(); ?>** comme seule ligne à ce fichier. Sauver et test dans un navigateur : [[http://ip_adress/phpinfo.php]] 
 +  *  La configuration de PHP se fait via un fichier php.ini localisé sous Bionic (Ubuntu 18.04) ici : /etc/php/7.2/apache2/php.ini 
 +  * Paquets PHP souvent utiles (des modules additionnels pourront être installés en fonction des logiciels installés sur le serveur ainsi que leurs extensions/plugins) : 
 +    * **sudo apt install php-curl php-gd php-intl php-json php-mbstring php-xml php-zip**
   * Remarques   * Remarques
     * php-mcrypt a été enlevé depuis php 7.2     * php-mcrypt a été enlevé depuis php 7.2
-    * [[https://www.adminer.org/|Adminer]] remplace phpmyadmin+    * [[https://www.adminer.org/|Adminer]] remplace phpmyadmin dans la version 19.10. Il semblerait qu'il y aura un retour à phpmyadmin avec la version 20.04. Poursuivre l'utilisation de phpmyadmin semble donc pertinent, en respectant le nouveau mode d'identification du root de MySQL en sudo 
 +  * [[https://doc.ubuntu-fr.org/tutoriel/lamp_repertoires_de_travail|Serveur LAMP - Créer un/des répertoires de travail]] + intérêt d'ajouter l'utilisateur au groupe www-data + [[https://www.cyberciti.biz/faq/ubuntu-add-user-to-group-www-data/|lien2]] 
 +    * [[https://askubuntu.com/questions/1115979/apache-permissions-to-allow-both-user-and-web-server-to-edit-var-www]] 
 +    * ajouter l'utilisateur vmuser au groupe www-data : **sudo usermod -a -G www-data vmuser** 
 +    * **Un CMS sans base de données comme DokuWiki ne nécessite pas l'installation d'un SGBD (MySQL/MariaDB) comme expliqué ci-après !**
   * sudo apt install php-mysql   * sudo apt install php-mysql
-  * sudo apt install mysql-server+  * installation soit de MySQL, soit de MariaDB (pour l'essentiel, suivre la documentation de MySQL) 
 +    * sudo apt install mysql-server 
 +    * sudo apt install mariadb-server
   * Test local de MySQL :   * Test local de MySQL :
     * sudo mysql     * sudo mysql
       * SHOW DATABASES       * SHOW DATABASES
-  * sudo mysql_secure_installation (yes... validation "medium") +  * Remarque : mysql_secure_installation (renseigné dans certains tutorielsne doit pas être utilisé 
-  * sudo apt-get install adminer +  * sudo service apache2 restart  (restart Apache) ou sudo systemctl restart apache2
-  * sudo service apache2 restart  (restart Apache)+
   * Pour avoir un accès global aux bases de données depuis un même compte, la solution conseillée est de créer un nouvel utilisateur et de lui attribuer tous les privilèges :   * Pour avoir un accès global aux bases de données depuis un même compte, la solution conseillée est de créer un nouvel utilisateur et de lui attribuer tous les privilèges :
     * sudo mysql → Puis dans la console MySQL :     * sudo mysql → Puis dans la console MySQL :
Ligne 153: Ligne 179:
       * QUIT;       * QUIT;
     * En remplaçant évidemment nom_utilisateur_choisi et mot_de_passe_solide dans ces requêtes     * En remplaçant évidemment nom_utilisateur_choisi et mot_de_passe_solide dans ces requêtes
-  * sudo service apache2 restart +  * sudo service apache2 restart **ou** sudo systemctl restart apache2 
-  * sudo service mysql restart +  * sudo service mysql restart **ou** sudo systemctl restart mysql 
-  * Access Adminer at the following address : [[http://ip_adress/adminer.php]]+  * [[https://doc.ubuntu-fr.org/phpmyadmin|phpMyAdmin]] (**déconseillé pour un site en production sans mesures de sécurité additionnelles comme .htaccess,...**) + références phpmyadmin/bionic 
 +    * [[https://www.tecmint.com/install-lamp-with-phpmyadmin-in-ubuntu-18-04/|How to Install LAMP Stack with PhpMyAdmin in Ubuntu 18.04]] 
 +    * [[https://www.osradar.com/how-to-install-the-latest-phpmyadmin-on-ubuntu-18-04/|How to install the latest PhpMyAdmin on Ubuntu 18.04? - OSRadar]] 
 +    * [[https://www.itsmarttricks.com/install-lamp-stack-with-phpmyadmin-in-ubuntu-18-04-1/|How to Install LAMP Stack with PhpMyAdmin in Ubuntu 18.04.1 LTS]] 
 +    * [[https://www.techrepublic.com/article/how-to-install-phpmyadmin-on-ubuntu-18-04/|How to install phpMyAdmin on Ubuntu 18.04 - TechRepublic]] 
 +    * [[https://www.ostechnix.com/install-phpmyadmin-with-lamp-stack-on-ubuntu-18-04-lts/|Install phpMyAdmin With LAMP Stack On Ubuntu 18.04 LTS - OSTechNix]] 
 +    * [[https://devanswers.co/installing-phpmyadmin-apache-ubuntu-18-04/|Installing phpMyAdmin for Apache on Ubuntu 18.04 | DevAnswers.co]] 
 +  * sudo apt install phpmyadmin 
 +    * outil de configuration 
 +      * serveur web : apache2 
 +      * accepter la création d'une DB pour phpmyadmin (refuser autrement) 
 +      * Faut-il configurer la DB avec dbconfig-common ? → <Yes> 
 +      * mot de passe de connexion MySQL pour phpmyadmin : phpmyadmin_mdp (CHOISISSEZ UN MOT DE PASSE SÛR) 
 +  * Tester [[http://ip_adress/phpmyadmin]] 
 +    * utilisateur : phpmyadmin - mdp : phpmyadmin_mdp 
 +    * superutilisateur mysql/mariadb : 'nom_utilisateur_choisi' - mdp : 'mot_de_passe_solide' 
 +  * <del>Adminer</del> (pour mémoire, remplacement possible de phpMyAdmin) : 
 +    * <del>sudo apt-get install adminer</del> **ou** utiliser la version la plus récente sur le site : 
 +    * <del>sudo wget "http://www.adminer.org/latest.php" -O /var/www/html/adminer.php</del> 
 +    * Access Adminer at the following address : [[http://ip_adress/adminer.php]] 
 +    * références adminer : 
 +      * [[http://www.ubuntuboss.com/how-to-install-adminer-on-ubuntu-18-04/]] 
 +      * [[https://websiteforstudents.com/manage-mariadb-mysql-databases-with-adminer-and-apache2/]] 
 +      * [[https://idroot.us/install-adminer-ubuntu-18-04/]] 
 + 
 +==== Compléments d'installation du serveur ==== 
 + 
 +=== Envoi d'emails (par exemple par DokuWiki) === 
 +  * [[https://doc.ubuntu-fr.org/lamp#envoi_de_courriel]] 
 +  * [[https://doc.ubuntu-fr.org/msmtp]] 
 +    * sudo apt install msmtp msmtp-mta 
 +    * Configuration pour l'envoi de courriels au niveau du système : sudo nano /etc/msmtprc 
 +    * vérification (doc.ubuntu-fr) ls -la /usr/sbin/sendmail 
 +    * test : echo 'message' | msmtp user@domain.com 
 + 
 +<note tip>Effacer le nom d'utilisateur et le mot de passe si le serveur est diffusé, et/ou rendre invalide le compte par défaut de msmtp pour éviter des envois erronés vers le serveur d'email !! </note>
  
 +=== Configuration de Apache2 ===
 +  * installer le module "rewrite" [[http://doc.ubuntu-fr.org/apache2]]
 +    * sudo a2enmod rewrite
 +    * sudo systemctl restart apache2
  
-FIXME → pour la suite à partir d'ici !!!+=== non fait : ===
  
-  * (ajouter vmuser au groupe www-data : sudo usermod -a -G www-data vmuser) → non fait 
   * Paquets :   * Paquets :
     * (sudo apt-get install php-pear php-dev) → non fait     * (sudo apt-get install php-pear php-dev) → non fait
Ligne 166: Ligne 230:
     * (sudo apt-get install texlive-latex-base imagemagick ghostscript) → non fait     * (sudo apt-get install texlive-latex-base imagemagick ghostscript) → non fait
     * (sudo apt-get install graphviz graphviz-doc) → non fait     * (sudo apt-get install graphviz graphviz-doc) → non fait
-    * (<del>sudo apt-get install phpmyadmin</del>) → obsolète  +    * (sudo apt-get install gnuplot) → non fait (nécessaire pour l'extension dataplot
-  * Adminer (remplacement de phpmyadmin+  autres paquets 
-    (<del>sudo apt-get install adminer</del>) → utiliser la version la plus récente sur le site +    * cairo ?? 
-    * sudo wget "http://www.adminer.org/latest.php" -O /var/www/html/adminer.php +  * configuration ssl ??
-    * sudo service apache2 restart  (restart Apache) +
-    * Pour avoir un accès global aux bases de données depuis un même compte, la solution conseillée est de créer un nouvel utilisateur et de lui attribuer tous les privilèges : +
-      * sudo mysql +
-      * Puis dans la console MySQL : +
-        * CREATE USER 'nom_utilisateur_choisi'@'localhost' IDENTIFIED BY 'mot_de_passe_solide'; +
-        * GRANT ALL PRIVILEGES ON *.* TO 'nom_utilisateur_choisi'@'localhost' WITH GRANT OPTION; +
-        * FLUSH PRIVILEGES; +
-        * QUIT; +
-      * En remplaçant évidemment nom_utilisateur_choisi et mot_de_passe_solide dans cette requête +
-    Access Adminer at the following address : [[http://ip_adress/adminer.php]]+
  
-  * [[https://idroot.us/install-adminer-ubuntu-18-04/]]+==== Migration, mise à jour du serveur... ==== 
 +  * Régulièrement :  
 +    * sudo apt-get update 
 +    * sudo apt-get upgrade 
 +  * Mise à niveau de l'OS (par exemple Ubuntu server 20.04.1): 
 +    * FIXME 
 +  * Références : 
 +    * [[https://webdock.io/en/docs/how-guides/upgrading-webdock-webservers]]
  
-Comme adminer ne fonctionne pas, on essaye phpmyadmin... +===== Installation et gestion de logiciels sur un serveur LAMP ===== 
-  * sudo apt-get install phpmyadmin → NON NON NON +  * [[wp>fr:Système_de_gestion_de_contenu|Système de gestion de contenus]] ou [[wp>Content_management_system|Content management system]] (CMS) 
- +    * Wordpress 
-on réessaye +    * [[dokuwiki|DokuWiki]] 
-  * sudo apt-get install adminer +    * ...
- +
-  * références adminer : +
-    * [[http://www.ubuntuboss.com/how-to-install-adminer-on-ubuntu-18-04/]] +
-    * [[https://websiteforstudents.com/manage-mariadb-mysql-databases-with-adminer-and-apache2/]] +
- +
-  * https://doc.ubuntu-fr.org/lamp#envoi_de_courriel ?? +
-  * configuration ssl ?? +
- +
-  * références phpmyadmin/bionic +
-    * [[https://www.tecmint.com/install-lamp-with-phpmyadmin-in-ubuntu-18-04/|How to Install LAMP Stack with PhpMyAdmin in Ubuntu 18.04]] +
-    * [[https://www.osradar.com/how-to-install-the-latest-phpmyadmin-on-ubuntu-18-04/|How to install the latest PhpMyAdmin on Ubuntu 18.04? - OSRadar]] +
-    * [[https://www.itsmarttricks.com/install-lamp-stack-with-phpmyadmin-in-ubuntu-18-04-1/|How to Install LAMP Stack with PhpMyAdmin in Ubuntu 18.04.1 LTS]] +
-    * [[https://www.techrepublic.com/article/how-to-install-phpmyadmin-on-ubuntu-18-04/|How to install phpMyAdmin on Ubuntu 18.04 - TechRepublic]] +
-    * [[https://www.ostechnix.com/install-phpmyadmin-with-lamp-stack-on-ubuntu-18-04-lts/|Install phpMyAdmin With LAMP Stack On Ubuntu 18.04 LTS - OSTechNix]] +
-    * [[https://devanswers.co/installing-phpmyadmin-apache-ubuntu-18-04/|Installing phpMyAdmin for Apache on Ubuntu 18.04 | DevAnswers.co]]+
  
  
  • floss/config_ubuntu_server.txt
  • Dernière modification : 2023/09/15 19:05
  • de villersd