logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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évision Les deux révisions suivantes
doc:reseau:nextcloud [12/02/2018 12:29]
smolski [Préparation]
doc:reseau:nextcloud [12/02/2018 19:25]
smolski [Préparation]
Ligne 153: Ligne 153:
 <note warning>​Pour les utilisateurs d'​autres distributions non basés sur Debian, la commande apt ne fonctionnera pas et les paquets peuvent se nommer autrement.</​note>​ <note warning>​Pour les utilisateurs d'​autres distributions non basés sur Debian, la commande apt ne fonctionnera pas et les paquets peuvent se nommer autrement.</​note>​
  
-En premier lieu on passe en [[doc:​systeme:​superutilisateur|utilisateur root]] en utilisant :+En premier lieu on passe en [[doc:​systeme:​superutilisateur|utilisateur root]] en utilisant :
 [[doc:​systeme:​su|la commande su]] : [[doc:​systeme:​su|la commande su]] :
 <code user> su</​code>​ <code user> su</​code>​
Ligne 163: Ligne 163:
 Et on en profite pour mettre à jour son système : Et on en profite pour mettre à jour son système :
 <code root>apt full-upgrade</​code>​ <code root>apt full-upgrade</​code>​
-On lance l'​installation de MariaDB.+On lance l'​installation de MariaDB ​:
 <code root>apt install mariadb-server</​code>​ <code root>apt install mariadb-server</​code>​
-Un grand nombre de paquets supplémentaires sont proposés (plus d'une trentaine), c'est normal. On répond par '​O'​ui+Un grand nombre de paquets supplémentaires sont proposés (plus d'une trentaine), c'est normal. ​\\ 
- +On répond par '​O'​ui.
-Sécurisons un peu notre installation de MariaDB.+
  
 +Sécurisons un peu notre installation de MariaDB : \\
 On lance un assistant prévu à cet effet : On lance un assistant prévu à cet effet :
 <code root>​mysql_secure_installation</​code>​ <code root>​mysql_secure_installation</​code>​
-Il suffit alors de répondre aux questions.+Il suffit alors de répondre aux questions ​:
  
 **La première question** vous demande de : **La première question** vous demande de :
Ligne 189: Ligne 189:
 On se connecte maintenant à MariaDB en tapant : On se connecte maintenant à MariaDB en tapant :
 <code root>​mysql</​code>​ <code root>​mysql</​code>​
-  * Votre prompt (début de ligne) devrait à présent apparaître sous la forme : ''​MariaDB [(none)]>​ '' ​\\ Dans MariaDB on saisi les commandes suivantes : \\ (**ATTENTION !** Changer $PMAmdp% pour le mot de passe que vous souhaitez et '​adminDB'​ par le nom d'​utilisateur que vous souhaitez ) \\ **ATTENTION !** le point virgule ';'​ en fin de ligne compte ! <​code>​CREATE USER '​adminDB'​@'​localhost'​ IDENTIFIED BY '​$PMAmdp%';</​code>​Ce qui nous permet de créer un utilisateur MariaDB pour l'​application PhpMyAdmin à venir. \\ +  * Votre prompt (début de ligne) devrait à présent apparaître sous la forme : ''​MariaDB [(none)]>​ ''​ 
-Puis on lui donne tous les droits :<​code>​GRANT ALL PRIVILEGES ON *.* TO '​adminDB'​@'​localhost'​ WITH GRANT OPTION;</​code>​ +  * Dans MariaDB on saisi les commandes suivantes : \\ (**ATTENTION !** Changer $PMAmdp% pour le mot de passe que vous souhaitez et '​adminDB'​ par le nom d'​utilisateur que vous souhaitez ) \\ **ATTENTION !** le point virgule ';'​ en fin de ligne compte ! \\ \\ <​code>​CREATE USER '​adminDB'​@'​localhost'​ IDENTIFIED BY '​$PMAmdp%';</​code>​ Ce qui nous permet de créer un utilisateur MariaDB pour l'​application PhpMyAdmin à venir. \\ 
-On //​réinitialise//​ pour que ce soit pris en compte : +  ​* ​Puis on lui donne tous les droits : \\ <​code>​GRANT ALL PRIVILEGES ON *.* TO '​adminDB'​@'​localhost'​ WITH GRANT OPTION;</​code>​ 
-<​code>​FLUSH PRIVILEGES;</​code>​ +  ​* ​On //​réinitialise//​ pour que ce soit pris en compte : <​code>​FLUSH PRIVILEGES;</​code>​ 
-Enfin, on sort de MariaDB : +  ​* ​  ​* ​Enfin, on sort de MariaDB : <code root>​exit</​code>​ 
-<code root>​exit</​code>​+
 <note tip>//​Bizarre,​ on a installé MariaDB mais toutes les commandes font référence à MySQL ?// \\ C'est simplement que **MariaDB** garde une compatibilité maximum avec ce qui a été créé initialement pour **MySQL** !</​note>​ <note tip>//​Bizarre,​ on a installé MariaDB mais toutes les commandes font référence à MySQL ?// \\ C'est simplement que **MariaDB** garde une compatibilité maximum avec ce qui a été créé initialement pour **MySQL** !</​note>​
  
 ==== Installation d'un serveur web ==== ==== Installation d'un serveur web ====
  
-Là encore, nextcloud est compatible avec au moins deux serveurs web différents : [[https://​httpd.apache.org/​|Apache]] et [[https://​nginx.org/​en/​|Nginx]]. ​\\ +Là encore, nextcloud est compatible avec au moins deux serveurs web différents : 
-Nginx se dit moins gourmand en ressource mais même si Apache peut se montrer plus gourmand, il offre l'​avantage d'​être plus populaire (plus facile de trouver de l'​aide) et plus complet. //(Penser à de futurs projets...)// ​\\ +  * [[https://​httpd.apache.org/​|Apache]] et  
-Qu'​est-ce que PHP ? PHP est un langage de programmation très populaire pour la réalisation de site internet dynamique. Les sites développés dans ce langage nécessitent d'​être hébergés sur un serveur ayant PHP d'​installé. Si vous voulez en savoir plus, direction [[https://​fr.wikipedia.org/​wiki/​PHP|Wikipédia]] !+  * [[https://​nginx.org/​en/​|Nginx]]. 
 +Nginx se dit moins gourmand en ressource mais même si Apache peut se montrer plus gourmand, il offre l'​avantage d'​être plus populaire (plus facile de trouver de l'​aide) et plus complet. ​\\ //(Penser à de futurs projets...)// ​;-)  
 + 
 +=== Qu'​est-ce que PHP ? === 
 + 
 +PHP est un langage de programmation très populaire pour la réalisation de site internet dynamique. ​\\ 
 +Les sites développés dans ce langage nécessitent d'​être hébergés sur un serveur ayant PHP d'​installé. 
 + 
 +<note tip>Si vous voulez en savoir plus, direction ​[[https://​fr.wikipedia.org/​wiki/​PHP|Wikipédia]] !</​note>​
  
 === Apache2 et PHP7 === === Apache2 et PHP7 ===
  
 Là, on ne va pas s'​embêter on va tout installer en même temps. //(Le serveur web Apache, PHP7 et ses modules.)// Là, on ne va pas s'​embêter on va tout installer en même temps. //(Le serveur web Apache, PHP7 et ses modules.)//
-<note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian : \\ la commande apt ne fonctionnera pas et \\ les paquets peuvent se nommer autrement !</​note>​ +<note warning> Pour les utilisateurs d'​autres distributions non basées sur Debian : \\ la commande apt ne fonctionnera pas et les paquets peuvent se nommer autrement !</​note>​ 
-<code root> +<code root>apt install curl apache2 php7.0 php7.0-mysql php7.0-mbstring php7.0-gd php7.0-json php7.0-curl php7.0-mbstring php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip</​code>​ 
-apt install curl apache2 php7.0 php7.0-mysql php7.0-mbstring php7.0-gd php7.0-json php7.0-curl php7.0-mbstring php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip +En s'​installant,​ Apache2 ​crée automatiquement un premier virtualhost et une page web. \\ 
-</​code>​ +Parfait, ça va nous permettre de tester rapidement si l'​installation est correcte : \\ 
-En s'​installant,​ Apache2 ​créé ​automatiquement un premier virtualhost et une page web. \\ +Vérification de fonctionnement d'​Apache2 en local en tapant : 
-Parfait, ça va nous permettre de tester rapidement si l'​installation est correcte : +<code user>curl http://​localhost | grep title</​code> ​ 
-<code user># ​Vérification de fonctionnement d'​Apache2 en local en tapant : +Vous devriez avoir en retour : 
-curl http://​localhost | grep title +<code>Apache2 Debian Default Page: It works</​code>​
-Vous devriez avoir en retour : <title>Apache2 Debian Default Page: It works</​title>​ +
-</​code>​ +
-//Si quelqu'​un a un lien à soumettre concernant l'​utilisation de curl.//​FIXME +
-<note warning>​Pour les utilisateurs d'​autres distributions non basés sur Debian, les répertoires seront peut-être différents.</​note>​ +
-<code root> +
-# On continue en testant la prise en charge de PHP +
-# On créé un fichier test.php contenant la fonction phpinfo() +
-echo "<?​php phpinfo(); ?>" >> /​var/​www/​html/​test.php +
-</​code>​ +
-<code user> +
-# On vérifie que Apache2 nous délivre correctement le fichier +
-curl http://​localhost/​test.php | grep title +
-# En retour on doit avoir : <​title>​phpinfo()</​title><​meta name="​ROBOTS"​ content="​NOINDEX,​NOFOLLOW,​NOARCHIVE"​ /></​head>​ +
-</​code>​ +
-Si la configuration réseau du serveur est bien paramétrée,​ vous devriez accéder aux deux pages testées depuis un poste distant et un navigateur. \\ +
-Dans un navigateur, en tapant l'​adresse du serveur (Ex: http://​toto.fr et http://​toto.fr/​test.php) ou son adresse IP (Ex: http://​81.85.89.111 et http://​81.85.89.111/​test.php),​ vous devriez voir une page "​Apache2..."​ et "​PHP..."​. \\ +
-//(Voir illustrations ci-dessous) :// \\ +
-{{/​file-Reaa41b38b70c8a2493a241f602cf9b20.png}} {{/​file-R96cfb8bce3a7c697d6ead5dbe92e369c.png}}+
  
-=== Création d'un virtualhost Apache pour PhpMyAdmin ===+Si quelqu'​un a un lien à soumettre concernant l'​utilisation de curl. FIXME 
 + 
 +<note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​ 
 + 
 +  - On continue en testant la **prise en charge de PHP** : \\ 
 +  - On créé un fichier test.php contenant la fonction phpinfo() : <code root>​echo "<?​php phpinfo(); ?>" >> /​var/​www/​html/​test.php</​code>​ 
 +  - On vérifie que Apache2 nous délivre correctement le fichier : <code user>​curl http://​localhost/​test.php | grep</​code>​ En retour on doit avoir : <​code><​title>​phpinfo()</​title><​meta name="​ROBOTS"</​code>​ 
 + 
 +Si la configuration réseau du serveur est bien paramétrée,​ vous devriez accéder aux deux pages testées depuis un poste distant et un navigateur. 
 + 
 +Dans un navigateur, en tapant l'​adresse du serveur. \\ 
 +Exemples : 
 +  * %%http://​toto.fr%% et 
 +  * %%http://​toto.fr/​test.php%% 
 +ou son adresse IP. \\ 
 +Exemples: 
 +  * http://​81.85.89.111 et 
 +  * http://​81.85.89.111/​test.php 
 +vous devriez voir une page ''​Apache2...''​ et ''​PHP...''​ . 
 + 
 +(Voir illustrations ci-dessous) : \\ 
 +\\ 
 +**Illustration Apache 2** : \\ 
 +\\ 
 +{{/​file-Reaa41b38b70c8a2493a241f602cf9b20.png}} 
 +\\ \\ 
 +**Illustration PHP** : \\ 
 +\\ 
 +{{/​file-R96cfb8bce3a7c697d6ead5dbe92e369c.png}} 
 +\\ 
 +==== Création d'un virtualhost Apache pour PhpMyAdmin ​====
  
 Clairement, cette documentation n'a pas vocation à traiter toutes les possibilités qu'​offre Apache2. Un bookin ne suffirait pas... \\ Clairement, cette documentation n'a pas vocation à traiter toutes les possibilités qu'​offre Apache2. Un bookin ne suffirait pas... \\
 Cette documentation ira donc à l'​essentiel pour l'​objectif fixé : installer nextcloud. \\ Cette documentation ira donc à l'​essentiel pour l'​objectif fixé : installer nextcloud. \\
-Si vous souhaitez en savoir plus, consulter ​la [[https://​httpd.apache.org/​docs/​2.4/​fr/​|documentation officielle d'​apache]].+Si vous souhaitez en savoir plus, consulter ​
 +  * [[https://​httpd.apache.org/​docs/​2.4/​fr/​|la documentation officielle d'​apache]].
  
-== Qu'​est-ce qu'un virtualhost Apache ? ==+=== Qu'​est-ce qu'un virtualhost Apache ? ===
  
 Apache (comme d'​autres serveurs web) est capable de servir virtuellement une infinité de sites sur une même machine/​instance. Ainsi, http://​toto.fr,​ http://​bidule.com et http://​trucmuche.eu peuvent très bien se trouver sur la même machine/​instance. Apache (comme d'​autres serveurs web) est capable de servir virtuellement une infinité de sites sur une même machine/​instance. Ainsi, http://​toto.fr,​ http://​bidule.com et http://​trucmuche.eu peuvent très bien se trouver sur la même machine/​instance.
Ligne 245: Ligne 266:
 %%http://​madb.toto.fr%% ou %%http://​phpmyadmin.toto.fr%%. %%http://​madb.toto.fr%% ou %%http://​phpmyadmin.toto.fr%%.
  
-== Qu'​est-ce que PhpMyAdmin ? ==+=== Qu'​est-ce que PhpMyAdmin ? ===
  
 Nous avons installé il y a un instant le serveur de bases de données MariaDB. \\ Nous avons installé il y a un instant le serveur de bases de données MariaDB. \\
-On pourrait très bien gérer l'​intégralité de notre serveur de bases de données en ligne de commande maisune erreur peut être commise et en cas de problèmeune personne n'​ayant aucune connaissance du langage SQL aura bien du mal à se sortir d'​affaire.+On pourrait très bien gérer l'​intégralité de notre serveur de bases de données en ligne de commande mais une erreur peut être commise et en cas de problème une personne n'​ayant aucune connaissance du langage SQL aura bien du mal à se sortir d'​affaire. ​:?:
  
-Pour un néophyte, il est alors plus prudent de disposer d'une interface graphique plus parlante que :+Pour un néophyte, il est alors plus prudent de disposer d'une interface graphique plus parlante que par exemple ​:
 <​code>​UPDATE matable SET nom = '​Bobo'​ WHERE id = 1;​\\</​code>​ <​code>​UPDATE matable SET nom = '​Bobo'​ WHERE id = 1;​\\</​code>​
-Alors qu'​avec une interface graphique un simple clic sur le bouton '​Modifier'​ fera l'​affaire. ​\\ +Alors qu'​avec une interface graphique un simple clic sur le bouton ​''​Modifier'' fera l'​affaire. 
-L'​interface graphique que l'on installera est [[https://​www.phpmyadmin.net/​|PhpMyAdmin]]. \\ + 
-Il existe d'​autres solutions... mais popularité bla bla bla.+L'​interface graphique que l'on installera est 
 +  * [[https://​www.phpmyadmin.net/​|PhpMyAdmin]] 
 +Il existe d'​autres solutionsmais popularité bla bla bla... ;-)
 <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​ <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​
-<code root> + 
-L'​idée est d'​obtenir http://​madb.toto.fr mais si "​madb"​ ne vous plait pas, vous changez chaque fois que "​madb"​ apparaît dans ce texte hein..! +L'​idée est d'​obtenir http://​madb.toto.fr mais si "​madb"​ ne vous plait pas, vous changez chaque fois que "​madb"​ apparaît dans ce texte hein..! ​^_^ 
-On commence par créer le dossier qui accueillera très bientôt phpmyadmin +  ​- ​On commence par [[doc:​systeme:​mkdir|créer le dossier]] qui accueillera très bientôt phpmyadmin ​: <code root>mkdir /​var/​www/​madb</​code>​ 
-mkdir /​var/​www/​madb +  ​- ​On duplique le fichier de configuration du virtualhost par défaut pour en créer un nouveau ​: <code root>cp /​etc/​apache2/​sites-available/​000-default.conf /​etc/​apache2/​sites-available/​madb.conf</​code>​ 
-On duplique le fichier de configuration du virtualhost par défaut pour en créer un nouveau +  ​- ​On crée un lien symbolique du nouveau fichier pour qu'il soit chargé par le serveur Apache à son redémarrage ​: <code root>ln -s /​etc/​apache2/​sites-available/​madb.conf /​etc/​apache2/​sites-enabled/​madb.conf</​code>​ 
-cp /​etc/​apache2/​sites-available/​000-default.conf /​etc/​apache2/​sites-available/​madb.conf +  ​- ​Puis on modifie avec nano le fichier original du lien symbolique... (celui situé dans ''​/​etc/​apache2/​sites-available/​''​...) \\ Et si vous vous trompez, ​ben... ça revient au même :-P Vous corrigez ici : <code root>nano /​etc/​apache2/​sites-available/​madb.conf</​code>​ 
-On créé ​un lien symbolique du nouveau fichier pour qu'il soit chargé par le serveur Apache à son redémarrage +
-ln -s /​etc/​apache2/​sites-available/​madb.conf /​etc/​apache2/​sites-enabled/​madb.conf +
-Puis on modifie avec vim ou nano le fichier original du lien symbolique... (celui situé dans "/​etc/​apache2/​sites-available/​"...) +
-Et si vous vous trompez, ​bein... ça revient au même :+
-nano /​etc/​apache2/​sites-available/​madb.conf +
-# L'​éditeur nano est plus simple à appréhender pour un débutant et l'aide se trouve en bas de l'​écran. +
-# Le sigle ^ signifie qu'il faut maintenir la touche du clavier CTRL. Quitter = ^X = CTRL + X +
-</​code>​+
 <note tip>Pour plus d'info sur les [[:​doc:​systeme:​ln|liens symboliques]].</​note>​ <note tip>Pour plus d'info sur les [[:​doc:​systeme:​ln|liens symboliques]].</​note>​
-Dans notre fichier de configuration,​ à l'aide de Nano (ou [[doc:editeurs:vim:vim|vim]]), nous allons juste décommenter ​et renseigner ServerName et DocumentRoot :+ 
 +Dans notre fichier de configuration,​ à l'aide de Nano nous allons juste [[doc:programmation:commenter|décommenter]] et renseigner ​''​ServerName'' ​et ''​DocumentRoot''​ ainsi :
 <file config madb.conf>​ <file config madb.conf>​
 <​VirtualHost *:80> <​VirtualHost *:80>
Ligne 281: Ligne 298:
 </​VirtualHost>​ </​VirtualHost>​
 </​file>​ </​file>​
-<​note ​tip>Une fois les modifications faites, pensez à sauvegarder ​^O (valider avec Entrer) et quitter ^X.</​note>​ +<​note ​important>**ATTENTION !!!** Une fois les modifications faites, pensez à sauvegarder ​!</​note>​ 
-<code root> + 
-On créé ​un fichier qui nous permettra de faire un test dans un instant +On crée un fichier qui nous permettra de faire un test dans un instant ​: 
-echo "Vhost madb OK!" >> /​var/​www/​madb/​index.php +<code root>echo "Vhost madb OK!" >> /​var/​www/​madb/​index.php</​code>​ 
-On redémarre le serveur Apache (pour qu'il prenne en charge le virtualhost créé) +On redémarre le serveur Apache (pour qu'il prenne en charge le virtualhost créé) ​: 
-systemctl restart apache2 +<code root>systemctl restart apache2</​code>​ 
-</​code>​+
 <note tip>​[[:​doc:​system:​systemd|Pour en savoir plus sur "​systemctl"​.]]</​note> ​ <note tip>​[[:​doc:​system:​systemd|Pour en savoir plus sur "​systemctl"​.]]</​note> ​
-<code user> + 
-Et on teste +Et on teste : 
-curl http://​madb.toto.fr +<code user>curl http://​madb.toto.fr</​code>​ 
-On devrait avoir en retour : Vhost madb OK! +On devrait avoir en retour : 
-curl http://​toto.fr | grep title +<​code>​Vhost madb OK!</​code>​ 
-Devrait ​encore ​nous donner : <​title>​Apache2 Debian Default Page: It works</​title>​ +Et : 
-</​code>​+<code user>curl http://​toto.fr | grep title</​code>​ 
 +Devrait nous donner : 
 +<​code>​<​title>​Apache2 Debian Default Page: It works</​title></​code>​
  
 === Création d'un virtualhost Apache pour nextcloud === === Création d'un virtualhost Apache pour nextcloud ===
Ligne 301: Ligne 320:
 Ben... On va refaire presque tout pareil... Ben... On va refaire presque tout pareil...
 <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​ <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​
-<code root> + 
-L'​idée est d'​obtenir http://​nuage.toto.fr mais si "nuage" ​ne vous plait pas, vous changez chaque fois que "nuage" ​apparaît hein... +L'​idée est d'​obtenir http://​nuage.toto.fr mais si ''​nuage'' ​ne vous plaît ​pas, vous changez chaque fois que ''​nuage'' ​apparaît hein..! =) 
-On commence par créer le dossier qui accueillera très bientôt nextcloud +  ​- ​On commence par créer le dossier qui accueillera très bientôt nextcloud ​: <code root>mkdir /​var/​www/​nuage</​code>​ 
-mkdir /​var/​www/​nuage +  ​- ​On duplique le fichier de configuration du virtualhost par défaut pour en créer un nouveau ​: <code root>cp /​etc/​apache2/​sites-available/​000-default.conf /​etc/​apache2/​sites-available/​nuage.conf</​code>​ 
-On duplique le fichier de configuration du virtualhost par défaut pour en créer un nouveau +  ​- ​On créé un lien symbolique du nouveau fichier pour qu'il soit chargé par le serveur Apache à son redémarrage ​: <code root>ln -s /​etc/​apache2/​sites-available/​nuage.conf /​etc/​apache2/​sites-enabled/​nuage.conf</​code>​ 
-cp /​etc/​apache2/​sites-available/​000-default.conf /​etc/​apache2/​sites-available/​nuage.conf +  ​- ​Puis on modifie avec nano le fichier original du lien symbolique... (//celui situé dans// : ''​/​etc/​apache2/​sites-available/​''​...) : <code root>nano /​etc/​apache2/​sites-available/​nuage.conf</​code><​file config nuage.conf><​VirtualHost *:80>
-On créé un lien symbolique du nouveau fichier pour qu'il soit chargé par le serveur Apache à son redémarrage +
-ln -s /​etc/​apache2/​sites-available/​nuage.conf /​etc/​apache2/​sites-enabled/​nuage.conf +
-Puis on modifie avec vim ou nano le fichier original du lien symbolique... (celui situé dans "/​etc/​apache2/​sites-available/​"...) +
-nano /​etc/​apache2/​sites-available/​nuage.conf +
-# L'​éditeur nano est plus simple à appréhender pour un débutant et l'aide se trouve en bas de l'​écran. +
-# Le sigle ^ signifie qu'il faut maintenir la touche du clavier CTRL. Quitter = ^X = CTRL + X +
-</​code>​ +
-<file config nuage.conf>​ +
-<​VirtualHost *:80>+
         ServerName nuage.toto.fr         ServerName nuage.toto.fr
         ServerAdmin webmaster@localhost         ServerAdmin webmaster@localhost
Ligne 321: Ligne 331:
         ErrorLog ${APACHE_LOG_DIR}/​error.log         ErrorLog ${APACHE_LOG_DIR}/​error.log
         CustomLog ${APACHE_LOG_DIR}/​access.log combined         CustomLog ${APACHE_LOG_DIR}/​access.log combined
-</​VirtualHost>​ +</​VirtualHost></​file>​ 
-</​file>​ +  ​- ​On créé un fichier qui nous permettra de faire un test dans un instant ​: <code root>echo "Vhost nuage OK!" >> /​var/​www/​nuage/​index.php</​code>​ 
-<code root> +  ​- ​On redémarre le serveur Apache (pour qu'il prenne en charge le virtualhost créé) ​:<code root>systemctl restart apache2</​code>​ 
-On créé un fichier qui nous permettra de faire un test dans un instant +  - Et on teste : <code user>​curl http://​nuage.toto.fr</​code>​On devrait avoir en retour : <​code>​Vhost nuage OK!</​code>​ 
-echo "Vhost nuage OK!" >> /​var/​www/​nuage/​index.php +  - Et enfin : <code user>curl http://​toto.fr | grep title</​code> ​Devrait encore nous donner : <code>title>​Apache2 Debian Default Page: It works</​title></​code>​
-On redémarre le serveur Apache (pour qu'il prenne en charge le virtualhost créé) +
-systemctl restart apache2 +
-</​code>​ +
-<code user> +
-# Et on test +
-curl http://​nuage.toto.fr +
-On devrait avoir en retour : Vhost nuage OK! +
-curl http://​toto.fr | grep title +
-Devrait encore nous donner : <​title>​Apache2 Debian Default Page: It works</​title>​ +
-</​code>​+
  
 ==== Installation des certificats SSL ==== ==== Installation des certificats SSL ====
  
-Il y aurait bien à dire sur les certificats (SSL) mais, je n'en ai pas vraiment les compétences,​ ni le courage. Ce qui est communément admis, c'est qu'​aujourd'​hui un site non "https" ​(//​communication crypté//) n'a presque plus lieu d'​être. C'est d'​autant plus vrai quand on sait que la case "porte feuille" ​n'est plus obligatoire et que nous nous apprêtons à disposer de nos fichiers (peut-être important) à travers internet...+Il y aurait bien à dire sur les certificats (SSL) mais, je n'en ai pas vraiment les compétences,​ ni le courage. ​\\ 
 +Ce qui est communément admis, c'est qu'​aujourd'​hui un site non **https** (//​communication crypté//) n'a presque plus lieu d'​être. ​\\ 
 +C'est d'​autant plus vrai quand on sait que la case ''​porte feuille'' ​n'est plus obligatoire et que nous nous apprêtons à disposer de nos fichiers (peut-être important) à travers internet...
  
-=== Installation de let's encrypt ===+==== Installation de let's encrypt ​====
  
-**Qu'​est-ce que //​Let'​s encrypt// ?**+=== Qu'​est-ce que //​Let'​s encrypt// ? ===
  
 L'​introduction de [[https://​fr.wikipedia.org/​wiki/​Let%27s_Encrypt|wikipédia]] est parfaite : \\ L'​introduction de [[https://​fr.wikipedia.org/​wiki/​Let%27s_Encrypt|wikipédia]] est parfaite : \\
-[[https://​letsencrypt.org/​|Let'​s Encrypt]] est une autorité de certification. ​\\ +[[https://​letsencrypt.org/​|Let'​s Encrypt]] est une autorité de certification. 
-Cette autorité fournit des certificats gratuits au moyen d'un processus automatisé destiné à se passer du processus complexe actuel impliquant+ 
 +Cette autorité fournit des certificats gratuits au moyen d'un processus automatisé destiné à se passer du processus complexe actuel impliquant ​:
   - la création manuelle,   - la création manuelle,
   - la validation,   - la validation,
Ligne 354: Ligne 357:
   - le renouvellement des certificats pour la sécurisation des sites internet.   - le renouvellement des certificats pour la sécurisation des sites internet.
 <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, la commande apt ne fonctionnera pas et les paquets peuvent se nommer autrement.</​note>​ <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, la commande apt ne fonctionnera pas et les paquets peuvent se nommer autrement.</​note>​
-<code root> + 
-On démarre sont installation +On démarre sont installation 
-apt install letsencrypt python-certbot-apache python-certbot-doc python-acme-doc python-configobj-doc python-cryptography-doc python-cryptography-vectors python-enum34-doc python-funcsigs-doc python-mock-doc python-openssl-doc python-psutil-doc doc-base python-socks python-setuptools-doc python-ntlm +<code root>apt install letsencrypt python-certbot-apache python-certbot-doc python-acme-doc python-configobj-doc python-cryptography-doc python-cryptography-vectors python-enum34-doc python-funcsigs-doc python-mock-doc python-openssl-doc python-psutil-doc doc-base python-socks python-setuptools-doc python-ntlm</​code>​ 
-Il y a du monde ! Au moins, let's encrypt ne manquera de rien pour faire son job... +Il y a du monde ! Au moins, let's encrypt ne manquera de rien pour faire son job... 
-Et on le lance... + 
-letsencrypt +Et on le lance : 
-En retour vous aurez quelque chose de similaire à : +<code root>letsencrypt</​code>​ 
-Which names would you like to activate HTTPS for? +En retour vous aurez quelque chose de similaire à : 
-------------------------------------------------------------------------------- +<​code>​Which names would you like to activate HTTPS for? 
-1: madb.toto.fr +------------------------------------------------------------------------------- 
-2: nuage.toto.fr +1: madb.toto.fr 
-# +2: nuage.toto.fr</​code>​ 
-Let's encrypt ​à automatiquement trouvé nos virtualhost. Appuyer sur entrer pour le qu'il s'​occupe de tous virtualhost détectés. + 
-Entrez une adresse email valide si vous le souhaitez. (C'est préférable) +Let's encrypt ​automatiquement trouvé nos virtualhost. ​\\ 
-On accepte les Conditions "​qu'​on ne lit jamais"​... (On tape A) +Appuyer sur ''​entrer'' ​pour le qu'il s'​occupe de tous virtualhost détectés. 
-Puis on nous demande si on utiliser exclusivement HTTPS ou non. Pour moi ça sera Oui touche 2 mais vous faites comme vous voulez. +  ​- ​Entrez une adresse email valide si vous le souhaitez. (C'est préférable) 
-Please choose whether HTTPS access is required or optional. +  ​- ​On accepte les Conditions "//qu'on ne lit jamais//"... (On tape ''​A''​
-------------------------------------------------------------------------------- +  ​- ​Puis on nous demande si on utiliser exclusivement HTTPS ou non. \\ Pour moi ça sera Oui touche ​''​2''​ , mais vous faites comme vous voulez. 
-1: Easy - Allow both HTTP and HTTPS access to these sites +<​code> ​Please choose whether HTTPS access is required or optional. 
-2: Secure - Make all requests redirect to secure HTTPS access + ​------------------------------------------------------------------------------- 
-------------------------------------------------------------------------------- + 1: Easy - Allow both HTTP and HTTPS access to these sites 
-Select the appropriate number [1-2] then [enter] (press '​c'​ to cancel): + 2: Secure - Make all requests redirect to secure HTTPS access 
-  + ​------------------------------------------------------------------------------- 
-Et automatiquement,​ let's encrypt va vous modifier la configuration de vos virtualhost et planifier l’obtention de nouveau certificats + ​Select the appropriate number [1-2] then [enter] (press '​c'​ to cancel):</​code>​ 
-avant leur expirations,​ etc. +   
-Nous allons jeter un coup d'oeil à nos fichiers de configuration des virtualhosts. +Et automatiquement,​ let's encrypt va modifier la configuration de vos virtualhost et planifier l’obtention de nouveau certificats avant leur expirations,​ etc. 
-ls -l /​etc/​apache2/​sites-enabled/​ + 
-Résultat : madb-le-ssl.conf +Nous allons ​maintenant ​jeter un coup d'oeil à nos fichiers de configuration des virtualhosts. 
-Résultat : nuage-le-ssl.conf +<code root>ls -l /​etc/​apache2/​sites-enabled/​</​code>​ 
-Parfait ! Let's Encrypt nous a bien créé les fichiers ^^ +Résultat : 
-On test. (Soyez attentif, ce coup-ci je test avec http"​S"​) +<​code>​madb-le-ssl.conf</​code>​ 
-curl https://​madb.toto.fr +Résultat : 
-Retour : Vhost madb OK! +<​code>​nuage-le-ssl.conf</​code>​ 
-curl https://​nuage.toto.fr +Parfait ! Let's Encrypt nous a bien créé les fichiers ^_
-Retour : Vhost nuage OK! + 
-</​code>​+On teste. (Soyez attentif, ce coup-ci je teste avec http"​S"​) ​: 
 +<code user>curl https://​madb.toto.fr</​code>​ 
 +Retour : 
 +<​code>​Vhost madb OK!</​code>​ 
 +<code user>curl https://​nuage.toto.fr</​code>​ 
 +Retour : 
 +<​code>​Vhost nuage OK!</​code>​
  
 ==== Installation de PhpMyAdmin ==== ==== Installation de PhpMyAdmin ====
  
 <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​ <note warning>​Pour les utilisateurs d'​autres distributions non basées sur Debian, les répertoires seront peut-être différents.</​note>​
-<code root> + 
-On télécharge la dernière version de phpmyadmin. Pour ça, encore faut-il se rendre sur le site officiel : https://​www.phpmyadmin.net +On télécharge la dernière version de phpmyadmin. Pour ça, encore faut-il se rendre sur le site officiel : 
-avec un navigateur et trouver le lien de téléchargement de la dernière version. +  * https://​www.phpmyadmin.net 
-# A ce jour, sur la page d'​accueil,​ premier bouton en haut à droite. (Que ce soit avec firefox, chrome ou autre logiquement : +avec un navigateur et trouver le lien de téléchargement de la dernière version. ​\\ 
-Clic droit -> copier l'​adresse du lien pour le coller dans notre terminal précédé de "[[doc:​reseau:​wget|wget]]". Ce qui donnerai ​à l'​heure actuelle : +À ce jour, sur la page d'​accueil,​ premier bouton en haut à droite. (Que ce soit avec firefox, chrome ou autre logiquement : 
-wget https://​files.phpmyadmin.net/​phpMyAdmin/​4.7.3/​phpMyAdmin-4.7.3-all-languages.zip +''​Clic droit'' ​-> ''​copier l'​adresse du lien'' ​pour le coller dans notre terminal précédé de [[doc:​reseau:​wget|wget]]. ​\\ 
-Une fois le téléchargement terminé, on décompresse l'​archive obtenue dans un dossier nommé phma du répertoire courant. +Ce qui donnerait ​à l'​heure actuelle : 
-# (Attention à adapter la commande avec le nom du fichier que vous avez obtenu.  +<code user>wget https://​files.phpmyadmin.net/​phpMyAdmin/​4.7.3/​phpMyAdmin-4.7.3-all-languages.zip</​code>​ 
-Aujourd'​hui ​"phpMyAdmin-4.7.3-all-languages.zip""demain" ​le fichier se nommera ​"tartempion.zip"...) +Une fois le téléchargement terminé, on décompresse l'​archive obtenue dans un dossier nommé ​''​phma'' ​du répertoire courant. 
-unzip phpMyAdmin-4.7.3-all-languages.zip -d phma +<note important>​Attention à adapter la commande avec le nom du fichier que vous avez obtenu. ​\\ 
-On copie le tout dans le dossier créé pour accueillir l'​application. (Attention à remplacer ​"madb" ​si vous n'avez pas fait ce choix...+Aujourd'​hui ​c'est **phpMyAdmin-4.7.3-all-languages.zip**, demain le fichier se nommera ​autrement... **tartempion.zip**...</​note>​ 
-cp -r phma/​phpMyAdmin-4.7.3-all-languages/​* /​var/​www/​madb/​ +<code user>unzip phpMyAdmin-4.7.3-all-languages.zip -d phma</​code>​ 
-On modifié ​le propriétaire du dossier madb et de ses enfants pour l'​utilisateur système ​"www-data"​. ​(Utilisateur utilisé par Apache) +On copie le tout dans le dossier créé pour accueillir l'​application. (Attention à remplacer ​//madb// si vous n'avez pas fait ce choix... ​:!: : <code user>cp -r phma/​phpMyAdmin-4.7.3-all-languages/​* /​var/​www/​madb/​</​code>​ 
-chown -R www-data:​www-data /​var/​www/​madb/​ +On modifie ​le propriétaire du dossier ​''​madb''​ **et de ses enfants** pour l'​utilisateur système ​''​www-data''​ //(Utilisateur ​générique ​utilisé par Apache)// : <code user>chown -R www-data:​www-data /​var/​www/​madb/​</​code>​ 
-On modifie les droits pour le dossier ​"madb" ​et tous les sous dossiers du dossier ​"madb+On modifie les droits pour le dossier ​''​madb'' ​et tous les sous-dossiers du dossier ​''​madb''​ : <code user>find /​var/​www/​madb -type d -exec chmod 755 {} +</​code>​ 
-find /​var/​www/​madb -type d -exec chmod 755 {} + +On modifie les droits pour tous les fichiers enfants du dossier ​''​madb''​ <code user>find /​var/​www/​madb/​ -type f -exec chmod 644 {} +</​code>​ 
-On modifie les droits pour tous les fichiers enfants du dossier ​"madb+On duplique l’exemple de fichier de configuration de phpmyadmin en un fichier qui sera chargé ​: <code user>cp /​var/​www/​madb/​config.sample.inc.php ​ /​var/​www/​madb/​config.inc.php</​code>​ 
-find /​var/​www/​madb/​ -type f -exec chmod 644 {} + +On ouvre le fichier avec l'​éditeur nano : <code user>nano /​var/​www/​madb/​config.inc.php</​code>​
-On duplique l’exemple de fichier de configuration de phpmyadmin en un fichier qui sera chargé+
-cp /​var/​www/​madb/​config.sample.inc.php ​ /​var/​www/​madb/​config.inc.php +
-On ouvre le fichier avec l'​éditeur nano ou vim +
-nano /​var/​www/​madb/​config.inc.php +
-</​code>​+
 <note tip>Pour en savoir plus "​[[doc:​systeme:​tar|unzip]]",​ "​[[:​doc:​systeme:​find|find]]",​ "​[[:​doc:​systeme:​chown|chown]]"​ et "​[[:​doc:​systeme:​chmod|chmod]]"​.</​note>​ <note tip>Pour en savoir plus "​[[doc:​systeme:​tar|unzip]]",​ "​[[:​doc:​systeme:​find|find]]",​ "​[[:​doc:​systeme:​chown|chown]]"​ et "​[[:​doc:​systeme:​chmod|chmod]]"​.</​note>​
 //Si quelqu'​un a un lien concernant l'​utilisation de "​unzip"​.//​FIXME\\ //Si quelqu'​un a un lien concernant l'​utilisation de "​unzip"​.//​FIXME\\
 \\ \\
-Et on change juste une ligne :+Et on change juste une ligne, on renseigne une clef qui sera utilisée pour crypter les Cookies du navigateur ​:
 <file config config.inc.php>​ <file config config.inc.php>​
-# On renseigne une clef qui sera utilisée pour crypter les Cookies du navigateur 
 $cfg['​blowfish_secret'​] = '​je-mets-ce-que-je-veux';​ /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */ $cfg['​blowfish_secret'​] = '​je-mets-ce-que-je-veux';​ /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
 </​file>​ </​file>​
-On teste le fonctionnement avec un navigateur en se rendant à l'​adresse : https://​madb.mon_domaine (Ex: https://​madb.toto.fr). Ce qui devrait nous afficher une page d'​identification et une fois connecté avec le compte ​"adminDB", l'​interface complète pour gérer les bases de données. (//Voir illustrations ci-dessous//​)\\ +On teste le fonctionnement avec un navigateur en se rendant à l'​adresse : \\ 
-{{/​file-R095d065f9e0fed53251e4ea6f0bbc8c8.png}}{{/​file-Ra5c90596c7200eb9ab060402d5f26d9a.png}}+%%https://​madb.mon_domaine%% (Ex: %%https://​madb.toto.fr%%). \\ 
 +Ce qui devrait nous afficher une page d'​identification et une fois connecté avec le compte ​''​adminDB''​, l'​interface complète pour gérer les bases de données. (//Voir illustrations ci-dessous//​) ​: \\ 
 +\\ 
 +**Illustration login PhpMyAdmin :** \\ 
 +\\ 
 +{{/​file-R095d065f9e0fed53251e4ea6f0bbc8c8.png}} ​\\ 
 +\\ 
 +**Illustration page PhpMyAdmin :** \\ 
 +\\ 
 +{{/​file-Ra5c90596c7200eb9ab060402d5f26d9a.png}} ​\\
  
 === Base de données et utilisateur nextcloud === === Base de données et utilisateur nextcloud ===
  
 Maintenant que nous avons une interface conviviale pour gérer MariaDB, dans PhpMyAdmin : Maintenant que nous avons une interface conviviale pour gérer MariaDB, dans PhpMyAdmin :
-  ​Cliquer en haut sur "Comptes utilisateurs" +  ​Cliquer en haut sur ''​Comptes utilisateurs''​ 
-  ​Dans le cadre "Nouvel utilisateur", cliquer sur "Ajouter un compte utilisateur" +  ​Dans le cadre **Nouvel utilisateur**, cliquer sur ''​Ajouter un compte utilisateur''​ 
-Un formulaire s'​affiche :\\ +Un formulaire s'​affiche : 
-**Nom d'​utilisateur :** nuage (ou nextcloud ou ce que vous voulez) \\ +  ​* ​**Nom d'​utilisateur :** nuage (ou nextcloud ou ce que vous voulez) \\ 
-**Nom d'hote :** (Cliquer sur le menu déroulant et sélectionner ​"Local") \\ +  ​* ​**Nom d'hote :** (Cliquer sur le menu déroulant et sélectionner ​''​Local''​) \\ 
-**Mot de passe :** On clique sur "Générer" ​(attention à bien le noter) ​ou on en rentre ​un. (J'​utiliserai $NUAGEmdp%pour cette documentation.) \\ +  ​* ​**Mot de passe : ** On clique sur ''​Générer'' ​([[doc:​systeme:​keepassx|attention à bien le noter]]où on en entre un. \\ 
-**Dans le cadre "Base de données pour ce compte d'​utilisateur" ​:** On coche les deux cases. \\ +<note tip>J'​utiliserai ​**$NUAGEmdp%** pour cette documentation.</​note>​ 
-Et on fini en cliquant tout en bas à droite sur "Executer".+  ​* ​**Dans le cadre ''​Base de données pour ce compte d'​utilisateur'' ​:** On coche //les deux cases//. \\ 
 +  ​* ​Et on fini en cliquant tout en bas à droite sur ''​Executer''​.
  
 ===== Installation de Nextcloud ===== ===== Installation de Nextcloud =====
doc/reseau/nextcloud.txt · Dernière modification: 01/10/2023 12:02 par captnfab

Pied de page des forums

Propulsé par FluxBB