\\
[[cours_nethserver_101|{{ Images_Cahier-101-03-0000.png?650 }}]]
\\
====== Description générale ======
===== Introduction =====
Le **Cahier-03** du cours **NethServer-101** décrit: le parcours des paquets **IP** du serveur vers l'Internet, la création d'une machine virtuelle, l’installation/configuration d’un serveur **Linux NethServer** et la sauvegarde/restauration de ce dernier. Ce serveur servira de: pare-feu, passerelle pour l’Internet, hébergeur de sites Web, serveur de courriels, filtre anti-spam, etc //(un véritable couteau suisse Linux)//.
Pour débuter ce cours, il nous faut installer un **Serveur NethServer** qui hébergera notre futur site Web.
Les exigences matérielles du **Serveur NethServer** sont modestes par rapport à d'autres distributions disponibles aujourd'hui. Toutefois, en raison de son rôle, il est important de sélectionner un ordinateur hôte approprié.
**NethServer-7.6** fonctionne avec n'importe quel processeur déclaré compatible avec **Centos 7**.
La quantité de mémoire vive disponible est l'une des considérations les plus importantes pour les performances du serveur, car elle réduit la charge sur les disques. Si un compromis est nécessaire, la **RAM** supplémentaire sera généralement plus bénéfique qu'un processeur plus rapide.
Votre serveur requiert deux adaptateurs **Ét****hernet**// (également appelés ////adaptateurs réseau//// ou ////cartes d'interface réseau////)//.
==== But final de ce cahier ====
Pour débuter le **Cours NethServer-101**, on installe un **Serveur NethServer** virtuel de développement qui hébergera plus tard un site de test de notre futur site de **Commerce en ligne**.
{{ Images_Cahier-101-03-001.png?500 }}
À la fin de ce cahier, après avoir maîtrisé les bases du **Serveur NethServer**, vous pourrez répéter les mêmes opérations afin de préparer un serveur physique pour le **Cahier-****0****5****: **//ADSL/VDSL//, //DNS dynamique// & domaine //FQDN//.
===== Cours NethServer-101 =====
Le //Cours NethServer-101//, se voulant une base solide pour la création d'un site de **Commerce en ligne**, comprend plusieurs cahiers:
- [[nethserver_101_cahier_01_linux|Cahier-01]]: -> Les bases de Linux.
- [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]]: -> Installation et configuration des logiciels prérequis sur le poste de travail.
- [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: -> Création d'un Serveur NethServer virtuel.
- [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-04]]: -> Serveur NethServer LOCAL & Let's Encrypt.
- [[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver|Cahier-05]]: -> FAI, modem VDSL, domaine FQDN(( **FQDN**: Dans le //DNS//, un Fully Qualified Domain Name //(FQDN, ou nom de domaine complètement qualifié)// est un nom de domaine qui révèle la position absolue d'un nœud dans l'arborescence //DNS// en indiquant tous les domaines de niveau supérieur jusqu'à la racine. On parle également de domaine absolu, par opposition aux domaines relatifs. Par convention, le //FQDN// est ponctué par un point final.\\
//Référence:// [[https://fr.wikipedia.org/wiki/Fully_qualified_domain_name|https://fr.wikipedia.org/wiki/Fully_qualified_domain_name]]. \\ \\ )) et Serveur NethServer physique.
- [[nethserver_101_cahier_06_nethserver_wordPress|Cahier-06]]: -> Installation de WordPress.
- [[nethserver_101_cahier_07_nethserver_wordPress_wordfence|Cahier-07]]: -> Installation de l'extension de sécurité Wordfence.
- [[nethserver_101_cahier_08_woocommerce_paypal_stripe|Cahier-08]]: -> WooCommerce, comptes chez Stripe et PayPal pour les paiements en ligne.
- [[nethserver_101_cahier_09_duplicator_migration|Cahier-09]]: -> Sauvegarde/restauration ou migration d'un site avec l'extension Duplicator.
- [[nethserver_101_cahier_10_mandataire_inverse|Cahier-10]]: -> Serveur mandataire inversé.
- [[nethserver_101_cahier_11_nethserver_backuppc|Cahier-11]]: -> Sauvegarde/restauration avec BackupPC.
==== Cours NethServer-201 ====
Le //Cours NethServer-201// décrit l'installation et la configuration d'applications sur un serveur NethServer.
- [[nethserver_201_cahier_01_nethserver_et_dolibarr|Cahier-201-01]]: -> Dolibarr.
- [[nethserver_201_cahier_02_odoo_12|Cahier-201-02]]: -> Odoo-12.
- [[nethserver_201_cahier_03_mediawiki|Cahier-201-03]]: -> MediaWiki.
- [[nethserver_201_cahier_04_dokuwiki|Cahier-201-04]]: -> DokuWiki.
- [[nethserver_201_cahier_05_moodle|Cahier-201-05]]: -> Moodle.
- [[nethserver_201_cahier_06_proxmox|Cahier-201-06]]: -> Proxmox.
- [[nethserver_201_cahier_07_flectra|Cahier-201-07]]: -> Flectra.
==== Logiciels ====
Tous les logiciels nécessaires sont du domaine public ou LIBRE sous licence //GPL//; ils ne coûtent pas un sou. Le seul achat nécessaire est l'obtention d'un nom de domaine au prix initial de $15 CAD et son renouvellement annuel d'environ $30 CAD.
==== But final ====
Après avoir suivi le //Cours NethServer-101//, vous posséderez un site de //Commerce en ligne// fiable et hautement sécuritaire. De plus, vous pourrez utiliser un clone de votre site, sur un //Serveur NethServer// virtuel roulant sur votre poste de travail, pour tester de nouvelles extensions et applications sans compromettre la sécurité ou l'intégrité de votre site en ligne.
{{ NS-101_001_Diagramme.png?500 }}
===== Particularités de ce document =====
==== Notes au lecteur ====
* Les captures d'écrans ne sont que des références.\\
** Les informations écrites ont préséance sur celles retrouvées dans les captures d'écrans. Veillez vous référer aux différents tableaux lorsque ceux-ci sont présents.\\
*** Une capture d'écran avec une accentuation en magenta indique qu'il faut remplacer cette distinction par vos propres paramètres ou implique un choix laissé à votre appréciation.
==== Conventions ====
{{Images_icone-201-001_doigt.png?22}} Manipulation, truc ou ruse pour se tirer d'embarras.\\
{{Images_icone-201-002_Lumiere.png?25}} Une recommandation ou astuce.\\
{{Images_icone-201-003_Note.png?25}} Une note.\\
{{Images_icone-201-004_Triangle.png?25}} Une étape, note ou procédure à surveiller.\\
{{Images_icone-201-005_Non-termine.png?25}} Paragraphe non complété ou non vérifié.\\
{{Images_icone-201-006_Securite.png?25}} Danger pour la sécurité du système.
Toutes les commandes à la console ou à travers //PuTTY// sont précédées d'une invite qui est toujours présente.
[root@dorgee ~]# ping 10.10.10.75 -c1
PING 10.10.10.75 (10.10.10.75) 56(84) bytes of data.
64 bytes from 10.10.10.75: icmp_seq=1 ttl=64 time=1.63 ms
--- 10.10.10.75 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.639/1.639/1.639/0.000 ms
[root@dorgee ~]#
Commande à exécuter si ce n'est déjà fait.
Commande indiquée à titre d'information seulement.
\\
====== À savoir =====
===== Lexique =====
//**eth0/eth1 vs enp****X****s****X**//\\
Nous utiliserons la nomenclature **eth0/eth1** pour le nom des cartes réseau au lieu de prendre celle utilisée par **NethServer**. La carte **eth0** sera la carte pour le réseau **LOCAL** et **eth1** celle du réseau externe ou connectée à l'Internet.
//**VirtualBox**//\\
//Référence:// [[http://fr.wikipedia.org/wiki/Oracle_VM_VirtualBox|http://fr.wikipedia.org/wiki/Oracle_VM_VirtualBox]]\\
//Oracle VM VirtualBox// //(anciennement VirtualBox)// est un logiciel LIBRE de virtualisation publié par Oracle.\\
En tant qu'**H****ôte**, il est disponible sur les systèmes d'exploitation Linux //(en 32 et 64 bits; en .deb , en .rpm et en source)//, Mac OS X, Solaris et Windows.
//**MV**//\\
//Référence:// [[http://fr.wikipedia.org/wiki/Machine_virtuelle_(informatique)|http://fr.wikipedia.org/wiki/Machine_virtuelle_%28informatique%29]]\\
Le sens originel de **machine virtuelle** //(ou Virtual Machine - VM en anglais)// est la création de plusieurs environnements d'exécution sur un seul ordinateur dont chacun émule l'ordinateur **H****ôte**. Ceci fournit à chaque utilisateur l'illusion de disposer d'un ordinateur complet alors que chaque machine virtuelle est isolée des autres.
//**HÔTE**//\\
Une machine **H****ôte** est un **PC** qui roule un logiciel de virtualisation et qui contient un répertoire pour stocker les **MV**.
//**INVITÉ**//\\
//Référence:// [[http://fr.wikipedia.org/wiki/Machine_virtuelle|http://fr.wikipedia.org/wiki/Machine_virtuelle]].\\
Une machine virtuelle est l'illusion d'un appareil informatique créé par **VirtualBox** et qui simule la présence de ressources matérielles et logicielles telles que: la mémoire, le processeur, le disque dur, voire le système d'exploitation et les pilotes. Il permet d'exécuter des programmes dans les mêmes conditions que celles de la machine simulée.
//**CLAC**//\\
Clic sur le bouton droit de la souris.
//**RJ-45**//\\
Connecteur physique pour brancher un fil **Éthernet**.
===== À propos du Serveur NethServer =====
//Référence:// [[https://www.nethserver.org/]]\\
**NethServer** est un système d'exploitation pour les passionnés de **Linux**; simple, puissant, sécurisé et orienté vers la gestion de la communication et des réseaux. **NethServer** est utilisé par des milliers d'individus, entreprises et organisations dans le monde entier. Le **Serveur NethServer** fournit une alternative, LIBRE et simple à déployer, aux logiciels propriétaires coûteux et à l'écart de la compétition.
- **NethServer** repose sur la distribution **CentO****S-7** qui utilise le code source ouvert et publiquement disponible de la distribution **Red Hat Enterprise Linux** //(////**RHEL**////)//.
- Extrêmement modulaire et riche en fonctionnalités: serveur de messagerie, serveur Web, logiciel de groupe, pare-feu, filtre Web, IPS/IDS, VPN, etc.
- 100% LIBRE: alimentée par des contributeurs et par la communauté.
- Une interface Web puissante, simple, rapide et disposant de modules pré-configurés pouvant être installés en un seul clic:
- Pare-feu //(////Shorewall////, ////DPI////, web filter, ////multi wan////).//
- Samba4 AD ou OpenLDAP// (un seul identificateur pour tous les serveurs).//
- Serveur de fichiers //(samba, ////nfs////).//
- Web //(httpd, ////mariadb, ////mysql, ////postgresql////).//
- VPN.
- Sauvegarde.
- VOIP PBX.
- Nextcloud.
- Serveur de messagerie et Webmail.
- etc...
==== Quincaillerie minimum recommandée pour un Serveur NethServer ====
Les informations ci-dessous sont celles que nous suggérons être le minimum recommandé.
* **CPU**: 64 bit //(x86_64)//.
* **Mémoire**: 1 GB.
* **Disque**: 4 GB.
Les exigences matérielles du Serveur NethServer sont modestes par rapport à d'autres distributions disponibles aujourd'hui. Toutefois, en raison de son rôle, il est important de sélectionner un ordinateur hôte approprié.
{{Images_Cahier-101-03-005.png?25}} Nous recommandons d’utiliser au moins deux disques pour une configuration **RAID-1**. Le logiciel **RAID** assurera l’intégrité des données en cas d'une panne du disque.
==== Manuels de référence ====
**Manuel de l’utilisateur** **NethServer** //(anglais//// seulement////)//: [[https://www.nethserver.org/documentation/|https://www.nethserver.org/documentation/]].\\
**Developer’s Guide** //(anglais//// seulement////)//: [[http://docs.nethserver.org/projects/nethserver-devel/en/v7/|http://docs.nethserver.org/projects/nethserver-devel/en/v7/]].
===== Poste de travail =====
{{ Images_Cahier-101-03-010.png?250}}
Avec le **Cahier-02**, nous avons installé et configuré, sur le poste de travail, les différents logiciels que nous utiliserons tout au long du **Cours NethServer-101**.
===== Serveur NethServer virtuel =====
{{ Images_Cahier-101-03-011.png?400}} À l'aide de **VirtualBox**, nous allons créer une machine virtuelle et y installer un Serveur NethServer de test/développement.
==== VirtualBox ====
**Manuel de l’utilisateur** //(français et anglais)//:[[https://www.virtualbox.org/wiki/Documentation|https://www.virtualbox.org/wiki/Documentation]].
===== Connexion Internet =====
Le poste de travail est connecté à l'Internet à travers un modem **ADSL/VDSL**.
{{ Images_Cahier-101-03-012.png?600 }}
===== Adresses IP =====
Adresses **IP** des différentes connexions.\\
La carte physique avec le connecteur RJ-45 du poste de travail est branchée directement à un port **LAN** du modem.
{{ Images_Cahier-101-03-014.png?700 }}
{{Images_Cahier-101-03-003.png?22}} Dans tout ce document, remplacez les adresses IP du poste de travail **__192.168.1.81__** par celle de votre poste de travail. De plus, remplacez celle de la passerelle **__192.168.1.1__** par celle offerte par votre **FAI** //(////**__F__**////ournisseur d'////**__A__**////ccès ////**__I__**////nternet)//.
===== Configuration finale désirée =====
{{ Images_Cahier-101-03-015.png?400}}
==== Adresses IP statiques ====
Pour pouvoir accéder au serveur invité NethServer par son réseau **Externe**, il faut que l'adresse de la carte **eth1** du serveur soit sur le même segment **IP** que celui du poste de travail. Pour nous, cette adresse sera **__192.168.1.__****__75__**. Cette adresse permettra d'accéder au site Web du Serveur NethServer comme si nous provenions de l'Internet.\\
Pour pouvoir accéder au serveur invité NethServer par son réseau **LOCAL**, il faut que l'adresse IP donnée __à la carte __**__RJ-45__**__ du poste de travail__ soit sur le réseau LOCAL de l'invité. Pour nous, cette adresse sera **__10.10.10.81__** et pour la carte **eth0** du serveur, elle sera **__10.10.10__****__.75__**.\\
{{Images_Cahier-101-03-005.png?25}} Il faut donc que la carte **RJ-45** du poste de travail ait deux adresses IP: une pour accéder au réseau Externe du serveur invité et une autre pour accéder au réseau LOCAL du serveur invité. Nous ajusterons ces deux adresses à la prochaine section.
==== VirtualBox Carte-1 ====
Cette carte, gérée par VirtualBox, sert à connecter la **Carte** **RJ-45** du poste de travail au réseau LOCAL de l'invité NethServer.
==== Carte eth0 ====
La carte **eth0** possède une adresse IP __statique__, c.-à-d. **10.10.****1****0****.****75**//,// qui lui est attribuée lors de l'installation du serveur.\\
- Cette carte se nomme **enpXsX** //(enp0s3)// pour le serveur invité NethServer, mais nous l'appellerons **eth0**.\\
- Elle est le point d'entrée/sortie du réseau LOCAL du serveur invité NethServer.
==== VirtualBox Carte-2 ====
Cette carte, gérée par VirtualBox, sert à connecter la **Carte** **RJ-45** du poste de travailau réseau Externe de l'invité NethServer.
==== Carte eth1 ====
La carte **eth1** possède une adresse IP __statique__, c.-à-d. **192.168.1.75** qui lui est attribuée lors de l'installation du serveur NethServer.\\
- Cette carte se nomme **e****np****X****s****Y** //(enp**0**s**8**)// pour le serveur NethServer, mais nous l'appellerons **eth1**.\\
- Elle est le point d'entrée/sortie du réseau Externe du serveur NethServer.
===== Poste de travail =====
==== Fichier hosts ====
Le **FQDN** de notre futur Serveur NethServer sera **micronator-dev.org**. Vu que nous n'avons pas de serveur DNS sur notre réseau, il nous faut une façon quelconque pour pouvoir spécifier le nom de notre domaine afin que le navigateur puisse identifier son adresse IP sans devoir interroger un serveur DNS. C'est ici que le fichier **hosts** du poste de travail entre en jeu.
La communication dans l'Internet se fait toujours par adresses IP et non pas avec les noms de domaines qui sont utilisés par les humains qui ont plus de facilité à retenir un nom qu'un numéro.
Lorsque vous voulez vous rendre chez **google.com**, le navigateur ne connaît pas l'adresse IP de google.com. Il commence par regarder dans le fichier **hosts** du poste de travail si ce fichier contient une référence à google.com.
Si oui, il utilise l'adresse IP contenu dans le fichier hosts.
Si le fichier hosts du poste de travail n'a pas de référence pour le nom du domaine recherché, le navigateur va demander à son serveur DNS s'il connaît google.com. Si son serveur DNS ne connaît pas le domaine en question, il demande à son serveur DNS supérieur s'il connaît le domaine. Si le DNS supérieur n'a pas de référence pour le domaine, à son tour, il demande à son serveur DNS supérieur et ainsi de suite jusqu'au DNS tout en haut de l'échelle hiérarchique **.com** qui lui, avec ses confrères **.org**, **.net**, etc... connaissent tous les noms des domaines de l'Internet.
Une fois l'adresse IP trouvée, elle redescend l'échelle hiérarchique jusqu'à votre navigateur qui utilisera alors l'adresse IP reçue pour communiquer avec google.com.
Le point à remarquer est que le navigateur cherche en premier lieu dans le fichier **host** du poste de travail. Pour tromper le navigateur, il suffit alors d'y entrer une référence pour notre domaine **micronator-dev.org**.
Pour un système Windows, le chemin du fichier hosts est: **C:\Windows\System32\drivers\etc\hosts**. Pour un système Linux, le chemin est: **/etc/hosts**.
Pour un système Windows, le fichier hosts est en **Lecture seule**.
__En ayant les droits d'administrateur____ Windows__, on enlève le droit de Lecture seule sur le fichier hosts du poste de travail et on l'édite avec **Notepad++**.
Dans l'explorateur de fichiers, on claque sur le fichier **hosts -> Propriétés**.
|{{ Images_Cahier-101-03-016.png?300 }}|
\\
Décocher **Lecture seule -> OK**.
|{{ Images_Cahier-101-03-017.png?330 }}|
\\
**Continuer**.
|{{ Images_Cahier-101-03-018.png?330 }}|
\\
On claque sur **hosts** -> **Éditer avec Notepad++**.
|{{ Images_Cahier-101-03-019.png?400 }}|
On entre notre domaine, ses //CNAME// et son adresse **IP**.
|{{ Images_Cahier-101-03-020.png?400 }}|
\\
Lorsqu'on veut sauvegarde le fichier, **Notepad++** nous demande si on veut le relancer en //mode Administrateur//.
\\
\\
**Oui**.
**Oui** encore au prochain écran qui demande l'autorisation d'apporter des modifications à cet ordinateur.
|{{ nethserver_101_cahier_03_creation_un_serveur_virtuel-1_image_21.png?400}}|
{{Images_Cahier-101-03-006.png?25}} On est alors retourné à l'écran d'édition et __on sauvegarde ____encore une fois__, car la première sauvegarde n'a pas eu lieu, elle a été transformée en demande de changement de mode.\\
{{Images_Cahier-101-03-008.png?25}} On ferme Notepad++ et on remet le fichier hosts en Lecture seule.
À l'avenir, lorsqu'on demandera à notre navigateur de se rendre à **https://www.micronator-dev.org:980**, il cherchera dans le fichier hosts une correspondance avec **www.micronator-dev.org** et trouvera **//www.micronator-dev.org//**, il prendra alors l'adresse **//10.10.10.75//** qui y est associée et se connectera à la page de l'interface Web de notre Serveur NethServer.
==== Particularités de la carte RJ-45 ====
{{Images_Cahier-101-03-005.png?25}} L'adresse **MAC** de cette carte est différente de l'adresse MAC de la **Carte-****0**, **Carte-1**, **eth****0** ou **eth1**.\\
{{Images_Cahier-101-03-006.png?25}} La carte réseau **RJ-45** doit être __activée et reliée à un dispositif quelconque__ pour que le poste de travail puisse l'identifier. Pour nous, cette carte est branchée à un port du modem **ADSL/VDSL**.
__Si le connecteur RJ-45 n'est pas branché__ à un dispositif quelconque et qu'on examine cette carte dans l'utilitaire **Centre Réseau et partage** de Windows, on verra qu'il indique **//Câble réseau non connecté//** même si elle est pourtant reliée, à travers la Carte-1, au réseau LOCAL et à travers la Carte-2, au réseau Externe du serveur invité NethServer.
|{{ Images_Cahier-101-03-022.png?400}}|
De plus, si VirtualBox ne trouve pas cette carte, le serveur invité NethServer pourrait refuser de démarrer.
Plus haut, nous avons débuté une arnaque en faisant croire au navigateur Web du poste de travail que c'est son serveur DNS qui lui donnera l'adresse l'IP de notre Serveur NethServer LOCAL alors qu'en réalité c'est le fichier **C:\Windows\System32\drivers\etc\hosts** du poste de travail qui répondra à sa requête.
{{Images_Cahier-101-03-003.png?22}} Le but principal de notre configuration non standard de la carte réseau du poste de travail est de continuer l'arnaque précédente en lui faisant croire qu'il possède deux cartes réseau RJ-45.
==== Première adresse IP ====
Nous commençons par donner l'adresse **192.168.1.81** à la carte RJ-45 du poste de travail.
- Clac //(clic droit)// sur l'icône réseau dans la zone de notification -> **Ouvrir le Centre Réseau et partage**.
- **Modifier les paramètres de la carte.**
|{{ Images_Cahier-101-03-023.png?400 }}|
|{{ Images_Cahier-101-03-024.png?400 }}|
\\
- Clac sur la carte **Éthernet -> Propriétés**.
- Onglet **Gestion de réseau -> Protocole Internet version 4 (TCP/IPv4) -> Propriétés**.
|{{ Images_Cahier-101-03-025.png?400 }}|
|{{ Images_Cahier-101-03-026.png?400 }}|
\\
**//Utiliser l'adresse IP suivante://**\\
\\
On entre les informations telles que ci contre.\\
\\
{{Images_Cahier-101-03-005.png?25}} Utiliser une passerelle par défaut sur un autre segment **IP** que l'adresse principale __n'est pas tout à fait standard__.
**//Utiliser l'adresse de serveur DNS suivante://**\\
\\
- Pour le serveur DNS préféré, nous utiliserons l'adresse IP //(**10.10.10.75**)// du serveur invité NethServer sur son réseau LOCAL afin de pouvoir utiliser le nom FQDN du Serveur NethServer virtuel même si celui-ci ne possède pas de véritable nom de domaine.\\
\\
- En effet, plus tard, lorsque le navigateur Web lancera une requête DNS pour l'adresse IP de l'URL **https://www.micronator-dev.org**:\\
\\
- Windows cherchera d'abord dans son fichier hosts s'il existe une correspondance pour cette URL. Il trouvera l'adresse IP du Serveur NethServer entrée précédemment et il la transmettra au navigateur Web.\\
|{{ nethserver_101_cahier_03_creation_un_serveur_virtuel-1_image_32.png?400}}|
- Si l'URL en question n'existe pas dans le fichier hosts du poste de travail, la requête sera transmise au serveur DNS préféré **10.10.10.75**, le Serveur NethServer virtuel. Si notre serveur virtuel ne connaît pas cette URL, il transmet la requête à son propre serveur DNS qui lui, la transmet à son propre serveur DNS, etc... jusqu'à ce que l'adresse IP soit enfin trouvée et retournée au navigateur Web.\\
- Lorsque le serveur invité sera éteint, la carte RJ-45 ne trouvant pas le serveur DNS préféré, demandera alors au serveur DNS auxiliaire //(**192.168.1.1** - le modem ADSL/VDSL)// de remplir les requêtes DNS.\\
\\
Cliquer **Avancé...**
\\
\\
==== Deuxième adresse IP ====
Nous donnons la deuxième adresse **10.10.10.81** à la carte RJ-45 du poste de travail.
- Onglet **Paramètres IP**.\\
- **Adresses IP**.\\
- **Ajouter**.
|{{ Images_Cahier-101-03-028.png?300 }}|
\\
- On entre l'adresse et le masque.\\
- **Ajouter**.
|{{ Images_Cahier-101-03-029.png?330 }}|
\\
La nouvelle adresse a été ajoutée à la carte RJ-45 du poste de travail.
|{{ Images_Cahier-101-03-030.png?330 }}|
\\
=== Passerelle ===
\\
\\
//Passerelles par défaut:// **Ajouter...**
|{{ Images_Cahier-101-03-031.png?300 }}|
\\
- //Passerelle:// **192.168.1.1**\\
- **Ajouter**.
|{{ Images_Cahier-101-03-032.png?330 }}|
\\
- La deuxième passerelle à été ajoutée.\\
- **OK**.
|{{ Images_Cahier-101-03-033.png?330 }}|
\\
**OK**.
|{{ Images_Cahier-101-03-034.png?300 }}|
**OK**.
|{{ Images_Cahier-101-03-035.png?330 }}|
**OK**.
|{{ Images_Cahier-101-03-036.png?330 }}|
\\
- Nos deux adresses IP et nos deux passerelles son présentes.\\
\\
- **Fermer** toutes les fenêtre.
|{{ Images_Cahier-101-03-037.png?400}}|
\\
====== Création de la machine virtuelle NethServer ======
===== Marche à suivre =====
- Vérification du **BIOS** du poste de travail.
- Téléchargement de l'**ISO** du fichier d'installation du Serveur NethServer et vérification de la somme de contrôle.
- Création, installation et configuration de la machine virtuelle pour le Serveur NethServer.
===== BIOS =====
//Référence:// [[https://download.virtualbox.org/virtualbox/UserManual_fr_FR.pdf|https://download.virtualbox.org/virtualbox/UserManual_fr_FR.pdf]].\\
//Référence:// Oracle VM VirtualBox 6.0 Administration Guide -> https://docs.oracle.com/cd/E97728_01/F12469/F12469.pdf.
Depuis 2006, les processeurs Intel et AMD supportent ce qu’on appelle la “virtualisation matérielle”. La virtualisation matérielle signifie que ces processeurs peuvent aider VirtualBox à intercepter des opérations potentiellement dangereuses que pourrait essayer d'exécuter le système d’exploitation invité. La virtualisation matérielle facilite la présentation du matériel virtuel à une machine virtuelle.
Ces fonctionnalités du matériel diffèrent entre les CPU Intel et AMD. Intel a appelé sa techno **VT-x**; AMD a nommé la leur **AMD-V**. Le support d’Intel et d’AMD de la virtualisation est très différent dans le détail, mais pas si différent dans le principe.
Les processeurs modernes incluent des fonctionnalités de virtualisation matérielle qui aident à accélérer VirtualBox. Intel VT-x __n'est pas toujours activé par défaut__. Si tel est le cas, un message tel que //L'accélération matérielle VT-x/AMD-V n'est pas disponible sur votre système// ou //Cet hôte prend en charge Intel VT-x mais Intel VT-x est désactivé//.
L'activation est nécessaire pour Intel VT-x. Le matériel Intel VT-x peut être activé via le **BIOS** ou **UEFI** et __il est régulièrement désactivé sur les nouveaux ordinateurs__.
AMD-V est toujours activé si vous utilisez un processeur AMD qui le prend en charge, il n'y a donc aucun BIOS ou UEFI à modifier.
==== Activation ====
[[http://www.informatiweb.net/tutoriels/informatique/9-bios/89--activer-la-virtualisation-intel-vt-x-amd-v.html|http://www.informatiweb.net/tutoriels/informatique/9-bios/89--activer-la-virtualisation-intel-vt-x-amd-v.html]].\\
[[http://www.pumbaa.ch/blog/tutoriaux/?d=2016/03/09/16/30/00-activer-vt-xamd-v-pour-installer-un-os-64-bits-dans-une-vm|http://www.pumbaa.ch/blog/tutoriaux/?d=2016/03/09/16/30/00-activer-vt-xamd-v-pour-installer-un-os-64-bits-dans-une-vm]].\\
[[https://www.qnap.com/fr-fr/qa/con_show.php?op=showone&cid=258|https://www.qnap.com/fr-fr/qa/con_show.php?op=showone&cid=258]].\\
[[http://f4b1.com/comment-activer-la-virtualisation-vt-x-amd-v-dans-le-bios|http://f4b1.com/comment-activer-la-virtualisation-vt-x-amd-v-dans-le-bios]].
===== Téléchargement de l'ISO de NethServer =====
==== Choix de l'ISO ====
Pour obtenir l'**ISO** de NethServer-7.6.1810, se rendre sur le site: [[https://sourceforge.net/projects/nethserver/files/]].
{{ Images_Cahier-101-03-038.png?600}}
Dans un répertoire de la station de travail, on télécharge les deux fichiers:\\
nethserver-7.6.1810-x86_64.iso\\
nethserver-7.6.1810-x86_64.iso.sha1.
\\
\\
===== Vérification de la somme de contrôle de l'ISO NethServer =====
{{Images_Cahier-101-03-004.png?25}} Il est préférable de vérifier la somme de contrôle du fichier avant de l’utiliser.
==== DigestIT-2004 ====
Si **DigestIT-2004** n'est pas installé, on peut le télécharger et l'installer pour calculer la somme de contrôle. Voir le [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]].
==== Calcul de la somme de contrôle ====
__Contenu du fichier sha1__: //nethserver-7.6.1810-x86_64.iso.sha1// -> **2195049bebfda53e264faffe23e5b8c72fc39f5b** nethserver-7.6.1810-x86_64.iso\\
- Pour calculer la somme de contrôle:\\
- Clac sur le fichier ISO.\\
**DigestIT 2004** -> **Calculate SHA-1 Hash**.\\
- //(Peut prendre un certain temps)//.
- Les sommes de contrôle correspondent.
|{{ Images_Cahier-101-03-040.png?400 }}|
|{{ Images_Cahier-101-03-041.png?400 }}|
\\
===== Paramètres de la machine virtuelle NethServer =====
Nous allons créer une machine virtuelle que nous nommerons **NethServer-7.6-25GB** dans VirtualBox.
- //Nom//// du serveur virtuel//: **tchana**.
- //Le nom complet FQDN du serveur sera//: **tchana.micronator-dev.org**.
- //Mémoire//: **4096 MB**. Si nous avons seulement 4096 MB de mémoire totale et que nous allouons plus de 1998 MB, VirtualBox affichera un **Avertissement**.
- //Disque//: **25 Go**//(8 Go serait amplement suffisant)//.
- //IP (réseau LOCAL)//: **10.10.10.75/24**.
- //IP (réseau Externe)//: **192.168.1.****75****/24**.
\\
\\
===== Création =====
\\
**Machine -> Nouvelle**.
|{{ Images_Cahier-101-03-042.png?400 }}|
- On entre les informations demandées.\\
- **Créer**.
|{{ Images_Cahier-101-03-043.png?500 }}|
\\
\\
- Un disque de 8 GB serait amplement suffisant.\\
- **Créer**.
|{{ Images_Cahier-101-03-044.png?500 }}|
- On est retourné à l’écran principal de VirtualBox et on voit notre nouvelle machine virtuelle.\\
- On la sélectionne -> **Configuration**.
|{{ Images_Cahier-101-03-045.png?400 }}|
\\
|{{ Images_Cahier-101-03-046.png?400 }}|
\\
\\
===== Configuration =====
- **Général ->** onglet **Avancé ->** //Presse-papier partagé:// **Bidirectionnel ->** //Glisser-Déposer:// **Bidirectionnel**.\\
- L'activation de ces deux paramètres n'est pas obligatoire et ils peuvent être laissés à leur valeur par défaut.
|{{ Images_Cahier-101-03-047.png?400 }}|
\\
Onglet **Description ->** on entre une description assez détaillée avec l’adresse IP et surtout le mot de passe, car une fois qu’on aura plusieurs MV, il sera facile d’oublier…
|{{ Images_Cahier-101-03-048.png?400 }}|
\\
**Système ->** onglet **Processeur ->** on peut choisir le nombre de processeurs à allouer à cette machine virtuelle.
|{{ Images_Cahier-101-03-049.png?400 }}|
**Affichage ->** onglet **Écran ->** //Mémoire Vidéo:// on ajuste à 64 MB ou jusqu'au max 128 MB.
|{{ Images_Cahier-101-03-050.png?400 }}|
\\
==== Lecteur CD/DVD ====
**Stockage -> Vide ->** cliquer l’icône du **CD/DVD -> Choisissez un fichier de disque optique virtuel...**
|{{ Images_Cahier-101-03-051.png?400 }}|
On se rend au répertoire où on a téléchargé l’ISO de NethServer-7.6, on sélectionne le fichier ISO **-> Ouvrir**.
|{{ Images_Cahier-101-03-052.png?400 }}|
\\
- Le fichier ISO de NethServer-7.6 est maintenant attaché au CD/DVD de la machine virtuelle.\\
- Lorsque la MV amorcera, elle lancera l’installation de NethServer-7.6/64.
|{{ Images_Cahier-101-03-053.png?400 }}|
\\
\\
**Son ->** on décoche //Activer le son//. Un serveur n’a pas besoin de carte de son.
|{{ Images_Cahier-101-03-054.png?400 }}|
\\
==== eth0 – réseau LOCAL ====
- **Réseau ->** onglet **Interface 1**.
- //Mode d’accès réseau:// **Accès par pont**.
- Cliquer **Avancé** pour afficher plus de choix.
- //Type d'interface:// choisir la carte physique, celle reliée au connecteur RJ-45.
{{Images_Cahier-101-03-004.png?25}} On note l’adresse MAC de la carte réseau, elle servira plus tard pour identifier la carte **eth0** du Serveur NethServer virtuel lors de sa configuration.
{{Images_Cahier-101-03-005.png?25}} L'adresse MAC qui est affichée ici est différente de l'adresse MAC de la carte RJ-45 et est créée par VirtualBox.
|{{ Images_Cahier-101-03-055.png?400}}|
{{Images_Cahier-101-03-003.png?22}} La carte réseau RJ-45 doit être activée et relié à un dispositif quelconque pour que le Serveur NethServer invité puisse l'identifier. Si tel n'est pas le cas, VirtualBox ne trouvera pas cette carte.
==== eth1 – réseau externe ====
- **Réseau ->** onglet **Interface 2**.
- On coche **Activer la carte réseau**.
- //Mode d’accès réseau:// **Accès par pont**.
- Cliquer **Avancé** pour afficher plus de choix.
{{Images_Cahier-101-03-004.png?25}} On note l’adresse MAC de la carte réseau, elle servira plus tard pour identifier la carte **eth1** du Serveur NethServer virtuel lors de sa configuration.
{{Images_Cahier-101-03-005.png?25}} L'adresse MAC qui est affichée ici est différente de l'adresse MAC de la carte RJ-45 et est créée par VirtualBox.
|{{ Images_Cahier-101-03-056.png?400}}|
==== Interface utilisateur ====
\\
\\
On déroule __tous les menus__ et on coche toutes les options offertes.
|{{ Images_Cahier-101-03-057.png?400 }}|
- On coche //Afficher en plein écran/mode intégré//.\\
- On coche //Afficher en haut de l'écran//.\\
- On coche la case en bas à gauche.\\
- **OK**.
|{{ Images_Cahier-101-03-058.png?400 }}|
\\
====== Installation ======
===== Fichier ISO =====
Le fichier ISO de NethServer-7.6 est attaché au lecteur CD/DVD de la machine virtuelle, voir la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Lecteur CD/DVD]]
===== Installation =====
- À l'écran VirtualBox, on sélectionne la nouvelle machine virtuelle.\\
- Puis, on clique l’icône **Démarrer**.
{{Images_Cahier-101-03-004.png?25}} On peut aussi faire un double clic sur le nom de la machine virtuelle.
|{{ Images_Cahier-101-03-060.png?100 }}|
|{{ Images_Cahier-101-03-059.png?500 }}|
\\
{{Images_Cahier-101-03-005.png?25}} __Tous les disques de cette machine virtuelle seront effacés__.
- À l'invite, faire **[RETOUR]**.
- L'installation débute.
|{{ Images_Cahier-101-03-061.png?400 }}|
|{{ Images_Cahier-101-03-062.png?400 }}|
\\
==== Date et heure ====
{{Images_Cahier-101-03-005.png?25}} Une fois le Serveur NethServer installé, nous aurons plus de choix pour le fuseau horaire. Voir le paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Date and Time]].
- **DATE & TIME**.
- On choisit notre fuseau horaire.\\
**-> Done**.
|{{ Images_Cahier-101-03-063.png?400 }}|
|{{ Images_Cahier-101-03-064.png?400 }}|
\\
==== Clavier ====
- **KEYBOARD**.
- On sélectionne **English (US)**.\\
**-> Done**.
|{{ Images_Cahier-101-03-065.png?400 }}|
|{{ Images_Cahier-101-03-066.png?400 }}|
\\
==== Réseau et nom d'hôte ====
\\
\\
**NETWORK & HOSTNAME**.
|{{ Images_Cahier-101-03-067.png?400 }}|
\\
- On sélectionne la première carte réseau.
- **Configure...**
|{{ Images_Cahier-101-03-068.png?400 }}|
Onglet **General** -> on coche **Automatically connect to this network when it is available**.
|{{ Images_Cahier-101-03-069.png?400 }}|
\\
Onglet **IPv4 Settings -> Manual ->** on entre les informations demandées telles que ci-dessous **-> Save**.
|{{ Images_Cahier-101-03-070.png?400 }}|
\\
\\
La première carte réseau est configurée.
|{{ Images_Cahier-101-03-071.png?400 }}|
\\
On choisit la deuxième carte -> **Configure...**
|{{ Images_Cahier-101-03-072.png?400 }}|
\\
Onglet **General** -> on coche **Automatically connect to this network when it is available**.
|{{ Images_Cahier-101-03-073.png?400 }}|
Onglet **IPv4 Settings -> Manual ->** on entre les informations demandées telles que ci-dessous **-> Save**.
|{{ Images_Cahier-101-03-074.png?400 }}|
\\
==== FQDN de notre serveur NethServer ====
- La deuxième carte est configurée.\\
- On entre le nom FQDN de notre serveur **-> Apply -> Done**.
|{{ Images_Cahier-101-03-075.png?400 }}|
\\
\\
**Begin Installation**.
|{{ Images_Cahier-101-03-076.png?400 }}|
\\
\\
**ROOT PASSWORD**.
|{{ Images_Cahier-101-03-077.png?400 }}|
\\
On entre un mot de passe robuste **->** on confirme **-> Done**.
|{{ Images_Cahier-101-03-078.png?400 }}|
\\
L'installation se poursuit.
|{{ Images_Cahier-101-03-079.png?400 }}|
\\
Être patient!
|{{ Images_Cahier-101-03-080.png?400 }}|
\\
\\
\\
Le Serveur NethServer réamorce.
|{{ Images_Cahier-101-03-081.png?400 }}|
- Les URL pour accéder à l'interface Web sont affichées.\\
- On se logue à la console du serveur.
|{{ Images_Cahier-101-03-082.png?400 }}|
\\
\\
\\
\\
\\
\\
\\
\\
\\
À l'invite, on voit le nom de notre serveur, celui qu'on lui a donné lors de l'installation.
\\
===== Connexion à l'interface Web =====
NethServer peut être configuré à l'aide de l'interface Web du gestionnaire du serveur.
À partir d'un autre ordinateur ou d'une tablette, vous avez besoin d'un navigateur Web tel que Mozilla Firefox, Google Chrome ou Safari pour accéder à l'interface Web à l'aide de l'adresse https://abcd:**980** où abcd est l'adresse IP configurée lors de l'installation du serveur et **980** est le port utilisé par l'interface Web.
Pour l'instant, on se connecte à l'interface WEB par l'IP du réseau LOCAL: https://10.10.10.75:980.
- On ajoute une exception de sécurité.
**-> Confirmer l'exception de sécurité**.
|{{ Images_Cahier-101-03-083.png?400 }}|
|{{ Images_Cahier-101-03-084.png?400 }}|
\\
===== Configuration initiale =====
- Nom d'utilisateur par défaut: **root**.
- Nous avons déjà choisi un mot de passe à la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#FQDN de notre serveur NethServer]].
- Si nous n'avons pas choisi un mot de passe, par défaut il est défini à: Nethesis,1234. Attention, __ne pas oublier la "virgule"__.\\ Si le mot de passe de **root** n'est pas robuste, modifiez-le dès que possible en choisissant un mot de passe composé d’une séquence aléatoire de lettres, de chiffres et de symboles. Voir [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Changement du mot de passe de root]].
On se logue avec le nom de\\
l'usager **root**.
|{{ Images_Cahier-101-03-085.png?200 }}|
\\
**NEXT**.
|{{ Images_Cahier-101-03-086.png?700 }}|
==== Restore configuration ====
On pourrait récupérer la configuration depuis une sauvegarde précédente. ** -> Next**.
{{ Images_Cahier-101-03-087.png?800 }}
==== Set host name ====
Le FQDN de notre serveur a été entré au paragraphe FQDN de notre serveur NethServer au paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#FQDN de notre serveur NethServer]]. On peut le modifier ici. **-> Next**.
{{ Images_Cahier-101-03-088.png?800 }}
==== Date and time ====
On choisit le fuseau horaire. Ici, nous avons beaucoup plus de choix que lors de l'installation du serveur.
**-> Next**.
{{ Images_Cahier-101-03-089.png?800 }}
==== SSH ====
{{Images_Cahier-101-03-004.png?25}} On change le port **SSH** de **22** à **2222** pour dérouter, un peu plus, les intrusions malveillantes. **-> Next**.
{{ Images_Cahier-101-03-090.png?800 }}
==== Smarthost ====
Envoyer les courriels en utilisant un **smarthost**** (( **Smarthost**: Un smarthost est un serveur de messagerie via lequel des tiers peuvent envoyer des courriers électroniques et les transférer sur les serveurs de messagerie des destinataires. \\ //Référence//: [[https://en.wikipedia.org/wiki/Smart_host|https://en.wikipedia.org/wiki/Smart_host]]. \\ \\ ))**.
{{Images_Cahier-101-03-003.png?22}} Le serveur tentera d'envoyer les courriels directement à la destination //(recommandé dans la plupart des cas)//. En choisissant plutôt d'envoyer par un **smarthost**, il essaiera de les transmettre via le serveur **SMTP** du **FAI**//(recommandé en cas de connexion peu fiable ou d'ADSL résidentiel, IP dynamique, etc.)//. **-> Next**.
{{ Images_Cahier-101-03-091.png?800 }}
**Usage statistics**
Ces statistique sont utilisées seulement pour connaître le nombre total de Serveurs NethServer installés. **-> Next**
{{ Images_Cahier-101-03-092.png?800 }}
==== Review changes ====
On vérifie tout. **-> Apply**.
{{ Images_Cahier-101-03-093.png?800 }}
\\
====== Instantané d'une machine virtuelle ======
===== Introduction =====
//Référence:// [[http://www.commentcamarche.net/faq/20874-virtualbox-les-instantanes|http://www.commentcamarche.net/faq/20874-virtualbox-les-instantanes]]
Grâce aux instantanés VirtualBox, vous pouvez enregistrer l'état particulier d'une machine virtuelle à un moment donné pour pouvoir l'utiliser plus tard. Ainsi, après avoir pris un instantané, vous pourrez à n'importe quel moment revenir à cet état, même si la machine virtuelle a été complètement changée ou endommagée.
Les instantanés sont particulièrement utiles pour disposer d'un système toujours propre et s'assurer que la machine virtuelle est dépourvue de bogues causés par l'installation de logiciels, virus ou autres.
//**Créer un instantané**//
Si votre machine virtuelle est en marche: **Menu utilisateur -> Machine -> Prendre un instantané...**
Si votre machine virtuelle est arrêtée: sélectionnez votre machine virtuelle dans le panneau de gauche puis cliquer **Snapshots** à droite et enfin: clac sur **État actuel -> Take...** ou la combinaison **[CTL]** + **[Majuscule]** + **[S]**. Saisissez un nom descriptif, par exemple: “Installation_fraiche_AAAA-MM-JJ_hhhmm” //(__pas d'accents dans le nom__)//, puis une description tout aussi descriptive “NethServer-7.6_64 / mot de passe = toto / 10.10.10.75”.
{{Images_Cahier-101-03-006.png?25}} La création de l'instantané peut prendre un certain temps si la machine virtuelle est active sinon, ne prend qu'une seconde.
//**Hiérarchie des instantanés**//
Vos instantané apparaissent dans la liste des instantanés. L'**État actuel** de votre machine virtuelle est dérivé de l'instantané précédemment créé.
Si, à ce moment-là, vous prenez un instantané n°2 puis un autre n°3, chacun d'entre eux sera un instantané dérivé de l'instantané précédent. L'état actuel peut dériver de l'instantané n°3 qui lui-même dérive du n°2 qui lui-même dérive du premier.
Vous pouvez ainsi créer autant d'instantanés que vous voulez pour créer autant d'états que vous le souhaitez.
|{{ Images_Cahier-101-03-094.png?400}}|
{{Images_Cahier-101-03-006.png?25}} Attention! Si la machine virtuelle roule, __les instantanés utilisent beaucoup d'espace disque__, car l'instantané contiendra aussi le contenu de la mémoire de la machine virtuelle.
//**Utilisation des instantanés**//
**Mise en garde**
Lorsque vous faites un __retour sur instantané__ c'est tout le disque dur //(i.e. le fichier du disque)// de la machine virtuelle qui est restauré. Autrement dit, si vous aviez créé des documents sur ce disque //(////pour une machine virtuelle Windows ////si vous avez enregistré vos documents sur le ////**Bureau**//// ou dans ////“////**Mes Documents**////”////)//, vous ne les retrouverez plus!\\
{{Images_Cahier-101-03-003.png?22}} Pensez donc à enregistrer vos documents ailleurs que sur la machine virtuelle avant de faire un __retour sur instantané__!
=== Restaurer instantané ===
Vous permet de rétablir le système tel qu'il était lors de la saisie de l'instantané. Attention à la mise en garde du paragraphe précédent.
=== Supprimer instantané ===
Vous permet de supprimer l'instantané que vous avez sélectionné.
Vous ne pourrez plus revenir à l'ancien état sauvegardé par cet instantané, mais la machine virtuelle actuelle conserve son état actuel.
Utile si vous avez trop abusé des instantanés et que vous manquez d'espace libre sur votre disque dur, supprimez ainsi les instantanés qui vous serviront probablement le moins.
===== Création d'un instantané du Serveur NethServer =====
Maintenant que notre Serveur NethServer est installé et fonctionnel, il serait dommage de faire une manipulation quelconque et de ruiner tout le travail qu'on a fait à date.
{{Images_Cahier-101-03-004.png?25}} Si nous prenons un Instantané d'une MV qui roule, l'Instantané comprendra aussi le contenu de la mémoire ce qui augmentera sa taille. Pour cette raison, nous allons arrêter notre serveur avant de procéder.
À la console du serveur, on lance la commande ci-dessous pour arrêter notre Serveur NethServer.
[root@tchana ~]# shutdown -h now
- Dans le panneau de gauche, on sélectionne notre machine.\\
- Dans le panneau de droite, on sélectionne **État actuel modifié -> Prendre**.
|{{ Images_Cahier-101-03-095.png?500}}|
{{Images_Cahier-101-03-005.png?25}} Si la machine virtuelle est arrêtée, peu importe sa taille, un Instantané ne prend qu'une seconde à être créé.
- Donner __un nom descriptif sans accents ni espaces__ et quelques mots d'explication.\\
- **OK**.
|{{ Images_Cahier-101-03-096.png?400}}|
\\
\\
Pour afficher les détails, on sélectionne la source de l'instantané.
|{{ Images_Cahier-101-03-097.png?400}}|
\\
//**Redémarrage**//
On sélectionne **État actuel -> Démarrer** et on peut relancer la machine virtuelle.\\
{{Images_Cahier-101-03-004.png?25}} On peut aussi double-cliquer la machine virtuelle dans le panneau de gauche.
|{{ Images_Cahier-101-03-098.png?400}}|
===== Restauration =====
{{Images_Cahier-101-03-005.png?25}} On peut restaurer tout Instantané d'une MV.
Si l'Instantané n'a pas été modifié, on peut restaurer avec un clac et **Restore**.
|{{ Images_Cahier-101-03-099.png?400}}|
\\
\\
Si l'Instantané a été //modifié//, on peut restaurer avec un clac et **Restore**.
|{{ Images_Cahier-101-03-100.png?400}}|
Mais cette fois, on nous demandera si on veut créer un Instantané de l'//État actuel//.\\
☑ //**Créer un instantanné...**//\\
- **Restaurer**.
|{{ Images_Cahier-101-03-101.png?400}}|
\\
- On entre les informations pour l'Instantané de l'//État actuel//.\\
- **OK**.
|{{ Images_Cahier-101-03-102.png?400}}|
\\
Un Instantané de l'ancien //État actuel// sera effectué et un nouvel //État actuel// de la machine source sera créé.
|{{ Images_Cahier-101-03-103.png?400}}|
\\
====== Configuration ======
===== Réseau =====
//**Rôles et zones**//
Chaque interface réseau a un rôle qui correspond à une zone du pare-feu. Le pare-feu comporte les zones intégrées suivantes, classées de la plus prépondérante à la moins privilégiée:
**VERT**: -> réseau LOCAL, cette zone est considérée comme fiable. Les hôtes de ce réseau peuvent accéder à n’importe quelle autre zone. Les hôtes connectés via **VPN** peuvent être considérés en zone verte.\\
**BLEU**: -> réseau invité. Les hôtes de ce réseau peuvent accéder aux zones orange et rouge, mais pas à la zone verte.\\
**ORANGE**: -> réseau **DMZ**. Les hôtes de ce réseau peuvent accéder à la zone rouge, mais pas aux zones verte et bleue.\\
**ROUGE**: -> réseau externe/Internet. Les hôtes de ce réseau peuvent uniquement accéder à cette zone.
Il existe également une zone de pare-feu spéciale qui représente le pare-feu lui-même. Le pare-feu peut accéder à n’importe quelle zone.\\
Chaque interface réseau, avec un rôle configuré, est une zone du pare-feu. Les rôles sont "mappés" aux zones **Shorewall** comme suit:
**vert** -> loc\\
**rouge** -> net\\
**bleu** -> bleu\\
**orange** -> orang //(dans Shorewall, un nom de zone ne peut dépasser 5 caractères)//\\
**pare-feu** -> FW
{{Images_Cahier-101-03-005.png?25}} Les noms personnalisés de zones sont directement "mappés" sur Shorewall en respectant la limite de 5 caractères.\\
{{Images_Cahier-101-03-006.png?25}} Les interfaces rouges peuvent être configurées avec une adresse IP statique ou à l'aide de **DHCP**. Toutes les autres interfaces ne peuvent être configurées qu'avec des adresses IP statiques.
\\
\\
===== Connexion Internet =====
Lors de la configuration du poste de travail, nous avons configuré la carte RJ-45 pour que ce soit elle qui nous connecte à l'internet. Nous lui avons donné l'adresse IP statique //(fixe)// **192.168.1.81** et comme passerelle //(////Gateway////)// l'adresse **192.168.1.1**.
{{ Images_Cahier-101-03-104.png?600 }}
{{Images_Cahier-101-03-005.png?25}} De plus, nous assumons que c'est le modem **ADSL/VDSL** qui sert de **DHCP** et qu'il fournit dynamiquement les adresses IP à tous les autres postes sur le réseau **192.168.1.0/24**.\\
{{Images_Cahier-101-03-003.png?22}} Si ce n'est pas le modem ADSL/VDSL qui sert de DHCP et que c'est plutôt votre FAI qui assigne l'adresse IP directement au poste de travail, il vous faut changer, partout dans ce document, l'adresse IP 192.168.1.81 pour celle fournie par votre FAI.
//**Vérification des adresses IP du Serveur NethServer**//
**Configuration -> Network**.
{{ Images_Cahier-101-03-105.png?800 }}
- Sous **Network**, on voit que le réseau de la carte **enp0s3** //(eth0)// est vert indiquant que c'est un réseau de confiance et implique que quiconque sur le réseau 192.168.1.0/24 peut avoir accès au gestionnaire Web du serveur s'il connaît le mot de passe de root.
- Le réseau de la carte **enp0s8** //(eth1)// est rouge indiquant que ce n'est pas un réseau de confiance.
- Voir le paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Services réseau]] pour interdire aux internautes d'accéder à l'interface Web.
{{Images_Cahier-101-03-003.png?22}} On s'assure que la deuxième carte réseau possède bien l'adresse **192.168.1.75** et que son **Role** est **Internet (red)** pour indiquer que c'est elle qui connecte le serveur à l'Internet sinon, on édite la configuration de cette carte en cliquant **Edit** à la fin de la ligne sur la capture d'écran ci-dessus.
\\
\\
**Internet (red)**.
|{{ Images_Cahier-101-03-106.png?300 }}|
\\
**Static ->** on entre les informations ci-dessous.
|{{ Images_Cahier-101-03-107.png?300 }}|
Après avoir cliqué **SUBMIT**, l'interface enp0s8 obtiendra son nouveau rôle: //**Internet (red) - red1**//.
|{{ Images_Cahier-101-03-108.png?300 }}|
//**Vérification de la communication**//
Nous avons installé **PuTTY** lors de l'étude du [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]] //Installation et configuration des logiciels prérequis//.
- Lancer **PuTTY ->** entrer les informations requises **-> Save -> Open**.
- Lors de la première connexion, on accepte la clé de chiffrement.
|{{ Images_Cahier-101-03-109.png?400 }}|
|{{ Images_Cahier-101-03-110.png?400 }}|
On se logue avec **__root__** et le //mot de passe// qu’on lui a attribué.
login as: root
root@10.10.10.75's password: mot-de-passe-de-root
Last login: Wed Feb 13 09:37:23 2019
************ Welcome to NethServer ************
This is a NethServer installation.
Before editing configuration files, be aware
of the automatic events and templates system.
http://docs.nethserver.org
***********************************************
[root@tchana ~]#
On affiche la configuration des cartes réseau.
[root@tchana ~]# ifconfig
enp0s3: flags=4163 mtu 1500
inet 10.10.10.75 netmask 255.255.255.0 broadcast 10.10.10.255
inet6 fe80::a00:27ff:fedf:9e60 prefixlen 64 scopeid 0x20
ether 08:00:27:df:9e:60 txqueuelen 1000 (Ethernet)
RX packets 3823 bytes 356918 (348.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4255 bytes 2853000 (2.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp0s8: flags=4163 mtu 1500
inet 192.168.1.75 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a00:27ff:fe50:453a prefixlen 64 scopeid 0x20
ether 08:00:27:50:45:3a txqueuelen 1000 (Ethernet)
RX packets 25709 bytes 10781534 (10.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 25503 bytes 2502264 (2.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Boucle locale)
RX packets 6792 bytes 876402 (855.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6792 bytes 876402 (855.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@tchana ~]#
Les adresses **IP** sont correctes.
On lance deux **ping** vers google.com pour vérifier que le DNS fonctionne correctement.
[root@tchana ~]# ping -c 2 google.com
PING google.com (172.217.1.174) 56(84) bytes of data.
64 bytes from yyz10s04-in-f14.1e100.net (172.217.1.174): icmp_seq=1 ttl=58 time=11.2 ms
64 bytes from yyz10s04-in-f14.1e100.net (172.217.1.174): icmp_seq=2 ttl=58 time=11.3 ms
--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 11.247/11.293/11.340/0.116 ms
[root@tchana ~]#
===== Test de vitesse =====
On vérifie que tout fonctionne correctement en lançant un test de vitesse.
**Status -> Diagnostics ->** onglet **Speedtest -> SPEEDTEST**.
{{ Images_Cahier-101-03-111.png?800 }}
\\
===== Gestionnaire des logiciels =====
//Référence//: [[http://docs.nethserver.org/en/v7/|http://docs.nethserver.org/en/v7/]].\\
NethServer est hautement modulaire. À la fin de l'installation, un ensemble minimal de fonctionnalités, telles que la configuration réseau et la visionneuse de journaux, est installé. La page **Gestionnaire des logiciels** permet à l'administrateur de sélectionner et d'installer des modules supplémentaires ainsi que de répertorier et de mettre à jour les logiciels déjà installés.
Un module est généralement constitué de plusieurs paquets. Il étend les fonctionnalités du système. Par exemple, un module peut transformer NethServer en serveur de messagerie ou en mandataire Web.
Un progiciel est une unité atomique de logiciel. Il est publié par un référentiel (( **Référentiel**: En informatique, un dépôt ou référentiel //(de l'anglais repository)// est un stockage centralisé et organisé de données. Ce peut être une ou plusieurs bases de données où les fichiers sont localisés en vue de leur distribution sur le réseau ou bien un endroit directement accessible aux utilisateurs.La plupart des distributions GNU/Linux utilisent des dépôts accessibles sur Internet, officiels et non officiels, permettant aux utilisateurs de télécharger et de mettre à jour des logiciels compatibles. Ces logiciels sont distribués sous forme de paquets. //Référence//: [[https://fr.wikipedia.org/wiki/Dépôt_(informatique)|https://fr.wikipedia.org/wiki/D%C3%A9p%C3%B4t_(informatique)]]. \\ \\ )) public de logiciels. Les paquets NethServer sont des fichiers au format **RPM**; ainsi, dans ce contexte, les termes **paquet** et **RPM** peuvent être utilisés comme synonymes.
//**Référentiels**//
Les principaux référentiels sont:
- //nethserver-base//: il contient les paquets et les dépendances des modules de base. Il est mis à jour lorsqu'une nouvelle version importante est publiée. Activé par défaut.
- //nethserver-updates//: il contient les paquets mis à jour. Si nécessaire, ces mises à jour peuvent être appliquées sans intervention manuelle. Activé par défaut.
- //nethforge//: modules fournis par la communauté pour NethServer. Activé par défaut.
- //nethserver-testing//: contient les paquets sous processus QA //(Assurance Qualité)//. __Désactivé par défaut__.
- //base//: paquets de base de CentOS. Activé par défaut.
- //updates//: paquets mis à jour à partir de CentOS. Activé par défaut.
- //extras//: RPM supplémentaires. Activé par défaut.
- //epel//: **__E__**xtra **__P__**ackages pour **__E__**nterprise **__L__**inux. Activé par défaut.
-
Une installation standard doit avoir les référentiels suivants __activés__: //base//, //updates//, //nethserver-base//, //nethserver-updates//, //nethforge//, //extras// et //epel//.
On affiche tous les référentiels disponibles pour la version **NethServer-7.6.1810/x86_64**.
[root@tchana ~]# yum repolist
Loaded plugins: changelog, fastestmirror, nethserver_events
Determining fastest mirrors
* base: centos.mirror.ca.planethoster.net
* epel: fedora-epel.mirror.lstn.net
* extras: centos.bhs.mirrors.ovh.net
* nethforge: buck.goip.de
* nethserver-base: buck.goip.de
* nethserver-updates: buck.goip.de
* updates: centos.ca-west.mirror.fullhost.io
repo id repo name status
!base/7/x86_64 CentOS-7 - Base 10,019
!epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,917
!extras/7/x86_64 CentOS-7 - Extras 364
!nethforge/7/x86_64 NethForge 7 180
!nethserver-base/7/x86_64 NethServer-7 - Base 322
!nethserver-updates/7/x86_64 NethServer-7 - Updates 81
!updates/7/x86_64 CentOS-7 - Updates 1,067
repolist: 33,799
[root@tchana ~]#
\\
==== Langue à la console du serveur ====
On affiche les langues offertes à la console du serveur.
[root@tchana ~]# localectl list-locales | grep fr_
fr_BE
fr_BE.iso88591
fr_BE.iso885915@euro
fr_BE.utf8
fr_BE@euro
fr_CA
fr_CA.iso88591
fr_CA.utf8
fr_CH
fr_CH.iso88591
fr_CH.utf8
fr_FR
fr_FR.iso88591
fr_FR.iso885915@euro
fr_FR.utf8
fr_FR@euro
fr_LU
fr_LU.iso88591
fr_LU.iso885915@euro
fr_LU.utf8
fr_LU@euro
[root@tchana ~]#
On ajuste la langue désirée pour l'affichage à la console du serveur.
[root@tchana ~]# localectl set-locale LANG=fr_FR.utf8
[root@tchana ~]#
Les modifications entreront en vigueur après le prochain redémarrage.\\
{{Images_Cahier-101-03-005.png?25}} Cette commande fera en sorte que la langue par défaut à l'écran de login de l'interface Web sera **Français (France)**.
À la console du serveur, __après le prochain redémarrage__, on pourra vérifier la langue d'affichage du système, en lançant la commande ci-dessous.
[root@tchana ~]# ls -als toto
ls: impossible d'accéder à toto: Aucun fichier ou dossier de ce type
[root@tchana ~]#
\\
==== Langue de l'interface Web ====
On change la langue de l'interface.
**Administration -> Software center** (peut prendre un certain temps) -> on coche **French language**.
|{{ Images_Cahier-101-03-112.png?400 }}|
\\
\\
**ADD**.
|{{ Images_Cahier-101-03-113.png?400 }}|
\\
\\
**APPLY CHANGES**.
|{{ Images_Cahier-101-03-114.png?400 }}|
\\
\\
Le RPM //nethserver-lang-fr// s'installe.
|{{ Images_Cahier-101-03-115.png?400 }}|
\\
\\
**Reload page**.
|{{ Images_Cahier-101-03-116.png?400 }}|
On se __déconnecte/reconnecte__ pour activer la traduction française.\\
|{{ Images_Cahier-101-03-117.png?400 }}|
- Par défaut, //Français (France)// est affiché.\\
- **LOGIN**.
|{{ Images_Cahier-101-03-118.png?400 }}|
===== Mises à jour des logiciels =====
Un système NethServer 7 reçoit des mises à jour de différents projets logiciels:
- le projet **NethServer** lui-même,
- le projet **CentOS** et
- le référentiel **EPEL**
Chaque projet publie des mises à jour logicielles en fonction de ses règles spécifiques et de son cycle de développement, mais tous préfèrent la stabilité logicielle aux fonctionnalités dernier cri.
Reportez-vous au forum de la communauté - [[https://community.nethserver.org/|https://community.nethserver.org/]] et aux notes de la version 7 - [[http://docs.nethserver.org/en/v7/release_notes.html#release-notes-section|http://docs.nethserver.org/en/v7/release_notes.html#release-notes-section]] pour plus d'informations sur les mises à jour de NethServer.
À partir des miroirs CentOS, les mises à jour publiées par le projet CentOS sont immédiatement disponibles pour NethServer. Pour plus d'informations sur les mises à jour CentOS, voir:
- [[https://wiki.centos.org/FAQ/General|https://wiki.centos.org/FAQ/General]]
- [[https://access.redhat.com/support/policy/updates/errata/|https://access.redhat.com/support/policy/updates/errata/]]
- [[https://access.redhat.com/security/updates/backporting|https://access.redhat.com/security/updates/backporting]]
- [[https://access.redhat.com/security/|https://access.redhat.com/security/]]
{{Images_Cahier-101-03-004.png?25}} Même si les projets ci-dessus visent la stabilité des logiciels, il faut vérifier si les mises à jour s’intègrent harmonieusement entre-elles.\\
Chaque fois que le système doit être mis à jour, créez une sauvegarde des données et consultez le journal des mises à jour afin de connaître ce qui va advenir avec les différentes mises à jour. Si possible, testez les mises à jour __sur un système hors production__. Pour tout pressentiment, consultez le forum de la communauté NethServer - http://community.nethserver.org/.
==== Configuration ====
**Administration -> Gestionnaire des logiciels -> Configurer**.
{{ Images_Cahier-101-03-119.png?800 }}
☑ **Télécharger les mises à jour**
☐ **Installer les mises à jours automatiquement**\\
Il n'est jamais recommandé d'installer automatiquement des mises à jour.
☑ **Envoyer un mail à l'administrateur système**\\
//**Ajouter des destinataires personnalisés**//\\
On entre un destinataire pour recevoir les messages de disponibilité de mises à jour.
**-> SAUVEGARDER**.
|{{ Images_Cahier-101-03-120.png }}|
==== Courriel de notification ====
Lorsque des mises à jour sont disponibles, un courriel est envoyé à l'adresse entrée dans le cadre //Ajouter des destinataires personnalisés// lors de la configuration des mises à jour ci-dessus.
Exemple de courriel envoyé.
The following updates will be downloaded on tchana.micronator-dev.org:
================================================================================
Package Architecture
Version Dépôt Taille
================================================================================
Mise à jour :
nethserver-mail-common noarch 2.4.4-1.ns7 nethserver-updates 62 k
nethserver-mail-filter noarch 2.4.4-1.ns7 nethserver-updates 70 k
nethserver-mail-quarantine noarch 2.4.4-1.ns7 nethserver-updates 33 k
nethserver-mail-server noarch 2.4.4-1.ns7 nethserver-updates 117 k
nethserver-mail-smarthost noarch 2.4.4-1.ns7 nethserver-updates 45 k
Résumé de la transaction
================================================================================
Mettre à jour 5 Paquets
Updates downloaded successfully.
Updates downloaded successfully.
==== Mises à jour ====
Le "Gestionnaire des logiciels" nous avertit que des mises à jour sont disponibles -> **Mises à jour**.
{{ Images_Cahier-101-03-122.png?800 }}
\\
\\
**TÉLÉCHARGER ET INSTALLER**.
|{{ Images_Cahier-101-03-123.png?400 }}|
\\
La mise à jour débute.
|{{ Images_Cahier-101-03-124.png?400 }}|
À la fin de la mise à jour, **Recharger la page**.
|{{ Images_Cahier-101-03-125.png?400 }}|
\\
===== DNS =====
C'est ici qu'on transforme le Serveur NethServer en serveur DNS.
Le DNS //(////__D__////omain ////__N__////ame ////__S__////ystem)// est responsable de la résolution des noms de domaine //(par exemple www.////nethesis////.it)// en fournissant leur adresse IP correspondante //(par exemple ////10.11.12.13////)// et inversement. Le serveur délègue la résolution des noms aux serveurs DNS configurés, mais vous pouvez spécifier des adresses pour des noms spécifiques. Par exemple, vous pouvez configurer le serveur pour répondre aux demandes de **facebook.com** avec l'adresse IP **0.0.0.0**, ce qui aura pour effet de rendre le site Facebook __inaccessible__.
==== Hôtes ====
**Configuration -> DNS ->** onglet **Hôtes -> CRÉER NOUVEAU** pour attribuer un nom d'hôte à une adresse IP. Le serveur renverra l'adresse IP configurée pour les demandes de ce nom.
{{ Images_Cahier-101-03-126.png?800 }}
//**Nom d'hôte**//\\
Le nom de domaine, par exemple www.nethesis.it. Il est possible de créer des noms pour le domaine local, ce qui est utile pour donner un nom mnémonique aux périphériques configurés avec une adresse IP statique ou pour tout domaine ayant la priorité sur le serveur DNS du fournisseur //(voir l'exemple de facebook.com ci-dessus)//.\\
♦ On indique //micronator-dev.org//.
//**wildcard dns record**//\\
Crée un enregistrement dans la zone DNS qui correspondra aux demandes de tous les noms de sous-domaines //(par exemple, www.toto.com s'identifiera à toto.com)//.\\
☑ On coche ce paramètre.
//**Adresse IP**//\\
L'adresse IP de cet hôte.\\
♦ On indique l'adresse de la carte __eth0__ //(réseau LOCAL)//.
|{{ Images_Cahier-101-03-127.png?400 }}|
//**Description**//\\
Un commentaire facultatif pour le nom de cet hôte //(exemple: "Bloquer facebook" ou "serveur vidéo")//.\\
♦ On donne une description à ce nouvel hôte.
**SOUMETTRE**.
Le nouveau nom d'hôte est présent.
{{ Images_Cahier-101-03-128.png?800 }}
=== Vérification ===
On se rend à l'URL: http://www.micronator-dev.org\\
Notre Serveur NethServer répond et affiche la page Web par défaut.
|{{ Images_Cahier-101-03-129.png?400}}|
\\
Lorsqu'on se rendra à l'URL: https://www.micronator-dev.org:980 \\
Notre Serveur NethServer répondra et affichera l'écran de connexion.
|{{ Images_Cahier-101-03-130.png?400}}|
\\
==== Alias du serveur ====
Les alias sont des noms alternatifs pour ce serveur. Par exemple, si le nom du serveur est exemple.com, un alias peut être __toto__.exemple.com. Le serveur utilisera sa propre adresse IP pour le nom d'alias.
**CRÉER NOUVEAU**\\
Vous permet de créer un nouvel alias pour ce serveur.
//**Nom d'hôte**//\\
Le nom d'hôte que vous souhaitez ajouter ou modifier. Il ne peut contenir que des lettres, des chiffres et des traits d'union. Il doit commencer par une lettre ou un chiffre.\\
♦ On entre: toto.micronator-dev.org.
//**Description**//\\
Une description facultative utile pour identifier l'alias.\\
♦ On entre: **Test d'alias**.
**SOUMETTRE**.
|{{ Images_Cahier-101-03-131.png?400}}|
Le nouvel alias est créé.
{{ Images_Cahier-101-03-132.png?800 }}\\
On se rend à: https://www.toto.micronator-dev.org.\\
La page Web par défaut de notre site s'affiche.
|{{ Images_Cahier-101-03-133.png?400}}|
\\
===== Contacts de l'organisation =====
**Configuration -> Contacts de l'organisation**. Ici, on peut modifier le contact de l'organisation. -> **SOUMETTRE**.
{{ Images_Cahier-101-03-134.png?800 }}\\
===== Certificat du serveur =====
**Configuration -> Certificat du serveur**. On déroule le menu et on choisit ** -> Éditer le certificat auto-signé**.
{{ Images_Cahier-101-03-135.png?800 }}\\
On ajuste les différents paramètres et on clique **ÉDITER LE CERTIFICAT AUTO-SIGNÉ**.
|{{ Images_Cahier-101-03-136.png?400}}|
On voit que le paramètre **ST** //(State - état - province)// est bien à **Qc**.
{{ Images_Cahier-101-03-137.png?800 }}\\
On rafraîchit la page du navigateur.
Le certificat a été modifié, il nous faut alors ajouter une exception pour le nouveau certificat.
Il ne sera pas nécessaire de se connecter à nouveau car le témoin stocké dans le navigateur est toujours valide.
{{Images_Cahier-101-03-004.png?25}} Si on rencontre des problème de reconnexion, vidanger l'historique du navigateur et ré-essayer à nouveau.
|{{ Images_Cahier-101-03-138.png?400}}|
==== Vérification ====
On clique le cadenas puis l'icône "**>**".
|{{ Images_Cahier-101-03-139.png?400 }}|
**Plus d'informations**.
|{{ Images_Cahier-101-03-140.png?400 }}|
Onglet **Sécurité -> Afficher le certificat**.
|{{ Images_Cahier-101-03-141.png?400 }}|
\\
Onglet **Détails -> Émetteur**.
On voit les paramètres du nouveau certificat.
**Fermer** toutes les fenêtres du certificat.
|{{ Images_Cahier-101-03-142.png?400}}|
\\
===== Fournisseur de comptes =====
//Référence//: [[http://docs.nethserver.org/en/v7/|http://docs.nethserver.org/en/v7/]].\\
NethServer peut prendre en charge l'authentification et les autorisations auprès d'un fournisseur de comptes local ou distant.
Les types de fournisseurs de comptes pris en charge sont:
- **OpenLDAP** __local__ fonctionnant sous NethServer lui-même.
- **Serveur LDAP** __distant__ avec schéma RFC2307.
- Contrôleur de domaine Active Directory sous Samba 4 __local__.
- Active Directory __distant__ //(Microsoft et Samba)//.
L'utilisateur root peut configurer tout type de fournisseurs de comptes à partir de la page **Fournisseur des comptes**.
{{Images_Cahier-101-03-006.png?25}} Il faut considérer la règle suivante concernant les fournisseurs de comptes: une fois que NethServer a été lié à un fournisseur de comptes, __le nom FQDN du domaine ne peut plus être modifié__.
==== Fournisseurs distants ====
Une fois que NethServer a été __lié à un fournisseur distant__ de comptes, la page **Utilisateur et groupes** affiche les comptes du domaine en mode de lecture seulement.
==== Fournisseurs locaux ====
Après avoir installé un fournisseur __local__ //(OpenLDAP ou Samba 4)//, l'administrateur peut créer, modifier et supprimer les utilisateurs et les groupes.
{{Images_Cahier-101-03-006.png?25}} **__Attention:__** Veuillez choisir judicieusement votre fournisseur de comptes, car le choix est irréversible. De plus, le système interdira toute modification du FQDN du domaine après la configuration du fournisseur de comptes.
{{Images_Cahier-101-03-003.png?22}} Pour modifier le FQDN, il faut désinstaller le fournisseur de comptes, modifier le FQDN, puis réinstaller le fournisseur de comptes. Les usagers et les groupes devraient revenir sans problème. Pour la désinstallation du fournisseur de comptes, voir la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Désinstallation du fournisseur local de comptes]].
==== Choisir le bon fournisseur de comptes ====
En plus de choisir de lier un fournisseur distant ou d'installer un fournisseur local, l'administrateur doit décider quel type de serveur d'arrière-plan convient à ses besoins.
Le module //Serveur de fichiers de NethServer//, qui active les **Dossiers partagés****(( **Dossiers partagés**: Un dossier partagé est un endroit où un groupe de personnes peut accéder à des fichiers en utilisant Samba //(SMB/CIFS)//. \\ \\ ))**, peut authentifier les clients **SMB/CIFS** uniquement si NethServer est lié à un domaine Active Directory.
{{Images_Cahier-101-03-005.png?25}} Les fournisseurs **LDAP** n'autorisent l'accès aux dossiers partagés qu'en mode invité. Par contre, le fournisseur **OpenLDAP** local est plus facile à installer et configurer.
Si la prise en charge du protocole de partage de fichiers **SMB** n’est pas requise, le meilleur choix est un fournisseur LDAP.
==== Installation du fournisseur local OpenLDAP ====
{{Images_Cahier-101-03-006.png?25}} Le système a besoin d’une connexion Internet fonctionnelle afin de télécharger des paquets supplémentaires.
À la fin de l'installation, le paquet est automatiquement configuré et l'administrateur peut gérer les utilisateurs et les groupes à partir de la page **Gestion -> Utilisateurs et groupes**.
{{Images_Cahier-101-03-004.png?25}} Nous allons définir //OpenLDAP// comme fournisseur de comptes LDAP locaux.
**Configuration -> Fournisseur des comptes -> LDAP**.
|{{ Images_Cahier-101-03-143.png?400 }}|
\\
**Install locally**.
|{{ Images_Cahier-101-03-144.png?400 }}|
\\
**INSTALLER**.
|{{ Images_Cahier-101-03-145.png?400 }}|
- Le paquet //OpenLDAP// s'installe.
- //OpenLDAP// a été installé.\\
- On rafraîchit la page pour afficher les nouveaux menus.
|{{ Images_Cahier-101-03-146.png?400 }}|
|{{ Images_Cahier-101-03-147.png?400 }}|
\\
==== Désinstallation du fournisseur local de comptes ====
Les fournisseurs locaux de comptes LDAP et AD peuvent être désinstallés à partir de la page **Configuration -> Fournisseur des comptes**.
{{Images_Cahier-101-03-006.png?25}} Lorsque la base de données du fournisseur local de comptes est désinstallée, tous les comptes: d'utilisateurs, de groupes et d'ordinateurs sont supprimés.
{{Images_Cahier-101-03-005.png?25}} Une liste d'utilisateurs et de groupes au format **TSV** //(Tab Separated Values)// est transférée dans les fichiers **/var/lib/nethserver/backup/users.tsv** et **/var/lib/nethserver/backup/groups.tsv**.
Voir aussi [[http://docs.nethserver.org/en/v7/accounts.html#import-users-section|http://docs.nethserver.org/en/v7/accounts.html#import-users-section]].
{{Images_Cahier-101-03-003.png?22}} Les fichiers existants, appartenant aux utilisateurs et aux groupes, __doivent être supprimés manuellement__.
Voici la liste des répertoires système contenant les données des utilisateurs et des groupes:
* /var/lib/nethserver/home\\
* /var/lib/nethserver/vmail\\
* /var/lib/nethserver/ibay
\\
\\
===== Règles de mot de passe =====
{{Images_Cahier-101-03-004.png?25}} Après l'installation d'un fournisseur de comptes, on rafraîchit la page pour faire apparaître le menu **Règles de mot de passe**.
**Sécurité -> Règles de mot de passe**. __(La règle par défaut est à **Fort**)__.
{{ Images_Cahier-101-03-148.png?800 }}\\
==== Aucun ====
Il n'y a pas de contrôle spécifique sur le mot de passe saisi, mais __la longueur minimale est de 7 caractères__.
==== Fort ====
La stratégie Fort impose que le mot de passe respecte les règles suivantes:
- Longueur minimale de 7 caractères.
- Contenir au moins 1 chiffre.
- Contenir au moins 1 caractère majuscule.
- Contenir au moins un caractère minuscule.
- Contenir au moins 1 caractère spécial.
- Au moins 5 caractères différents.
- Ne doit pas être présent dans les dictionnaires de mots courants.
- Doit être différent du nom d'utilisateur.
- Impossible de répéter des motifs formés de 3 caractères ou plus //(par exemple, le mot de passe As1.$AS1.$ N'est pas valide)//.
{{Images_Cahier-101-03-006.png?25}} **AVERTISSEMENT**: la modification de la règle par défaut est fortement déconseillée. L'utilisation de mots de passe faibles conduit souvent à des serveurs compromis par des attaquants externes.
- ☑ //**Politique de difficulté de mot de passe pour les utilisateurs**//\\ Si coché, définit le format à Fort pour le mot de passe des utilisateurs //(non coché implique "aucune règle")//.
\\ \\
- ☐ //**Expiration du mot de passe des utilisateurs**//\\ Active l'expiration du mot de passe pour les utilisateurs //(si cette case n'est pas cochée, les mots de passe n'expirent jamais)//.
\\ \\
- //**La durée maximum du mot de passe (180 days)**// \\
Nombre maximal de jours pendant lesquels vous pouvez conserver le même mot de passe //(par défaut: 180 jours)//. Choix: [30-365 jours].
\\ \\
- //**La durée minimum du mot de passe (0 days)**// \\
Nombre minimal de jours pendant lesquels vous êtes obligé de conserver le même mot de passe //(par défaut: 0 jour)//. Choix: [0-365 jours].
\\
\\
===== Utilisateurs et groupes =====
**Gestion -> Utilisateurs et groupes**.
{{ Images_Cahier-101-03-149.png?800 }}\\
{{Images_Cahier-101-03-006.png?25}} Un fournisseur de comptes est requis pour accéder à de nombreux services fournis par le serveur //(courrier électronique, dossiers partagés, etc.)//
Vous pouvez vous connecter à un fournisseur distant de comptes LDAP ou Active Directory ou en installer un local.
- La création et la modification des utilisateurs est disponible uniquement si vous installez un fournisseur de comptes local.
- Si les utilisateurs sont lus à partir d’un fournisseur distant, les listes d’utilisateurs et de groupes ne peuvent être que consultées.
- Chaque utilisateur est caractérisé par un justificatif d'identité //(nom d'utilisateur et mot de passe)//.
- Un compte utilisateur nouvellement créé reste verrouillé jusqu'à ce que soit défini son mot de passe.
- Un utilisateur bloqué ne peut pas utiliser les services nécessitant une authentification.
==== Créer / Modifier ====
Vous permet de créer ou de modifier des données utilisateur. Le nom d'utilisateur __ne peut pas être modifié__ après sa création.
==== Utilisateur ====
Informations de base sur l'utilisateur. Les champs ci-dessous sont obligatoires.
//**Nom d'utilisateur**//
Le nom d'utilisateur sera utilisé pour accéder aux services. Il ne peut contenir que des lettres minuscules, des chiffres, des tirets, des points, des traits de soulignement ( _ ) et doit commencer par une lettre minuscule. Par exemple, "louise", "gtoto" et "tatie_jojo" sont des noms d'utilisateurs valides, et "4Amis", "Tonton Franco" et "aldo/erreur" ne le sont pas.
//**Nom**//
C'est le vrai nom de l'utilisateur. Par exemple, "Général Toto".
|{{ Images_Cahier-101-03-150.png?400}}|
==== Groupes ====
À l'aide de la barre de recherche, vous pouvez sélectionner les groupes.
\\
\\
==== Nouvel utilisateur ====
Nous allons créer un nouvel utilisateur **michelandre**.\\
{{Images_Cahier-101-03-006.png?25}} Vous ne pouvez pas utiliser de caractères accentués dans **//Nom d'utilisateur//**.
\\
**Gestion -> Utilisateurs et groupes ->** onglet **Utilisateurs -> CRÉER NOUVEAU**.
|{{ Images_Cahier-101-03-151.png?400 }}|
\\
On entre les informations demandées.
|{{ Images_Cahier-101-03-152.png?400 }}|
L'utilisateur //__michelandre__// a été créé. Le compte a été activé, car on lui a donné un mot de passe.
{{ Images_Cahier-101-03-153.png?800 }}\\
===== Compte admin =====
Si un fournisseur de comptes LDAP ou AD local est installé, un utilisateur **admin**, membre du groupe **domain admins**, est créé automatiquement. Ce compte permet d'accéder à toutes les pages de configuration du gestionnaire du Serveur NethServer. Il est initialement désactivé et n'a aucun accès à la console.
{{Images_Cahier-101-03-004.png?25}} //Astuce//: Pour activer le compte administrateur, il suffit de définir son mot de passe.
Des privilèges spéciaux sont accordés au compte admin sur certains services spécifiques tels que joindre un poste de travail à un domaine Active Directory.\\
Si NethServer est lié à un fournisseur distant de comptes, l'utilisateur admin et le groupe domain admins peuvent y être créés manuellement s'ils n'existent pas déjà.\\
Si un utilisateur ou un groupe ayant un compte similaire est déjà présent dans la base de données du fournisseur distant de comptes, mais que son nom d'utilisateur est différent d'admin, NethServer peut être configuré pour se servir de ce compte similaire avec les deux commandes suivantes:
config setprop admins user customadmin group customadmins
{{Images_Cahier-101-03-006.png?25}} La commande ci-dessous peut prendre un certain temps.
/etc/e-smith/events/actions/system-adjust custom
\\
==== Activation du compte admin ====
**Gestion ->** onglet **Utilisateurs -> vis-à-vis //admin// → Éditer**. //La __clé__ indique que le compte n'est pas activé.//
{{ Images_Cahier-101-03-154.png?800 }}\\
- Il n'est pas recommandé d'autoriser //**Remote shell (SSH)**// pour l'utilisateur admin.\\
- **Changer le mot de passe**.
|{{ Images_Cahier-101-03-155.png?400 }}|
- On entre un mot de passe robuste.\\
- On confirme.\\
- **SOUMETTRE**.
|{{ Images_Cahier-101-03-156.png?400 }}|\\
{{Images_Cahier-101-03-003.png?22}} Ci contre, si nous modifions un paramètre, il faut cliquer **SOUMETTRE** avant de changer le mot de passe sinon, la modification du paramètre sera perdue.
\\
{{Images_Cahier-101-03-003.png?22}} Le compte est activé, la clé est disparue.
{{ Images_Cahier-101-03-157.png?800 }}\\
==== Ajout de l'utilisateur michelandre au groupe domain admins ====
**Gestion -> Utilisateurs et groupes ->** onglet **Groupes ->** à la fin de la ligne du groupe domain admins **→ Éditer**.
|{{ Images_Cahier-101-03-158.png?400 }}|
Sous //**Membres**//, on entre __//michelandre//__ puis, on le sélectionne pour l'ajouter au groupe domain admins -> **SOUMETTRE**.
|{{ Images_Cahier-101-03-159.png?400 }}|
==== Vérification ====
\\
**Onglet Utilisateurs ->** vis à vis michelandre **-> Éditer**.
|{{ Images_Cahier-101-03-160.png?400 }}|
L'utilisateur michelandre fait bien partie du groupe domain admins.
|{{ Images_Cahier-101-03-161.png?400 }}|
===== SSH =====
À la page **Sécurité -> SSH**, on peut modifier le port utilisé par le démon **sshd**, autoriser ou non la connexion de root et l'authentification par mot de passe.\\
{{ Images_Cahier-101-03-162.png?800 }}\\
===== Services réseau =====
Comme on le voit ci-dessous, les services **httpd**, **httpd-admin** et **sshd** sont accessibles depuis le réseau **rouge** //(Internet)//.
- Le service httpd est accessible depuis l'Internet afin que les internautes puissent accéder à nos futurs sites Web.
- Par contre, le service httpd-admin ne devrait être accessible que depuis les réseaux de confiance.
- Le service sshd peut être accessible occasionnellement depuis l'Internet, mais ce n'est pas recommandé de manière permanente.
**Sécurité -> Service réseau**. On modifie le service //**httpd-admin (Interface Web NethServer)**// en cliquant **Éditer** à la fin de sa ligne.
{{ Images_Cahier-101-03-163.png?800 }}\\
**httpd-admin (Interface Web NethServer) → Éditer ->** on décoche //**Internet (rouge)**// et on clique **SOUMETTRE**.
{{ Images_Cahier-101-03-164.png?800 }}\\
**sshd (SSH) → Éditer ->** on décoche //**Internet (rouge)**// et on clique **SOUMETTRE**.
{{ Images_Cahier-101-03-165.png?800 }}\\
On vérifie.
{{ Images_Cahier-101-03-166.png?800 }}\\
===== TLS Policy =====
//Référence:// [[http://docs.nethserver.org/en/v7/tlspolicy.html|http://docs.nethserver.org/en/v7/tlspolicy.html]].
==== Stratégie TLS ====
La page de stratégie **TLS** contrôle la manière dont chaque service configure le protocole TLS //(Transport Layer Security)// en sélectionnant un identificateur de stratégie.
Sauf indication contraire, les paramètres TLS des stratégies sont toujours cumulatifs: les stratégies les plus récentes étendent les anciennes.
Chaque module décide de la manière d'appliquer un identifiant de stratégie spécifique offrant un compromis entre sécurité et compatibilité client. Les nouvelles stratégies privilégient la sécurité tandis que les plus anciennes offrent une meilleure compatibilité avec les anciens clients.
===== Policy 2018-10-01 =====
**Sécurité -> TLS policy**.
Nous ne modifions rien et laissons la sélection suggérée, c.-à-d. //**Policy 2018-10-01**//.
{{ Images_Cahier-101-03-167.png?800 }}\\
Cette stratégie restreint les paramètres TLS de la configuration par défaut d'Ejabberd. Elle s'applique uniquement à la version 18 et plus d'Ejabberd.
=== Ejabberd (XMPP) ===
- SSLv3 et TLSv1.0 désactivés.
- Priorité du serveur Cipher.
- Certificat ECC.
- Suites Cipher:
Voir https://bettercrypto.org/#cipher_suites.\\
Voir https://en.wikipedia.org/wiki/NSA_Suite_B_Cryptography.
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
===== Courrier (Email) =====
**Configuration -> Courrier (Email)**.
Nous avons déjà décidé de ne pas utiliser Smarthost au paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Smarthost]].
{{ Images_Cahier-101-03-168.png?800 }}\\
===== DHCP =====
==== Serveur DHCP ====
Le protocole **DHCP** //(////__D__////ynamic ////__H__////ost ////__C__////onfiguration ////__P__////rotocol)// permet d’attribuer des adresses IP aux clients du réseau LOCAL.
**Configuration -> DHCP ->** l'onglet **Serveur DHCP** permet de configurer le serveur DHCP.
On peut activer le service DHCP pour le réseau LOCAL du Serveur NethServer.
{{Images_Cahier-101-03-006.png?25}} Il ne peut y avoir qu'un seul serveur DHCP actif par segment de réseau IP.
On peut activer le serveur DHCP de NethServer pour le segment réseau 10.10.10.0/24.
|{{ Images_Cahier-101-03-169.png?400}}|
☑ //**enp0s3 - green**//\\
__Non coché__:\\
le serveur DHCP sera désactivé et les clients du réseau LOCAL ne recevront pas d'adresse IP de manière automatique par ce serveur. Décocher cette option s'il existe déjà un serveur DHCP sur votre réseau LOCAL.
\\
__Coché__:\\
le serveur émettra des adresses IP aux ordinateurs du réseau LOCAL //(recommandé)//.
//**Début de la plage d'adresses IP**//\\
Première adresse IP de la plage attribuée aux clients du réseau LOCAL.
//**Fin de la plage d'adresses IP**//\\
La dernière adresse IP de la plage; les adresses entre début et fin seront attribuées aux clients.
==== Options avancées ====
//**IP Passerelle**//\\
Facultative - l'adresse IP de la passerelle à envoyer aux clients DHCP. Si laissée vide, le serveur lui-même sera la passerelle pour tous les clients.
//**Temps de location**//\\
Facultative - durée du bail IP. Si laissée vide, la valeur par défaut de **86 400** secondes //(24 heures)// sera utilisée.
//**Domaine**//\\
Facultative - nom de domaine à envoyer aux clients DHCP. Si définie, ce domaine sera ajouté à la résolution de noms des clients.
//**Serveurs DNS**//\\
Facultative - liste de serveurs DNS, séparés par des virgules, à envoyer aux clients DHCP. Si laissée vide, le serveur lui-même sera le serveur DNS pour tous les clients.
//**Serveurs WINS**//\\
Facultative - liste de serveurs **WINS**, séparés par des virgules, à envoyer aux clients DHCP. Si laissée vide, le serveur lui-même sera le serveur WINS pour tous les clients.
//**Serveurs NTP**//\\
Facultative - liste de serveurs **NTP**, séparés par des virgules, à envoyer aux clients DHCP. Si laissée vide, le serveur lui-même sera le serveur NTP pour tous les clients.
//**Serveurs TFTP**//\\
Facultative - liste de serveurs **TFTP**, séparés par des virgules, à envoyer aux clients DHCP. Si laissée vide, le serveur lui-même sera le serveur TFTP pour tous les clients.
==== Réservation d'adresse IP ====
//**Créer une réservation d'IP**//\\
Ajoute une nouvelle allocation statique //(réservation)// au serveur DHCP. Le périphérique avec l'adresse MAC spécifiée recevra toujours l'adresse IP spécifiée.
//**Nom d'hôte**//\\
Le nom d'hôte que vous souhaitez attribuer au client du réseau LOCAL avec l'adresse IP spécifiée.
//**Adresse Mac**//\\
L'adresse MAC de la carte réseau du client //(par exemple 11: 22: 33: 44: 55: 66: 77: 88)//.
//**Adresse IP**//\\
L'adresse IP que vous souhaitez attribuer au client.
//**Description**//\\
Une description facultative pour identifier le client.
|{{ Images_Cahier-101-03-170.png?400}}|
===== Date et heure =====
**Configuration -> Date et heure**.
Nous avons déjà configuré la date et l'heure au paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Date and time]].
===== Routes statiques =====
**Configuration -> Routes Statiques**.\\
Cette page permet de créer des routes statiques spéciales qui utiliseront la passerelle spécifiée. Ces itinéraires sont généralement utilisés pour connecter un réseau privé.
{{Images_Cahier-101-03-006.png?25}} Pensez à ajouter ce réseau aux //Réseaux de confiance// si vous souhaitez autoriser des hôtes distants à accéder à des services locaux.
|{{ Images_Cahier-101-03-171.png?400}}|
===== Réseau =====
**Configuration -> Réseau**.\\
Nous avons déjà vérifié/configuré les réseaux au paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Connexion Internet]].
\\
\\
====== Logiciels utilitaires ======
===== PuTTY =====
Nous avons déjà vérifié le fonctionnement de PuTTY au paragraphe //Vérification de la communication// à la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Connexion Internet]].
===== WinSCP =====
Nous avons installé **WinSCP** lors de l'étude du **Cahier-02** - //Installation et configuration des logiciels prérequis//.
On lance **WinSCP**, on entre les coordonnées de notre serveur -> **Sauver...**
|{{ Images_Cahier-101-03-172.png?400 }}|
\\
- On peut créer un raccourci sur le bureau.
- **OK**.
|{{ Images_Cahier-101-03-173.png?400 }}|
\\
**Outils -> Préférences...**
|{{ Images_Cahier-101-03-174.png?400 }}|
\\
\\
\\
**Fenêtre -> ⦿ Afficher le chemin complet**.
|{{ Images_Cahier-101-03-175.png?400 }}|
**Panneaux -> ☑ Afficher les fichiers cachés -> ☑ Sélectionner le nom complet lors d'un renommage -> OK** pour sauvegarder les changements.
|{{ Images_Cahier-101-03-176.png?400 }}|
\\
\\
\\
**Connexion** pour se connecter.
|{{ Images_Cahier-101-03-177.png?400 }}|
\\
Lors de la première connexion, on accepte la clé de chiffrement -> **Oui**.
|{{ Images_Cahier-101-03-178.png?400 }}|
On entre le mot de passe de root du serveur distant -> **OK**.
|{{ Images_Cahier-101-03-179.png?400 }}|
\\
On peut copier d’un panneau vers l’autre en sélectionnant un ou plusieurs fichiers/répertoires puis **cliquer/glisser**.
{{ Images_Cahier-101-03-180.png?800 }}
\\
===== Midnight Commander (mc) =====
Certains logiciels, qui ne sont pas installés par défaut sur le Serveur NethServer, peuvent s'avérer très utiles pour la gestion des fichiers de ce dernier.
//Référence:// https://fr.wikipedia.org/wiki/Midnight_Commander.\\
GNU **Midnight Commander** (mc) est un gestionnaire de fichiers multiplate-forme inspiré de **Norton Commander** et écrit par Miguel de Icaza. C'est une application en mode texte. L'interface principale se compose de deux "panneaux" qui affichent les fichiers présents par rapport à leur emplacement sur le disque. Midnight Commander inclut un éditeur de texte interne avec le repérage de la syntaxe, un outil permettant de visualiser le contenu d'un //RPM// et un autre permettant de se connecter à un serveur //FTP//.
[root@tchana ~]# yum install -y mc
...
Transaction Summary
============================================================================================
Install 1 Package (+1 Dependent package)
Total download size: 1.8 M
Installed size: 5.7 M
Downloading packages:
(1/2): gpm-libs-1.20.7-5.el7.x86_64.rpm | 32 kB 00:00:00
(2/2): mc-4.8.7-11.el7.x86_64.rpm | 1.7 MB 00:00:01
--------------------------------------------------------------------------------------------
Total 1.1 MB/s | 1.8 MB 00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : gpm-libs-1.20.7-5.el7.x86_64 1/2
...
Verifying : gpm-libs-1.20.7-5.el7.x86_64 2/2
Installed:
mc.x86_64 1:4.8.7-11.el7
Dependency Installed:
gpm-libs.x86_64 0:1.20.7-5.el7
Complete!
[root@tchana ~]#
Pour lancer Midnight Commander.
[root@tchana ~]# mc
**[F-1]** pour l'aide.
**[F-10]** pour sortir de Midnight Commander.
|{{ Images_Cahier-101-03-181.png?400 }}|
===== locate =====
//Référence:// https://fr.wikipedia.org/wiki/Locate.\\
L'utilitaire **locate** est une commande Unix permettant de localiser //(to locate en anglais)// un fichier.\\
À la différence des autres méthodes de recherche, locate ne cherche pas les fichiers demandés dans l'arborescence des répertoires, mais dans une base de données mise régulièrement à jour //(au moyen de la commande **updatedb**, que l'on automatise, si ce n'est pas déjà le cas, au moyen de cron)//. Cette base de données contient les références vers les fichiers contenus dans les répertoires du système.\\
L'avantage de cette méthode repose sur la grande rapidité d'une telle recherche. En revanche, tout ajout, suppression ou déplacement d'un fichier survenus entre deux mises à jour ne sera pas répercuté dans la base de données à moins d'une mise à jour manuelle.
[root@tchana ~]# yum install -y mlocate
...
Transaction Summary
============================================================================================
Install 1 Package
Total download size: 113 k
Installed size: 379 k
Downloading packages:
mlocate-0.26-8.el7.x86_64.rpm | 113 kB 00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : mlocate-0.26-8.el7.x86_64 1/1
Verifying : mlocate-0.26-8.el7.x86_64 1/1
Installed:
mlocate.x86_64 0:0.26-8.el7
Complete!
[root@tchana ~]#
On met à jour la BD de locate //(peut prendre un certain temps)//.
[root@tchana ~]# updatedb
[root@tchana ~]#
Exemple de recherche.
[root@tchana ~]# locate .well-kno
/var/www/html/.well-known
/var/www/html/.well-known/acme-challenge
[root@tchana ~]#
\\
===== Shell In A Box =====
//Référence:// https://wiki.nethserver.org/doku.php?id=shellinabox.\\
**Shell In A Box** implémente un serveur Web capable d'exporter des outils arbitraires de ligne de commande vers un émulateur Web de terminal. Cet émulateur est accessible à tout navigateur Web compatible **JavaScript** et CSS et ne nécessite aucune extension supplémentaire du navigateur.
==== Référentiel stephdl ====
Si ce n'est déjà fait, vous devez installer le référentiel **stephdl**.\\
//Référence:// https://wiki.nethserver.org/doku.php?id=stephdl_repository.
[root@tchana ~]# yum install -y http://mirror.de-labrusse.fr/NethServer/7/x86_64/nethserver-stephdl-1.0.7-1.ns7.sdl.noarch.rpm
...
Transaction Summary
============================================================================================
Install 1 Package
Total size: 40 k
Installed size: 40 k
...
Installed:
nethserver-stephdl.noarch 0:1.0.7-1.ns7.sdl
Complete!
[root@tchana ~]#
Vérification.
[root@tchana ~]# rpm -qa | grep stephdl
nethserver-stephdl-1.0.7-1.ns7.sdl.noarch
[root@tchana ~]#
==== Installation du module ====
[root@tchana ~]# yum install -y nethserver-shellinabox --enablerepo=stephdl
...
Resolving Dependencies
...
Dependencies Resolved
...
Transaction Summary
============================================================================================
Install 1 Package (+1 Dependent package)
Total download size: 164 k
Installed size: 551 k
...
Installed:
nethserver-shellinabox.noarch 0:0.1.6-1.ns7.sdl
Dependency Installed:
shellinabox.x86_64 0:2.20-5.el7
Complete!
[root@tchana ~]#
{{Images_Cahier-101-03-006.png?25}} On rafraîchit la page de l'interface WEB pour faire apparaître les nouveaux menus.
**Configuration -> Paramètres du terminal** pour définir les paramètres spécifiques.
☑ //**Activer Shellinabox**//\\
Active ou désactive le module.
//**Port TCP**//\\
Définit le port TCP du démon.
⦿ //**Accès privé**//\\
Si cliqué, vous ne pouvez utiliser Shellinabox que sur votre réseau LOCAL. L'authentification Apache peut être forcée.
☑ //**Forcer l'accès restreint de l'utilisateur**//\\
Le démon Apache est utilisé pour restreindre l'accès aux utilisateurs. Lorsque Shellinabox est défini sur l'//Accès Privé//, l'authentification d'Apache n'est pas obligatoire, mais vous pouvez la forcer ici. Apache doit autoriser un utilisateur, mais l'utilisateur doit toujours avoir un accès au **shell** du système.
//**Spécifier un utilisateur autorisé par ligne.**//\\
L'accès n'est autorisé que pour la liste d'adresses IP spécifiées
⚪ //**Accès publique**//\\
Vous pouvez utiliser Shellinabox en dehors de votre réseau LOCAL. L'authentification Apache est obligatoire.
{{Images_Cahier-101-03-006.png?25}} Lorsque vous autorisez une connexion depuis l'extérieur de votre réseau local ou spécifiquement pour une ou plusieurs adresses IP, l'authentification de l'utilisateur est obligatoire. L'utilisateur admin est autorisé par défaut, mais vous pouvez ajouter plus d'utilisateurs. //(pour NS7 et NS6, vous devez définir un mot de passe dans le panneau de l'utilisateur du gestionnaire de serveur)//.
⚪ //**Accès IP**//\\
L'accès n'est autorisé que pour la liste d'adresses IP spécifiées (une adresse IP par ligne). L'authentification Apache peut être obligatoire.
Si on change un paramètre:\\
{{ Images_Cahier-101-03-185.png?150 }}
|{{ Images_Cahier-101-03-182.png?400 }}|
\\
\\
\\
\\
|{{ Images_Cahier-101-03-183.png?400 }}|
\\
|{{ Images_Cahier-101-03-184.png?400 }}|
==== Redémarrage du démon ====
**Statut -> Services -> shellinaboxd -> Redémarrage**.
{{ Images_Cahier-101-03-186.png?800 }}
\\
\\
===== Accès =====
**Administration -> Terminal**.
On se logue avec le nom d'un des usagers autorisés.
|{{ Images_Cahier-101-03-187.png?400 }}|
\\
À la console du Terminal, on se logue en utilisant root.
{{ Images_Cahier-101-03-188.png?800 }}
\\
\\
====== Sauvegarde ======
===== Description =====
//Référence:// [[http://docs.nethserver.org/en/v7/backup.html|http://docs.nethserver.org/en/v7/backup.html]].
Une sauvegarde est le seul moyen de restaurer une machine en cas de sinistre. Le système gère deux types de sauvegardes:
- //**Sauvegarde de la configuration**//\\
Ce type de sauvegarde ne contient que les fichiers de configuration du système. Son objectif est de restaurer rapidement une machine en cas de récupération après sinistre.
- //**Sauvegarde des données**//\\
Ce type de sauvegarde est activée par l’installation du module "Sauvegarde" et contient par défaut, toutes les données stockées dans le système //(répertoires des utilisateurs, dossiers partagés, courriels, etc.)//. Cette sauvegarde s'exécute une fois par jour et peut être complète ou incrémentielle sur une base hebdomadaire //(six incrémentielles et la septième complète)//. Elle contient également l'archive de la //Sauvegarde de la configuration//. Plusieurs sauvegardes peuvent être configurées pour enregistrer différentes données à des intervalles différents.\\ Lorsque la machine est fonctionnelle, une restauration complète des données peut être effectuée même si la machine est déjà en production.
===== Sauvegarde de la configuration =====
{{Images_Cahier-101-03-006.png?25}} Les sauvegardes sont conservées dans: /var/lib/nethserver/backup/history.
Depuis la page //Sauvegarde (configuration)//, la configuration du système peut être sauvegardée, téléchargée, téléversée et restaurée à nouveau.
En outre, une tâche automatisée s'exécute chaque nuit à **00h15** et crée une nouvelle archive, /var/lib/nethserver/backup/backup-config**.tar.xz**, __si la configuration a été modifiée au cours des dernières 24 heures__.
==== Configuration ====
**Configuration -> Sauvegarde (configuration) ->** onglet **Configurer**, on spécifie le nombre de sauvegardes automatiques à conserver **-> SOUMETTRE**.
|{{ Images_Cahier-101-03-189.png?400 }}|
{{Images_Cahier-101-03-005.png?25}} Ces sauvegardes n'ont que quelques Ko; on peut en garder un assez grand nombre.
|{{ Images_Cahier-101-03-190.png?400 }}|
La liste des modules installés est incluse dans l'archive de sauvegarde. La procédure de restauration peut télécharger et installer automatiquement les modules énumérés.
==== Personnalisation ====
=== Inclusion ===
Dans la plupart des cas, il n'est pas nécessaire de modifier la //Sauvegarde de la configuration//, mais peut être utile par exemple si vous avez une configuration httpd personnalisée. Dans ce cas, vous pouvez ajouter le fichier contenant la personnalisation à la liste des fichiers à sauvegarder.
Si vous souhaitez ajouter un fichier ou un répertoire à la //Sauvegarde de la configuration//, ajoutez une ligne au fichier /etc/backup-config.d/custom.include.
//Exemple:// pour sauvegarder le répertoire /etc/e-smith/templates-custom/etc/roundcubemail/ qui contient le gabarit qui supprime l'affichage du nom du serveur lors d'une connexion à Webmail, ajoutez cette ligne:
/etc/e-smith/templates-custom/etc/roundcubemail/
{{Images_Cahier-101-03-006.png?25}} N'ajoutez pas de gros répertoires ou fichiers à la //Sauvegarde de la configuration//.
=== Exclusion ===
Si vous souhaitez exclure un fichier ou un répertoire de la //Sauvegarde de la configuration//, ajoutez une ligne au fichier /etc/backup-config.d/custom.exclude.
{{Images_Cahier-101-03-006.png?25}} Assurez-vous de ne pas laisser de lignes vides dans les fichiers modifiés. La syntaxe de la //Sauvegarde de la configuration// prend en charge uniquement les chemins simples pour les fichiers et répertoires.
==== Lancement de la sauvegarde de la configuration ====
**Configuration -> Sauvegarde (configuration) -> CRÉER UNE SAUVEGARDE**.
{{ Images_Cahier-101-03-191.png?800 }}
\\
\\
Si l'écran ne s'affiche pas correctement, on l'agrandit.
|{{ Images_Cahier-101-03-192.png?400 }}|
- On entre une //**Description**//.\\
- **CRÉER UN SAUVEGARDE**.
|{{ Images_Cahier-101-03-193.png?400 }}|
La sauvegarde a été créée et on voit sa description entrée précédemment lors de sa création.\\
On peut télécharger la sauvegarde sur le poste de travail en cliquant **Télécharger**.
{{ Images_Cahier-101-03-194.png?800 }}
\\
**Enregistrer le fichier | OK**.
|{{ Images_Cahier-101-03-195.png?400 }}|
{{Images_Cahier-101-03-004.png?25}} Ces fichiers ne sont pas très volumineux, quelques Ko seulement.
**Enregistrer**.
|{{ Images_Cahier-101-03-196.png?400 }}|
|{{ Images_Cahier-101-03-197.png?400 }}|
=== Restauration d'une configuration ===
On peut récupérer une ancienne sauvegarde stockée sur le poste de travail afin de la restaurer.
\\
\\
**Envoyer**.
|{{ Images_Cahier-101-03-198.png?400 }}|
\\
\\
**Parcourir**.
|{{ Images_Cahier-101-03-199.png?400 }}|
- On sélectionne la sauvegarde à récupérer.\\
- **Ouvrir**.
|{{ Images_Cahier-101-03-200.png?400 }}|
- On entre une description.
- **ENVOYER**.
|{{ Images_Cahier-101-03-201.png?400 }}|
La sauvegarde récupérée apparaît dans la liste et on peut la restaurer en cliquant **Restaurer**.
{{ Images_Cahier-101-03-202.png?800 }}
\\
- Les différentes paramètres de la sauvegarde récupérée apparaissent ci-dessous.
- {{Images_Cahier-101-03-004.png?25}} Si l'option __**Télécharger les modules automatiquement**__ est cochée, les modules nécessaires seraient téléchargés et installés automatiquement.\\ **RESTAURER**.
- La tâche est en cours.
|{{ Images_Cahier-101-03-203.png?400 }}|
|{{ Images_Cahier-101-03-204.png?400 }}|
|{{ Images_Cahier-101-03-205.png?400 }}|
La restauration a réussie.
{{ Images_Cahier-101-03-206.png?800 }}
{{Images_Cahier-101-03-005.png?25}} Nous aurions pu récupérer directement cette sauvegarde sans avoir à la télécharger, car elle est dans la liste de celles qui sont encore sur le Serveur NethServer.
\\
\\
===== Sauvegarde des données =====
{{Images_Cahier-101-03-006.png?25}} Les sauvegardes sont conservées dans: ''/var/lib/nethserver/backup/duplicity.''
NethServer implémente deux types de sauvegarde des données:
- Sauvegarde unique //(primaire, par défaut, compatible avec les versions antérieures)//.
- Sauvegardes multiples //(multi-sauvegardes, multi-moteurs)//.
La sauvegarde des données peut être effectuée à l'aide de différents moteurs:
- Duplicity //(défaut)// -> [[http://duplicity.nongnu.org/|http://duplicity.nongnu.org/]].
- Restic -> [[https://restic.net/|https://restic.net/]].
- rsync -> [[https://rsync.samba.org/|https://rsync.samba.org/]].
==== Duplicity ====
**Duplicity** est le moteur par défaut pour NethServer. Il dispose d'un bon algorithme de compression qui réduira le stockage sur la destination. Duplicity nécessite une sauvegarde complète une fois par semaine. Lorsque le jeu de données est très volumineux, le processus peut prendre plus de 24 heures.
{{Images_Cahier-101-03-006.png?25}} NethServer n’implémente pas le chiffrage des sauvegardes si le moteur est Duplicity.
Applications dorsales(( **Applications dorsales**: Programme qui, dans une architecture client-serveur, traite les commandes en provenance de l'application frontale. //Référence//: [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=26527120|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=26527120]]. \\ \\ )) prises en charge:
- CIFS
- NFS
- USB
- WebDAV //(seulement en cas de sauvegarde unique)//
\\
\\
==== Sauvegarde unique ====
Il s'agit de la sauvegarde système par défaut pouvant être configurée et restaurée à l'aide de l'interface Web.
- Peut être planifiée une fois par jour.
- Peut inclure les journaux système.
- Envoie des notifications à l'administrateur système ou à une adresse courriel externe.
\\
\\
==== Répertoire partagé pour les sauvegardes ====
- Nos sauvegardes se feront avec le protocol CIFS //(Common Internet File System)//.
- Elles seront téléversées automatiquement dans le répertoire partagé D:\Sauvegarde sur le poste de travail Win-8.1.
Il nous faut donc un répertoire partagé sur le poste de travail afin que le Serveur NethServer puisse y déposer les fichiers de la sauvegarde.
\\
\\
- On peut utiliser le répertoire déjà utilisé par les sauvegardes des autres serveurs.\\
- On peut aussi créer un nouveau répertoire **Sauvegarde** sur le disque D:\ du poste de travail.
|{{ Images_Cahier-101-03-207.png?400 }}|
\\
\\
Si **Partager avec** offre seulement les choix ci-dessous, fermer et ouvrir un autre Explorateur Windows.
|{{ Images_Cahier-101-03-208.png?400 }}|
\\
\\
\\
Dans les menus de l'Explorateur Windows, **Affichage -> Options**.
|{{ Images_Cahier-101-03-209.png?400 }}|
- Onglet **Affichage**.\\
- Décocher **Utiliser l'Assistant Partage (recommandé)**.\\
- **OK**.
|{{ Images_Cahier-101-03-210.png?400 }}|
\\
- On retourne au dossier //**Sauvegarde**//.\\
- Clac sur le nom du répertoire **-> Partager avec -> Partage Avancé**.
|{{ Images_Cahier-101-03-211.png?400 }}|
\\
\\
\\
Onglet **Partage -> Partage avancé...**
|{{ Images_Cahier-101-03-212.png?400 }}|
Cocher **Partager ce dossier ->** Nom du partage: //Sauvegarde// apparaît **-> Autorisations**.
|{{ Images_Cahier-101-03-213.png?400 }}|
\\
\\
**Ajouter...**
|{{ Images_Cahier-101-03-214.png?400 }}|
\\
On entre le nom d'un utilisateur de la machine Windows, ex: //michelandre// **-> Vérifier les noms**.
|{{ Images_Cahier-101-03-215.png?400 }}|
\\
Le nom vérifié apparaît **-> OK**.
|{{ Images_Cahier-101-03-216.png?400 }}|
Sélectionner **michelandre ->** cocher toutes les **Autorisations**.
|{{ Images_Cahier-101-03-217.png?400 }}|
\\
Sélectionner **Tout le monde ->** décocher toutes les **Autorisations -> OK**.
|{{ Images_Cahier-101-03-218.png?400 }}|
\\
**OK**.
|{{ Images_Cahier-101-03-219.png?400 }}|
\\
Le répertoire est partagé -> **OK**.
|{{ Images_Cahier-101-03-220.png?400 }}|
\\
Dans l'Explorateur Windows, l'__utilisateur michelandre__ entre l'adresse du poste de travail: **\\10.10.10.81** -> **[Entrée]**.
On voit le répertoire de partage: //**Sauvegarde**//.
Tout est bien paramétré.
|{{ Images_Cahier-101-03-221.png?400 }}|
\\
===== Installation du module =====
**Administration -> Gestionnaire des logiciels ->** on coche **Sauvegarde -> AJOUTER**.
{{ Images_Cahier-101-03-222.png?800 }}
\\
\\
**APPLIQUER LES CHANGEMENTS**.
|{{ Images_Cahier-101-03-223.png?400 }}|
**Recharger la page** pour afficher les nouveaux menus.
|{{ Images_Cahier-101-03-224.png?400 }}|
\\
===== Sauvegardes (données) =====
**Configuration -> Sauvegarde (données) ->** onglet** Général ->** on entre les informations demandées.
|{{ Images_Cahier-101-03-225.png?400 }}|
On continue à entrer les informations demandées **-> SOUMETTRE**.
|{{ Images_Cahier-101-03-226.png?400 }}|
==== Notification ====
Onglet **Notification**.
//**Notifier**//\\
⦿ **Toujours**\\
On préfère toujours être notifié lorsqu'une sauvegarde est effectuée.
⦿ **Adresse email personnalisée**\\
Pour recevoir les courriels. On entre l'adresse courriel de l'administrateur de tous les serveurs de notre site.
//**Adresse de l'expéditeur**//\\
On spécifie de quel serveur provient la notification.
**SOUMETTRE**.
|{{ Images_Cahier-101-03-227.png?400 }}|
\\
==== Vérifications à la ligne de commande ====
=== Sauvegarde (configuration) ===
On affiche les __propriétés de la configuration__ de //Sauvegarde (configuration)//.
[root@tchana ~]# config show backup-config
backup-config=configuration
HistoryLength=31
status=enabled
[root@tchana ~]#
* //**HistoryLength:**// la valeur donnée au paramètre **Configuration -> Sauvegarde (Configuration) -> Automatic backups to keep**.
* //**status:**// propriété qui active ou désactive la sauvegarde automatique, peut être activée //(enabled)// ou désactivée //(disabled)//. La valeur par défaut est __activée__. Indépendamment de cette propriété, la sauvegarde est toujours exécutée si elle est démarrée manuellement
=== Sauvegarde (données) ===
On affiche les __propriétés de la configuration__ de //Sauvegarde (données)//.
[root@tchana ~]# config show backup-data
backup-data=configuration
IncludeLogs=enabled
[root@tchana ~]#
*//**IncludeLogs:**// nous avons coché **Configuration -> Sauvegarde (données) ->** onglet **Général -> Advanced options -> Include system logs** au paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Sauvegardes (données)]].
On affiche les __propriétés__ de //Sauvegarde (données)//.
[root@tchana ~]# db backups show
backup-data=duplicity
BackupTime=0 3 * * *
CleanupOlderThan=56D
FullDay=0
NFSHost=
NFSShare=
Notify=always
NotifyFrom=admin@micronator-dev.org
NotifyTo=michelandre@micronator.org
SMBHost=10.10.10.81
SMBLogin=michelandre
SMBPassword=mot-de-passe
SMBShare=Sauvegarde
Type=incremental
USBLabel=
VFSType=cifs
VolSize=250
WebDAVLogin=
WebDAVPassword=
WebDAVUrl=
status=enabled
[root@tchana ~]#
{{Images_Cahier-101-03-005.png?25}} On vérifie la propriété //**FullDay**// //(dimanche=0, lundi-1, mardi=2...)//.
==== Personnalisation ====
=== Inclusion de fichiers/répertoires ===
On peut inclure des fichiers/répertoires supplémentaires en les spécifiant dans le fichier d'inclusion:
/etc/backup-data.d/custom.include
{{Images_Cahier-101-03-006.png?25}} Pour le __chemin d'un fichier__, il ne faut pas inclure le caractère "**/**" à la fin du chemin.
Exemple: /etc/profile.d/activer-php72.sh.
Pour le __chemin d'un répertoire__ et de son contenu, il faut inclure le caractère "**/**" à la fin du chemin.
Exemple: /etc/e-smith/templates-custom/etc/roundcubemail__**/**__.
=== Grandeur des fichiers de sauvegarde ===
Comme on le voit avec la commande ''db backups show'' à la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Sauvegardes (données)]], la propriété //**VolSize=250**// donnera des fichiers de sauvegarde de 250 Mo. Pour une sauvegarde de plusieurs Go, ce paramètre segmentera la sauvegarde en de très nombreux fichiers. Nous ajustons la grandeur des fichiers à 2 Go et ainsi facilitons l'examen du répertoire D:\Sauvegarde sur le poste de travail.
[root@tchana ~]# db backups setprop backup-data VolSize 2048
[root@tchana ~]#
On signale le changement.
[root@tchana ~]# signal-event nethserver-backup-data-update
[root@tchana ~]#
On vérifie.
[root@tchana ~]# db backups show | grep VolSize
VolSize=2048
[root@tchana ~]#
==== Lancement forcé de la sauvegarde ====
=== Première sauvegarde ===
On peut forcer le lancement d'une sauvegarde en exécutant la commande ci-dessous.
[root@tchana ~]# /sbin/e-smith/backup-data -b backup-data
Backup: backup-data
Backup started at 2019-02-08 13:28:03
Pre backup scripts status: SUCCESS
--------------[ Backup Statistics ]--------------
StartTime 1549650495.78 (Fri Feb 8 13:28:15 2019)
EndTime 1549650497.91 (Fri Feb 8 13:28:17 2019)
ElapsedTime 2.13 (2.13 seconds)
SourceFiles 419
SourceFileSize 24495192 (23.4 MB)
NewFiles 419
NewFileSize 24495192 (23.4 MB)
DeletedFiles 0
ChangedFiles 0
ChangedFileSize 0 (0 bytes)
ChangedDeltaSize 0 (0 bytes)
DeltaEntries 419
RawDeltaSize 24467434 (23.3 MB)
TotalDestinationSizeChange 1963840 (1.87 MB)
Errors 0
-------------------------------------------------
Action 'backup-data-duplicity backup-data': SUCCESS
Post backup scripts status: SUCCESS
Backup status: SUCCESS
Backup ended at 2019-02-08 13:28:19
Time elapsed: 0 hours, 0 minutes, 16 seconds
Disk Usage:
Size Used Available Use%
917.83 GB 785.67 GB 132.16 GB 85.6%
[root@tchana ~]#
Cette sauvegarde //(1 918 Ko)// est complète.
{{ Images_Cahier-101-03-228.png?800 }}
On vérifie la date.
[root@tchana ~]# date
Fri Feb 8 13:32:59 EST 2019
[root@tchana ~]#
{{Images_Cahier-101-03-005.png?25}} Même si nous sommes vendredi et que nous avons paramétré les sauvegardes complètes pour les dimanches seulement, cette sauvegarde est complète, car c'est la première à ce jour.
=== Deuxième sauvegarde ===
On peut forcer une autre sauvegarde pour générer une incrémentielle.
[root@tchana ~]# /sbin/e-smith/backup-data -b backup-data
Backup: backup-data
Backup started at 2019-02-08 13:35:07
Pre backup scripts status: SUCCESS
--------------[ Backup Statistics ]--------------
StartTime 1549650912.53 (Fri Feb 8 13:35:12 2019)
EndTime 1549650912.95 (Fri Feb 8 13:35:12 2019)
ElapsedTime 0.42 (0.42 seconds)
SourceFiles 422
SourceFileSize 24526628 (23.4 MB)
NewFiles 9
NewFileSize 23980 (23.4 KB)
DeletedFiles 0
ChangedFiles 70
ChangedFileSize 14856835 (14.2 MB)
ChangedDeltaSize 0 (0 bytes)
DeltaEntries 79
RawDeltaSize 457642 (447 KB)
TotalDestinationSizeChange 76371 (74.6 KB)
Errors 0
-------------------------------------------------
Les métadonnées locales et distantes sont déjà synchronisées. Aucune synchronisation nécessaire.
Date de la dernière sauvegarde complète : Fri Feb 08 13:28:03 2019
Aucun ancien jeu de sauvegarde n’a été trouvé, rien n’a été supprimé.
Action 'backup-data-duplicity backup-data': SUCCESS
Post backup scripts status: SUCCESS
Backup status: SUCCESS
Backup ended at 2019-02-08 13:35:14
Time elapsed: 0 hours, 0 minutes, 7 seconds
Disk Usage:
Size Used Available Use%
917.83 GB 785.68 GB 132.15 GB 85.6%
[root@tchana ~]#
La deuxième sauvegarde n'est que de //(74.6 Ko)// et est une incrémentielle, car ce n'est pas la première à ce jour et nous ne sommes pas dimanche.
{{ Images_Cahier-101-03-229.png?800 }}
=== Troisième sauvegarde ===
Nous changeons la journée des sauvegardes complètes pour qu'elles aient lieu les vendredis au lieu des dimanches **-> SOUMETTRE**.
|{{ Images_Cahier-101-03-230.png?400 }}|
On force une troisième sauvegarde.
[root@tchana ~]# /sbin/e-smith/backup-data -b backup-data
Backup: backup-data
Backup started at 2019-02-08 13:44:43
Pre backup scripts status: SUCCESS
--------------[ Backup Statistics ]--------------
StartTime 1549651488.35 (Fri Feb 8 13:44:48 2019)
EndTime 1549651489.30 (Fri Feb 8 13:44:49 2019)
ElapsedTime 0.95 (0.95 seconds)
SourceFiles 422
SourceFileSize 24547401 (23.4 MB)
NewFiles 422
NewFileSize 24547401 (23.4 MB)
DeletedFiles 0
ChangedFiles 0
ChangedFileSize 0 (0 bytes)
ChangedDeltaSize 0 (0 bytes)
DeltaEntries 422
RawDeltaSize 24519532 (23.4 MB)
TotalDestinationSizeChange 1996425 (1.90 MB)
Errors 0
-------------------------------------------------
Les métadonnées locales et distantes sont déjà synchronisées. Aucune synchronisation nécessaire.
Date de la dernière sauvegarde complète : Fri Feb 08 13:28:03 2019
Aucun ancien jeu de sauvegarde n’a été trouvé, rien n’a été supprimé.
Action 'backup-data-duplicity backup-data': SUCCESS
Post backup scripts status: SUCCESS
Backup status: SUCCESS
Backup ended at 2019-02-08 13:44:51
Time elapsed: 0 hours, 0 minutes, 8 seconds
Disk Usage:
Size Used Available Use%
917.83 GB 785.68 GB 132.15 GB 85.6%
[root@tchana ~]#
La troisième sauvegarde __est complète__ car nous avons paramétré les complètes pour les vendredis.\\
Si nous lançons une quatrième sauvegarde, elle sera complète elle aussi, car nous sommes toujours vendredi.
{{Images_Cahier-101-03-006.png?25}} On remet le paramètre des sauvegardes complètes pour les dimanches.
|{{ Images_Cahier-101-03-231.png?400 }}|
=== Exemple de récupération du fichier de sauvegarde de la configuration ===
{{Images_Cahier-101-03-003.png?22}} Pour une reprise après sinistre, on peut récupérer le fichier d'une sauvegarde de la configuration directement depuis le fichier //backup-config.tar.xz// dans le répertoire de stockage - D:\Sauvegarde.
On se rend dans le répertoire de stockage, on claque sur le fichier **backup-config.tar.xz -> 7-Zip -> Ouvrir archive** et on navigue jusqu'au répertoire \var/lib\nethserver\backup\history.
|{{ Images_Cahier-101-03-232.png?400 }}|
Le répertoire des sauvegardes de la configuration du serveur a bien été inclus dans la sauvegarde des données.
|{{ Images_Cahier-101-03-233.png?400 }}|
Clac sur le //**fichier xxx.tar.xz**// **-> Copier vers...**
|{{ Images_Cahier-101-03-234.png?400 }}|
\\
**OK**.
|{{ Images_Cahier-101-03-235.png?400 }}|
\\
Le fichier est récupéré.
|{{ Images_Cahier-101-03-236.png?400 }}|
=== Exclusion de fichiers/répertoire ===
On peut exclure des fichiers/répertoires en les spécifiant dans le fichier d'exclusion:
/etc/backup-data.d/custom.exclude
===== Restauration des données =====
Marche à suivre:
- Nous créons un fichier dans le répertoire personnel de root.
- Nous lançons une sauvegarde.
- Nous supprimons le fichier créé avant la sauvegarde, celui de la première étape.
- Nous récupérons le fichier contenu dans la dernière sauvegarde.
1) Nous créons un fichier dans le répertoire personnel de root.
[root@tchana ~]# touch toto
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -ls toto
0 -rw-r--r-- 1 root root 0 Feb 8 13:55 toto
[root@tchana ~]#
2) Nous lançons une sauvegarde.
[root@tchana ~]# /sbin/e-smith/backup-data -b backup-data
Backup: backup-data
Backup started at 2019-02-08 13:56:09
Pre backup scripts status: SUCCESS
...
Action 'backup-data-duplicity backup-data': SUCCESS
Post backup scripts status: SUCCESS
Backup status: SUCCESS
Backup ended at 2019-02-08 13:56:17
Time elapsed: 0 hours, 0 minutes, 8 seconds
Disk Usage:
Size Used Available Use%
917.83 GB 785.68 GB 132.15 GB 85.6%
[root@tchana ~]#
3) Nous supprimons le fichier créé avant la sauvegarde, celui de la première étape.
[root@tchana ~]# rm toto
rm : supprimer fichier vide « toto » ? y
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -ls toto
ls: impossible d'accéder à toto: Aucun fichier ou dossier de ce type
[root@tchana ~]#
==== Restauration ====
4) Nous récupérons le fichier contenu dans la dernière sauvegarde.
**Configuration -> Restaurer les données**.
//**Backup file**//\\
On choisit la dernière sauvegarde.
//**- Mode de restauration**//\\
⦿ Restaurer les fichiers dans le chemin original.
//**Sélectionner un ou plusieurs dossiers ou fichiers à restaurer**//\\
On entre toto.
Dans l'arborescence, on choisit **/root**, le répertoire contenant le fichier à restaurer. __/root__ apparaît dans //**- Dossiers ou fichiers à restaurer**//.
**RESTAURER**.
Le message en vert, en haut de l'écran: //**Restauré à la position initiale**// indique que le fichier a été trouvé et restauré.
|{{ Images_Cahier-101-03-237.png?400 }}|
{{Images_Cahier-101-03-005.png?25}} __Si nous n'avions rien spécifié__ sous //**Sélectionner un ou plusieurs dossiers ou fichiers à restaurer**//, ce serait tout l'arborescence qui serait alors restaurée.
=== Vérification ===
On vérifie.
[root@tchana ~]# ls -ls toto
0 -rw-r--r-- 1 root root 0 Feb 8 13:55 toto
[root@tchana ~]#
Le fichier a été restauré.
==== Recherche de fichiers dans les sauvegardes ====
On peut rechercher un fichier dans les sauvegardes //(peut prendre un certain temps)//.
[root@tchana ~]# /sbin/e-smith/backup-data-list -b backup-data | grep toto
Fri Feb 8 13:55:22 2019 root/toto
[root@tchana ~]#
**La sauvegarde est fonctionnelle.**
====== Pare-feu ======
===== Description =====
//Référence:// [[http://docs.nethserver.org/projects/nethserver-devel/en/v7/nethserver-firewall-base.html?highlight=firewall|http://docs.nethserver.org/projects/nethserver-devel/en/v7/nethserver-firewall-base.html?highlight=firewall]].
==== Pare-feu et passerelle ====
NethServer peut servir de pare-feu et de passerelle à l’intérieur du réseau LOCAL sur lequel il est installé. Tout le trafic entre les ordinateurs du réseau LOCAL et Internet transite par le serveur qui décide de l’acheminement des paquets et des règles à appliquer.
Caractéristiques principales:
- Configuration réseau avancée //(pont, liens, alias, etc.)//.
- Prise en charge de plusieurs réseaux (jusqu'à 15).
- Gestion des règles de pare-feu.
- Mise en forme de trafic(( **Mise en forme de trafic** - Technique qui permet d'analyser le trafic des données dans un réseau et de l'adapter au débit disponible, de manière à éviter toute forme de congestion.\\ //Référence//: [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8359282|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8359282]].
\\ \\ )) //(QoS)//.
- Redirection de ports.
- Règles de routage pour dévier le trafic sur un WAN spécifique.
- Système de prévention des intrusions //(IPS//(( **IPS** - Un système de prévention d'intrusion //(ou IPS, Intrusion Prevention System)// est un outil des spécialistes en sécurité des systèmes d'information, similaire aux IDS, permettant de prendre des mesures afin de diminuer les impacts d'une attaque. C'est un IDS actif, s'il détecte un balayage automatisé, l'IPS peut bloquer les ports automatiquement. Les IPS peuvent donc parer les attaques connues et inconnues. Comme les IDS, ils ne sont pas fiables à 100 % et risquent même en cas de faux positif de bloquer du trafic légitime.\\ //Référence//: [[https://fr.wikipedia.org/wiki/Deep_packet_inspection|https://fr.wikipedia.org/wiki/Deep_packet_inspection]].
\\ \\ ))//)//.
- Inspection approfondie des paquets //(DPI//(( **DPI** - En informatique et en télécommunication, la //Deep Packet Inspection (DPI),// en français inspection approfondie des paquets, est l'activité pour un équipement d'infrastructure réseau consistant à analyser le contenu //(au-delà de l'en-tête)// d'un paquet réseau //(paquet IP le plus souvent)// de façon à en tirer des statistiques, à filtrer ceux-ci, à les prioriser ou à détecter des intrusions, du spam ou tout autre contenu prédéfini. La DPI peut servir notamment à la censure sur Internet ou dans le cadre de dispositifs de protection de la propriété intellectuelle.\\ Elle s'oppose au Stateful Packet Inspection, qui ne concerne que l'analyse de l'en-tête des paquets. La DPI peut provoquer un ralentissement sensible du trafic là où elle est déployée.\\ //Référence//: [[https://fr.wikipedia.org/wiki/Système_de_prévention_d'intrusion|https://fr.wikipedia.org/wiki/Syst%C3%A8me_de_pr%C3%A9vention_d%27intrusion]].
\\ \\ ))//)//.
Le mode **Pare-feu et passerelle** n'est activé que si:
- le paquet nethserver-firewall-base est installé //(module Sauvegarde)// et
- au moins une interface réseau est configurée avec un rôle rouge.
==== Stratégies ====
Lorsqu'un paquet réseau traverse une zone de pare-feu, le système évalue une liste de règles pour décider si le trafic doit être bloqué ou autorisé. Les Stratégies sont les règles par défaut à appliquer lorsque le trafic réseau ne correspond à aucun critère existant.
Le pare-feu configure 4 zones par défaut avec des stratégies intégrées. Chaque interface est identifiée par une couleur indiquant son rôle dans le système; voir [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Réseau]].
Ci-dessous, la circulation est autorisée de gauche à droite et bloquée de droite à gauche:\\
VERT → BLEU → ORANGE → ROUGE
Le pare-feu implémente deux stratégies par défaut, les choix possibles sont:\\
1) Autorisé: tout le trafic du réseau local //(vert)// vers l'Internet //(rouge)// est activé par défaut.\\
2) Bloqué: tout le trafic du réseau local //(vert)// vers l'Internet //(rouge)// est désactivé par défaut.
Avec la stratégie //Bloqué//, vous devez explicitement créer des règles pour tous les services devant être autorisés. Par exemple, une règle qui autorise le trafic Web //(ports 80 et 443)// de vert à rouge.
Pour remplacer une stratégie, vous devez créer une règle de pare-feu entre les zones. Vous pouvez créer des règles entre les zones pour modifier les stratégies par défaut à partir de la page **Passerelle -> Règles du pare-feu**.
{{Images_Cahier-101-03-006.png?25}} Le trafic du réseau LOCAL vers le serveur sur le port SSH //(valeur par défaut 22 - que nous avons modifié à 2222)// et celui vers le port de l'interface Web du serveur //(valeur par défaut 980)// est toujours autorisé.
|{{ Images_Cahier-101-03-238.png?400 }}|
==== Règles ====
Les règles s'appliquent à tout le trafic traversant le pare-feu. Lorsqu'un paquet réseau passe d'une zone à une autre, le système recherche parmi les règles configurées. Si le paquet correspond à une règle, celle-ci est appliquée.
{{Images_Cahier-101-03-006.png?25}} L’ordre de la règle est très important. Le système applique toujours la première règle qui correspond.
Une règle comprend cinq parties principales:
- Action
- Source
- Destination
- Service
- Condition de temps
Les actions disponibles sont:
//ACCEPT// - accepte le trafic réseau.
//REJECT// - bloque le trafic et avertit l'hôte émetteur.
//DROP// - bloque le trafic, les paquets sont abandonnés et aucune notification n'est envoyée à l'hôte émetteur.
//ROUTE// - achemine le trafic vers le réseau spécifié.
//PRIORITY// - étiquette le trafic avec une priorité haute/basse.
{{Images_Cahier-101-03-006.png?25}} Le pare-feu ne générera pas de règles pour les zones bleues et oranges si au moins une interface rouge est configurée.
**REJET vs DROP**
En règle générale, vous devez utiliser REJECT lorsque vous souhaitez informer l'hôte source que le port auquel il tente d'accéder est fermé. Habituellement, les règles du côté du réseau LOCAL peuvent utiliser REJECT.
Pour les connexions provenant d’Internet, il est recommandé d’utiliser DROP afin de minimiser la divulgation des informations à tout attaquant.
**Journal**
Lorsqu'une règle correspond au trafic en cours, il est possible d'enregistrer l'événement dans un fichier journal en cochant l'option de l'interface Web. Le journal du pare-feu est enregistré dans le fichier ''/var/log/firewall.log''.
==== Lissage du trafic ====
La mise en forme du trafic permet d'appliquer des règles de priorité au trafic réseau à travers le pare-feu. De cette manière, il est possible d’optimiser la transmission, de vérifier la latence et d’ajuster la bande passante disponible.
Pour activer le lissage du trafic, il est nécessaire de connaître la quantité exacte de bande passante disponible en téléversement et en téléchargement.
{{Images_Cahier-101-03-006.png?25}} Si la bande passante de téléversement et de téléchargement ne sont pas définies pour une interface rouge, les règles de lissage du trafic ne seront pas activées pour cette interface.
==== Multi WAN ====
Le terme WAN //(Réseau étendu)// fait référence à un réseau public extérieur au serveur, généralement connecté à l'Internet.
- Le fournisseur est la société qui gère le lien WAN.
- Chaque fournisseur représente une connexion WAN et est associé à une carte réseau. Chaque fournisseur définit un poids; plus le poids //(weight)// est élevé, plus la priorité de la carte réseau associée au fournisseur est élevée.
- Le système prend en charge jusqu'à 15 connexions WAN.
- Si le serveur a au moins deux cartes rouges configurées, il est nécessaire de configurer correctement les champs Link weight, Bande-passante entrante //(kbps)// et Bande-passante sortante //(kbps)// à partir de la page **Configuration -> Réseau**.
**Link weight**
Le "poids" de la connexion.
Le trafic sera acheminé proportionnellement au poids; un poids plus élevé signifie plus de trafic. Un fournisseur d'un poids de 100 recevra le double du trafic de celui d’un poids de 50. Il faut attribuer les poids selon la bande passante.
Lorsque vous utilisez le mode Sauvegarde active, le poids détermine l’utilisation de la ligne. Si le premier fournisseur a un poids de 100 et le second un poids de 50, le trafic est toujours envoyé au premier fournisseur. Le second ne sera utilisé que si le premier fournisseur tombe en panne.
==== Objet du pare-feu ====
Les objets du pare-feu facilitent la création de règles de pare-feu.
{{Images_Cahier-101-03-005.png?25}} Un objet peut être utilisé dans plusieurs règles.
|{{ Images_Cahier-101-03-239.png?400 }}|
**Hôtes**
Un hôte représente une machine avec une adresse IP. Il peut être LOCAL ou distant. Lorsque des règles sont écrites dans un fichier, l'objet hôte sera traduit par sa propre adresse IP.
Hôte - Identifiant pour l'hôte.\\
Adresse IP - Adresse IP de l'hôte.\\
Description - Description facultative.
Voir le paragraphe [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Règle spéciale pour le poste de travail]] pour la création d'un hôte pour l'IP ''192.168.1.81''/poste de travail.
==== Port Forwarding ====
Utilisez cette page pour modifier les règles de pare-feu, c’est-à-dire pour ouvrir un port spécifique //(ou une plage de ports//) sur le serveur et transférer le trafic d’un port à un autre. Les règles de transfert de port autorisent l'accès aux hôtes du réseau LOCAL depuis l'Internet.
|{{ Images_Cahier-101-03-240.png?400 }}|
===== Pare-feu de base =====
==== Installation ====
**Administration -> Gestionnaire des logiciels ->** cocher **Pare-feu basique**.
|{{ Images_Cahier-101-03-241.png?400 }}|
\\
**AJOUTER**.
|{{ Images_Cahier-101-03-242.png?400 }}|
\\
**APPLIQUER LES CHANGEMENTS**.
|{{ Images_Cahier-101-03-243.png?400 }}|
**Recharger la page** pour afficher les nouveaux menus.
|{{ Images_Cahier-101-03-244.png?400 }}|
Tout s'est bien passé. Il n'y a ni message d'erreur ni avertissement.
{{ Images_Cahier-101-03-245.png?800 }}
\\
==== Règles du pare-feu ====
- **Passerelle -> Règles du pare-feu**.
- On déroule le menu **-> Configurer**.
|{{ Images_Cahier-101-03-246.png?400 }}|
|{{ Images_Cahier-101-03-247.png?400 }}|
\\
**Trafic vers Internet (interface rouge)**
Les choix possibles sont:
⦿ //**Autorisé**//\\
Tout le trafic du réseau LOCAL (vert) vers l'Internet (rouge) est activé par défaut.
⚪ //**Bloqué**//\\
Tout le trafic du réseau LOCAL //(vert)// vers l'Internet //(rouge)// est désactivé.\\ Avec la stratégie Bloqué, vous devez explicitement créer des règles pour tous les services devant être autorisés. Par exemple: une règle qui autorise le trafic Web //(ports 80 et 443)// de //vert// à //rouge//.
|{{ Images_Cahier-101-03-248.png?400 }}|
**Ping depuis Internet**
⦿ //**Activé**//\\
Si activé, les interfaces publiques //(rouge)// répondront aux requêtes ping //(ACCEPT)//.
⚪ //**Désactivé**//\\
Si cette option est désactivée, les interfaces publiques rejetteront les requêtes ping //(DROP)//.
{{Images_Cahier-101-03-005.png?25}} Pour simplifier le dépannage, il est recommandé de laisser le ping activé.
**Validation MAC (association fixe IP/MAC)**
☐ Validation MAC //(association fixe IP/MAC)//\\
Si activé, tout le trafic provenant des hôtes des interfaces vertes et bleues est vérifié par rapport à une liste d'adresses IP avec les adresses MAC associées. L'association IP/MAC peut être configurée à l'aide de la page **Configuration -> DHCP**.
===== Règle spéciale pour le poste de travail =====
==== Activation de httpd-admin depuis l'Internet ====
{{Images_Cahier-101-03-008.png?25}} Pour vérifier la règle que nous allons créer, on autorise l'accès à l'interface Web depuis l'Internet.
**Sécurité -> Service réseau ->** vis à vis //**httpd-admin (Interface Web NethServer)**// **→ Éditer**.
|{{ Images_Cahier-101-03-249.png?600 }}|
- On coche **Internet (rouge)**.\\
- **SOUMETTRE**.
|{{ Images_Cahier-101-03-250.png?400 }}|
==== Réseau LOCAL ====
Un de nos postes de travail possède une adresse privée et n'est pas sur le réseau LOCAL //(vert)// du Serveur NethServer.
{{ Images_Cahier-101-03-251.png?800 }}
Vu que le Serveur NethServer verra que la demande de connexion provient de l'adresse ''192.168.1.102'' //(l'aiguilleur)// et non pas du poste de travail ''10.10.100.111'', il autorisera la connexion, car l'aiguilleur ''192.168.1.102'' est sur le réseau LOCAL et il est aussi le relais du poste de travail ''10.10.100.111''.
==== Internet ====
{{Images_Cahier-101-03-005.png?25}} Advenant le cas où le poste de travail possède une adresse IP publique ou n'est pas sur le réseau LOCAL, on doit créer une règle spéciale pour qu'il puisse accéder à l'interface Web.
Ci-dessous, le Serveur NethServer verra que la demande de connexion provient de l'adresse ''11.22.33.44'' et refusera la connexion. Il nous faut donc une règle de pare-feu pour autoriser la connexion depuis cette dernière adresse IP afin de permettre au poste de travail ''192.168.1.7'', sur le réseau distant, de se connecter à l'interface Web.
{{ Images_Cahier-101-03-252.png?800 }}
==== Création de l'hôte ====
{{Images_Cahier-101-03-003.png?22}} La requête de connexion du poste de travail distant ''192.168.1.7'' provient de l'Internet depuis le serveur ''11.22.33.44'', la règle doit utiliser l'adresse IP du serveur distant et non celle du poste de travail distant.
Nous allons créer un hôte pour l'adresse IP ''11.22.33.44'' du serveur du poste de travail distant afin que ce dernier puisse accéder à l'interface Web du Serveur NethServer sur notre réseau.
**Passerelle -> Objet du pare-feu ->** onglet **Hôtes -> CRÉER NOUVEAU**. On entre les informations demandées.
|{{ Images_Cahier-101-03-253.png?800 }}|
|{{ Images_Cahier-101-03-254.png?400 }}|
Le nouvel hôte a été créé.
{{ Images_Cahier-101-03-255.png?800 }}
\\
==== Création de la règle ====
- **Passerelle -> Règles du pare-feu**.\\
- On déroule le menu.\\
- **Créer une règle en première position**.
|{{ Images_Cahier-101-03-256.png?400 }}|
\\
\\
On clique **TOUT** de Source.
|{{ Images_Cahier-101-03-257.png?400 }}|
\\
\\
**Hôte poste-de-travail**.
|{{ Images_Cahier-101-03-258.png?400 }}|
\\
On clique **TOUT** de //**Destination**//.
|{{ Images_Cahier-101-03-259.png?400 }}|
**Firewall**.
|{{ Images_Cahier-101-03-260.png?400 }}|
On clique **TOUT** de //**Service**//.
|{{ Images_Cahier-101-03-261.png?400 }}|
\\
**httpd-admin - network services**.
|{{ Images_Cahier-101-03-262.png?400 }}|
On clique à l'intérieur de //**Time condition**//.
|{{ Images_Cahier-101-03-263.png?400 }}|
**Toujours**.
|{{ Images_Cahier-101-03-264.png?400 }}|
Pour être plus sécuritaire, on pourrait créer une //Condition de temps// en lançant une recherche //**Heure de connexion distante**// pour faire apparaître //Create time condition "Heure de connexion distante"//; on clique ces termes et on insère les informations demandées.
|{{ Images_Cahier-101-03-265.png?400 }}|
**SOUMETTRE**.
|{{ Images_Cahier-101-03-266.png?400 }}|
APPLIQUER LES CHANGEMENTS.
|{{ Images_Cahier-101-03-267.png?800 }}|
* Attention \\ {{Images_Cahier-101-03-008.png?25}} Si le propriétaire d'un poste de travail sur le réseau distant connaît le mot de passe de root de notre Serveur NethServer, ce poste de travail aura accès à l'interface Web. Assurez-vous d'avoir des __mots de passes très robustes__.
* Astuce \\ {{Images_Cahier-101-03-004.png?25}} Pour ne pas divulguer le mot de passe de root et limiter les accès, vous pourriez créer un utilisateur distant et le mettre dans le groupe //domain admins//. Ainsi, il sera le seul qui pourra se loguer à l'interface Web. Encore une fois, un __mot de passe très robuste__.
==== Vérification ====
On pourrait se connecter au poste distant à travers une session **TeamViewer** et lancer une requête de connexion à l'interface Web en donnant au navigateur distant l'URL: https://www.micronator-dev.org:980.
=== Autorisation httpd-admin depuis l'Internet ===
{{Images_Cahier-101-03-008.png?25}} Ci-dessous, après avoir vérifié le fonctionnement de **Fail2ban**, on désactivera l'autorisation //httpd-admin// depuis l'Internet; voir la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Désactivation de httpd-admin depuis l'Internet]].
**Le pare-feu basique est fonctionnel.**
====== Fail2ban ======
===== Description =====
//Référence:// [[https://www.fail2ban.org/wiki/index.php/Main_Page|https://www.fail2ban.org/wiki/index.php/Main_Page]].\\
//Référence:// [[https://www.fail2ban.org/wiki/index.php/FAQ_french|https://www.fail2ban.org/wiki/index.php/FAQ_french]].\\
//Référence:// [[http://docs.nethserver.org/en/v7/fail2ban.html|http://docs.nethserver.org/en/v7/fail2ban.html]].
**Fail2ban** lit des fichiers de journaux tels que ''/var/log/pwdfail'' ou ''/var/log/apache/error_log'' et bannit les adresses IP qui ont généré un trop grand nombre d'échecs lors de l'authentification. Il met à jour les règles de pare-feu pour rejeter ces adresses IP. Des règles peuvent êtres définies par l'administrateur. Fail2ban peut lire plusieurs fichiers de journaux tels que celui de //sshd// ou du serveur //Apache//.
Fail2Ban est capable de réduire le nombre de tentatives d’authentification incorrectes, mais il ne peut éliminer les risques que représente une configuration d'authentification défaillante.
Pour améliorer la sécurité, utilisez le pare-feu pour restreindre l'accès aux divers services uniquement aux réseaux de confiance.
===== Installation =====
**Administration -> Gestionnaire des logiciels ->** onglet **Disponible ->** cocher **Fail2ban** et **whois -> AJOUTER**.
{{ Images_Cahier-101-03-268.png?800 }}
\\
- **APPLIQUER LES CHANGEMENTS**.
- **Recharger la page** pour afficher les nouveaux menus.
|{{ Images_Cahier-101-03-269.png?400 }}|
|{{ Images_Cahier-101-03-270.png?400 }}|
===== Configuration =====
**Sécurité -> Fail2ban ->** onglet **Configuration**.
La plupart des paramètres peuvent être modifiés sous l'onglet Configuration, seuls les paramètres réellement avancés doivent être configurés à la ligne de commande.
☑ **Activer Fail2ban** \\
Configure le service pour démarrer et rouler.
//**IP Whitelisting (one per line)**// \\
Entrer les adresses IP qui seront ignorées par Fail2ban //(une adresse par ligne)//.\\
{{Images_Cahier-101-03-006.png?25}} Par défaut, tous les réseaux LOCAUX sont sur la liste blanche.
☑ //**Send email notifications**//\\
Envoyer des notifications par courrier électronique.\\
Administrators emails (one per line)\\
Entrer les adresses courriel des administrateurs qui recevront les notifications //(une adresse par ligne)//.
☐ //**Notify jail start/stop events**//\\
{{Images_Cahier-101-03-003.png?22}} Ne pas activer ce paramètre, car vous serez inondé de courriels de départs et d'arrêts de Fail2ban.
==== Les prisons ====
- Une prison est la combinaison d'un filtre et d'une ou plusieurs actions.\\
- Toutes les prisons peuvent être activées/désactivées individuellement sous le paramètre //**Jails**//.\\
- Lorsque vous installez un nouveau module, la prison correspondante //(si elle existe)// est automatiquement activée après l'installation du paquet.
|{{ Images_Cahier-101-03-271.png?400 }}|
==== Avancé ====
- //**Nombre de tentatives**// //(maxretry)//\\ Le nombre maximal de tentatives avant d'être banni. Défaut de **3**.
- //**Durée (bantime)**//\\ Période de temps pour atteindre le nombre de tentatives avant le bannissement. Défaut de **900** secondes.
- //**Ban time (bantime)**//\\ Durée de bannissement d'une adresse IP. Défaut de **1800** secondes.
☑ **Recidive jail is perpetual**\\
Lorsqu'une adresse IP est condamnée plusieurs fois à la prison, elle y demeure pour une période beaucoup plus longue. Si ce paramètre est activé, cette période est perpétuelle.\\
{{Images_Cahier-101-03-006.png?25}} À noter que si un banni utilise une adresse IP dynamique et qu'après un certain temps, cette adresse est relâchée par le FAI puis, remise à un autre internaute par le FAI, ce nouvel internaute est aussi banni, car il utilise une adresse déjà en récidive.
☐ //**Allow bans on the LAN**//\\
Par défaut, tous les réseaux LOCAUX sont sur la liste blanche. Activez ce paramètre pour traiter les adresses IP des réseaux LOCAUX comme les autres adresses.
//**Logging Level**//\\
Niveau de journalisation des événements. Les choix possibles sont: CRITICAL, ERROR, WARNING, NOTICE, INFO et DEBUG. Le défaut est **INFO**.
**SOUMETTRE**.
Comme on le voit ci-contre, le service redémarre //(restart)// pour prendre en compte les nouveaux paramètres.
|{{ Images_Cahier-101-03-272.png?400 }}|
===== Bannissement manuel =====
Notre installation chez ''11.22.33.44'' est terminée et nous avons muté notre associé chez un autre client. On a changé l'adresse IP //(vue de l'Internet)// de l'hôte //Poste de travail distant// //(poste-de-travail)// pour celle de notre nouveau client. La //Règle du pare-feu admin distant// demeure la même, car elle est utilisée par le poste de travail de notre nouveau client.
{{Images_Cahier-101-03-005.png?25}} Vu qu'un bannissement à la prison //Recidive// est perpétuelle //(voir ci-dessus Recidive jail is perpetual )//...
[root@tchana ~]# config show fail2ban |grep -i recidive
Recidive_MaxRetry=
Recidive_Perpetual=enabled
Recidive_status=true
[root@tchana ~]#
... on pourrait bannir manuellement l'adresse ''11.22.33.44''.
[root@tchana ~]# fail2ban-client set recidive banip 11.22.33.44
11.22.33.44
[root@tchana ~]#
==== Vérification à la ligne de commande ====
[root@tchana ~]# fail2ban-client status recidive
Status for the jail: recidive
|- Filter
| |- Currently failed: 0
| |- Total failed: 6
| `- File list: /var/log/fail2ban.log
`- Actions
|- Currently banned: 1
|- Total banned: 1
`- Banned IP list: 11.22.33.44
[root@tchana ~]#
L'utilisateur //michelandre// a reçu un courriel lui signalant que le bannissement d'une adresse IP avait eu lieu.
Il reçoit ce courriel, car il est sur la liste du paragraphe //Send email notifications// de la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Configuration]].
{{Images_Cahier-101-03-003.png?22}} Si les informations du **WHOIS** n'apparaissent pas, redémarrer tous les services pour vous assurez que ceux-ci se réinitialisent correctement.
/etc/e-smith/events/actions/system-adjust
|{{ Images_Cahier-101-03-273.png?400 }}|
==== Vérification avec l'interface Web ====
**Statut -> Fali2ban**.
- Onglet **Ban statistics**.
- Onglet **Unban IP**.
|{{ Images_Cahier-101-03-274.png?400 }}|
|{{ Images_Cahier-101-03-275.png?400 }}|
==== Suppression d'un bannissement ====
Les adresses IP sont bannies lorsqu'elles sont trouvées plusieurs fois dans le journal durant la période spécifiée. Elles sont stockées dans une base de données pour être à nouveau bannies à chaque redémarrage du serveur ou du service.
**Statut -> Fail2ban ->** onglet **Unban IP**.
- On entre l'adresse sous //**Unban the specified IP**//.
**-> SUBMIT/REFRESH**.
L'adresse IP n'est plus bannie.
|{{ Images_Cahier-101-03-276.png?400 }}|
|{{ Images_Cahier-101-03-277.png?400 }}|
===== Ligne de commande =====
==== Usage ====
Pour afficher toutes les options de la commande **fail2ban-client**.
[root@tchana ~]# fail2ban-client -h
Usage: /usr/bin/fail2ban-client [OPTIONS]
Fail2Ban v0.9.7 reads log file that contains password failure report
and bans the corresponding IP addresses using firewall rules.
Options:
-c configuration directory
-s socket path
-p pidfile path
-d dump configuration. For debugging
-i interactive mode
-v increase verbosity
-q decrease verbosity
-x force execution of the server (remove socket file)
-b start server in background (default)
-f start server in foreground (note that the client forks once itself)
-h, --help display this help message
-V, --version print the version
...
get actionmethods gets a list of methods for the
action for
get action gets the value of for
the action for
Report bugs to https://github.com/fail2ban/fail2ban/issues
[root@tchana ~]#
\\
==== Suppression d'un bannissement ====
Si nous n'avions pas supprimer le bannissement de l'adresse IP ''11.22.33.44'' depuis l'interface Web, nous aurions pu le supprimer à la ligne de commande.
[root@tchana ~]# fail2ban-client set recidive unbanip 11.22.33.44
11.22.33.44
You have new mail in /var/spool/mail/root
[root@tchana ~]#
On vérifie.
[root@tchana ~]# fail2ban-client status recidive
Status for the jail: recidive
|- Filter
| |- Currently failed: 0
| |- Total failed: 6
| `- File list: /var/log/fail2ban.log
`- Actions
|- Currently banned: 0
|- Total banned: 1
`- Banned IP list:
[root@tchana ~]#
La liste des adresses IP bannies est vide.
\\
\\
==== Désactivation de httpd-admin depuis l'Internet ====
{{Images_Cahier-101-03-008.png?25}} Le bannissement et la règle ont été vérifiés, on pourra désactiver l'accès à l'interface Web depuis l'Internet lorsque ce ne sera plus nécessaire pour notre associé chez notre nouveau client.
**Sécurité -> Service réseau ->** vis à vis //**httpd-admin (Interface Web NethServer)**// **→ Éditer**.
|{{ Images_Cahier-101-03-278.png?600 }}|
- On décoche //**Internet (rouge)**//.\\
- **SOUMETTRE**.
|{{ Images_Cahier-101-03-279.png?400 }}|
**Fail2ban fonctionne correctement.**
====== Messagerie électronique ======
===== Description =====
//Référence:// [[https://github.com/NethServer/nethserver-mail|https://github.com/NethServer/nethserver-mail]].
Le module **Email** est divisé en trois parties principales:
1) Serveur **SMTP** pour l'envoi et la réception.\\
2) Serveur **IMAP** et **POP3** pour lire le courrier électronique et le langage Sieve pour l’organiser.\\
3) Filtre anti-spam, antivirus et bloqueur de pièces jointes.
Les avantages sont:
- Autonomie complète dans la gestion du courrier électronique.
- Évite les problèmes dûs au fournisseur de services Internet.
- Possibilité de traquer l'itinéraire des messages afin de détecter les erreurs.
- Analyse antivirus et anti-spam optimisée.
Voir également les rubriques connexes suivantes:
- Comment fonctionne le courrier électronique: [[https://fr.wikipedia.org/wiki/Courrier_électronique|https://fr.wikipedia.org/wiki/Courrier_%C3%A9lectronique]].
- DNS - Enregistrement MX: [[https://fr.wikipedia.org/wiki/Enregistrement_Mail_eXchanger|https://fr.wikipedia.org/wiki/Enregistrement_Mail_eXchanger]].
- Protocole SMTP: [[https://fr.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol|https://fr.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol]].
- Signature DKIM: [[https://fr.wikipedia.org/wiki/DomainKeys_Identified_Mail|https://fr.wikipedia.org/wiki/DomainKeys_Identified_Mail]].
- MTA(Mail Transfer Agent): [[https://fr.wikipedia.org/wiki/Mail_Transfer_Agent|https://fr.wikipedia.org/wiki/Mail_Transfer_Agent]].
{{Images_Cahier-101-03-005.png?25}} Depuis NethServer 7.5.1804, les nouvelles installations de messagerie, de connecteur et de mandataire POP3 sont basées sur le moteur de filtrage Rspamd. Les installations précédentes de NethServer sont automatiquement mises à niveau vers Rspamd.
===== Installation =====
//Référence:// [[http://docs.nethserver.org/en/latest/mail.html|http://docs.nethserver.org/en/latest/mail.html]].
{{Images_Cahier-101-03-006.png?25}} Le logiciel nethserver-mail-disclaimer est considéré comme obsolète, car le projet **alterMIME**, fournissant l'implémentation réelle, n'est plus développé et peut cesser de fonctionner à tout moment.
**Administration -> Gestionnaire des logiciels ->** onglet **Disponible ->** cocher //**Email**// et //**nethserver-mail-quarantine**// //(ne pas cocher nethserver-mail-disclaimer)//, cocher //**Proxy SMTP**// et //**Roundcube web mail**// **-> AJOUTER**.
{{ Images_Cahier-101-03-280.png?800 }}
\\
**-> APPLIQUER LES CHANGEMENTS**.
**-> Recharger la page** pour afficher les nouveaux menus.
|{{ Images_Cahier-101-03-281.png?400 }}|
|{{ Images_Cahier-101-03-282.png?400 }}|
\\
==== Activation de la mise en quarantaine ====
**Administration -> Gestionnaire de logiciels ->** onglet **Installé ->** vis-à-vis **Email → Éditer**.
{{ Images_Cahier-101-03-283.png?800 }}
\\
On coche **nethserver-mail-quarantine**.\\
**-> APPLIQUER LES CHANGEMENTS**.
**-> Recharger la page**.
|{{ Images_Cahier-101-03-284.png?400 }}|
|{{ Images_Cahier-101-03-285.png?400 }}|
\\
===== Validation de l'adresse de l'expéditeur =====
//Référence:// [[https://github.com/NethServer/nethserver-mail#sender-address-validation|https://github.com/NethServer/nethserver-mail#sender-address-validation]].\\
Si la propriété //**postfix/SenderValidation**// est définie sur //**enabled**//, le serveur SMTP limite l'utilisation de la commande //Mail from//. L'adresse de l'expéditeur doit être associée au nom de connexion SMTP. La correspondance login/expéditeur est spécifiée dans les tables //Postfix// suivantes, toutes deux implémentées avec un gabarit e-smith: "/etc/postfix/login_maps" et "/etc/postfix/login_maps.pcre".
Pour activer la propriété //SenderValidation//:
[root@tchana devnet]# config setprop postfix SenderValidation enabled
[root@tchana devnet]#
On signale le changement.
[root@tchana devnet]# signal-event nethserver-mail-server-update
[root@tchana devnet]#
On vérifie.
[root@tchana devnet]# config show postfix
postfix=service
AccessBypassList=
AccessPolicies=
AlwaysBccAddress=
AlwaysBccStatus=disabled
ConnectionsLimit=0
ConnectionsLimitPerIp=0
HeloHost=
MessageQueueLifetime=4
MessageSizeMax=20000000
MessageSizeMin=1048576
SenderValidation=enabled
SmartHostName=
SmartHostPassword=
SmartHostPort=25
SmartHostStatus=disabled
SmartHostTlsStatus=enabled
SmartHostUsername=
SystemUserRecipientStatus=disabled
TCPPorts=25,465,587
access=green,red
status=enabled
[root@tchana devnet]#
\\
===== Ports d'écoute SMTP de Postfix =====
//Référence:// [[https://github.com/NethServer/nethserver-mail#postfix-smtp-listening-ports|https://github.com/NethServer/nethserver-mail#postfix-smtp-listening-ports]].
Le serveur SMTP de Postfix est à l’écoute sur les ports TCP suivants:
- **25** - port standard SMTP; utilisé par d'autres MTA
- **587** - port standard d'envoi SMTP; STARTTLS requis par défaut pour protéger les mots de passe de connexion; utilisé par les MUA
- **465** - port standard d'envoi SMTPS; TLS toujours requis au niveau du connecteur //(socket)//; utilisé par les MUA qui ne supportent pas STARTTLS
- **10587** - port supplémentaire d'envoi SMTP pour localhost uniquement; aucun TLS requis; utilisé par les applications de messagerie locales
===== Domaines =====
{{Images_Cahier-101-03-003.png?22}} Si le menu **Configuration -> Courrier (Email)** n'apparaît pas, rafraîchir la page.
**Configuration -> Courrier (Email) ->** onglet **Domaines**.
{{ Images_Cahier-101-03-286.png?800 }}
NethServer peut gérer un nombre illimité de domaines de messagerie, configurables à partir de la page **Configuration -> Courrier (Email) -> Domaines**.
Pour chaque domaine, il existe deux alternatives:
- Livrer les messages aux boîtes aux lettres locales, selon le format **Maildir**: [[https://fr.wikipedia.org/wiki/Maildir|https://fr.wikipedia.org/wiki/Maildir]].
- Relayer les messages vers un autre serveur de messagerie.
{{Images_Cahier-101-03-006.png?25}} Si un domaine est supprimé, ses courriels ne seront pas supprimés; tous messages déjà reçus sont conservés.
**Configuration -> Courrier (Email) ->** onglet **Messages**.
NethServer permet de stocker une copie cachée de tous les messages dirigés vers un domaine particulier: ils seront envoyés au destinataire final ainsi qu’à une adresse électronique personnalisée.
☐ //**Toujours envoyer une copie (Bcc)**//\\
Si la case est cochée, la copie cachée est activée.\\
|{{ Images_Cahier-101-03-287.png?400 }}|
{{Images_Cahier-101-03-006.png?25}} Dans certains pays, l'activation de l'option //Toujours envoyer une copie (Bcc)// peut être contraire aux lois sur la confidentialité.
Onglet **Domaines -> Éditer**.
|{{ Images_Cahier-101-03-288.png?400 }}|
\\
Onglet **Domaine**.
//**Domaine**// \\
Notre domaine principal est **micronator-dev.org**.
//**Description**// \\
Champ facultatif utile à l'administrateur système pour noter à quel domaine s'appliquent les paramètres spécifiés.
//**Messages to domain micronator-dev.org**// \\
Développer cette option pour configurer le serveur afin qu'il distribue le courrier entrant, adressé au domaine spécifié, dans des dossiers locaux.
⦿ //**Distribution locale**// \\
☐ //**Copie cachée (BCC)**// \\
☑ //**Accepter des destinataire inconnus**// \\
Si le destinataire final ne peut pas être établi //(c'est-à-dire que l'adresse du destinataire n'existe pas)//, le message est normalement rejeté. Parfois //(lorsqu’un domaine de messagerie est migré)//, il peut être utile de l’accepter et de remettre le message, en mode silencieux, à une boîte aux lettres fourre-tout. Ce comportement peut être obtenu en activant cette option.
|{{ Images_Cahier-101-03-289.png?400 }}|
⚪ //**Relais vers un autre serveur**// \\
Si on sélectionne cette option, le courrier entrant sera transféré vers le serveur spécifié.
==== DKIM ====
☐ //**Signer les messages sortant avec DomainKeys Identified Mail (DKIM)**// \\
//DomainKeys Identified Mail (DKIM)// fournit un moyen de valider le MTA d'envoi en ajoutant une signature cryptographique aux en-têtes MIME des messages sortants. \\
{{Images_Cahier-101-03-006.png?25}} Les en-têtes de signature DKIM sont ajoutés uniquement aux messages envoyés via les ports **TCP 587**(( **Port 587** is reserved for email message submission as specified in this document. Messages received on this port are defined to be submissions. The protocol used is ESMTP [SMTP-MTA, ESMTP], with additional restrictions or allowances as specified here.Although most email clients and servers can be configured to use port 587 instead of 25, there are cases where this is not possible or convenient. A site MAY choose to use port 25 for message submission, by designating some hosts to be MSAs and others to be MTAs. \\ //Référence:// [[https://www.ietf.org/rfc/rfc4409.txt|https://www.ietf.org/rfc/rfc4409.txt]]. \\ \\ ))//(envoi)// et **465** //(smtps)//.\\
{{Images_Cahier-101-03-006.png?25}} Sur un serveur LOCAL __sans réel FQDN__ //(CNAME valides chez un régistraire)//, __on n'active jamais DKIM__.
Si on veut que le domaine //micronator-101.ddns.net// //(domaine chez NoIP- fournisseur de DNS dynamique)// puisse recevoir/envoyer des courriels, il faut que ce domaine ait une entrée __dans le DNS du Serveur NethServer__.
**Configuration -> DNS ->** onglet **Hôtes -> CRÉER NOUVEAU**.
//**Nom d'hôte**//\\
**micronator-101.ddns.net**
On entre les informations demandées **-> SOUMETTRE**.
|{{ Images_Cahier-101-03-290.png?400 }}|
L'entrée a été ajoutée dans le DNS du Serveur NethServer.
{{ Images_Cahier-101-03-291.png?800 }}
\\
**Configuration de la messagerie électronique**
De plus, il faut configurer une entrée de messagerie électronique pour ce domaine.
**Configuration -> Courrier (Email) ->** onglet **Domaines -> CRÉER NOUVEAU**.
|{{ Images_Cahier-101-03-292.png?400 }}|
- On entre les informations demandées.\\
- **SOUMETTRE**.
|{{ Images_Cahier-101-03-293.png?400 }}|
On vérifie le résultat.
{{ Images_Cahier-101-03-294.png?800 }}
\\
**Alias de messagerie**
Pour que l'utilisateur //michelandre// puisse recevoir des courriels à l'adresse //michelandre@micronator-101.ddns.net//, il faut lui créer un alias de messagerie.
\\
\\
\\
**Gestion -> Adresse mail ->** onglet **Alias de messagerie -> CRÉER NOUVEAU**.
|{{ Images_Cahier-101-03-295.png?400 }}|
- On entre les informations demandées. \\
- Pour //**Destination**//, on entre **michelandre** et il apparaît dans le champ en dessous; on sélectionne l'adresse courriel de cet utilisateur. \\
- **SOUMETTRE**.
|{{ Images_Cahier-101-03-296.png?400 }}|
\\
On vérifie.
{{ Images_Cahier-101-03-297.png?800 }}
- Pour plus de détails sur l'activation de DKIM, voir la section //Webmail// dans le [[nethserver_101_cahier_06_nethserver_wordPress|Cahier-06]]: //NethServer & WordPress//.
- Pour que l'utilisateur //michelandre// puisse entrer dans sa boîte aux lettres, il devra utiliser: \\
https://www.mail.micronator-101.ddns.net/webmail ou \\
https://www.micronator-dev.org/webmail.
\\
\\
===== Filtre =====
//Référence:// http://docs.nethserver.org/en/latest/mail.html#filter.
Tous les courriels en transit sont soumis à une liste de vérifications pouvant être activées de manière sélective. \\
Si ce n'est déjà fait: **Configuration -> Courrier (Email) -> Filtre**.
☑ //**Bloquer les pièces jointes**// \\
Le serveur peut bloquer les classes de pièces jointes suivantes.
* ☑ //**Exécutables**// //(ex: exe, msi)//
* ☐ //**Archives**// //(ex: zip, tar.gz, docx)//
* ☐ //**Liste personnalisée**//
☑ //**Antivirus**// \\
Le module antivirus trouve les messages électroniques contenant des virus. Les messages infectés sont ignorés. La base de données de signatures de virus est mise à jour périodiquement.
|{{ Images_Cahier-101-03-298.png?400 }}|
☑ //**Anti-spam**// \\
Le module anti-spam ([[https://rspamd.com/|https://rspamd.com/]]) analyse les courriels en détectant et en classant les messages à l'aide de critères heuristiques, de règles prédéterminées et d'évaluations statistiques du contenu des messages.\\
{{Images_Cahier-101-03-005.png?25}} On ajuste les niveaux en cliquant et glissant les curseurs. \\
Le filtre peut également vérifier si le serveur émetteur est répertorié dans une ou plusieurs listes noires //(DNSBL)//.
Un note est associée à chaque règle. La note totale collectée à la fin de l'analyse permet au serveur de décider ce qu'il doit faire avec le message, en fonction de trois seuils pouvant être ajustés sous **Configuration -> Courriel (Email) -> Filtre -> Anti-spam**.
- Si la note est supérieure au seuil de la liste grise, le message est temporairement rejeté. La technique greylisting(( **Greylisting**: Le greylisting //(mot anglophone signifiant "inscription sur liste grise")// est une technique de lutte anti-spam très simple qui consiste à rejeter temporairement un message électronique, par émission d’un code de refus temporaire au serveur informatique émetteur //(MTA)//. Dans la majorité des cas, les serveurs émetteurs réexpédient le courriel après quelques minutes. La plupart des serveurs émettant des spams ne prennent pas cette peine. Au surplus, s'ils le font, ça laisse le temps aux logiciels piégeurs de spam de les inscrire sur des listes noires de spammeurs.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Greylisting|https://fr.wikipedia.org/wiki/Greylisting]].
\\ \\ )) suppose qu'un polluposteur est pressé et est susceptible d'abandonner, tandis qu'un MTA compatible SMTP tentera à nouveau de remettre le message différé.
- Si la note est supérieure au seuil des courriers indésirables, le message est marqué comme tel en ajoutant l'en-tête spécial X-Spam: Yes pour des traitements spécifiques. Le message est alors envoyé comme tout autre message. En guise d'alternative, l'option Ajouter un préfixe au Sujet des messages considérés comme spam rend l'indicateur de courrier indésirable visible sur l'objet du message en préfixant ce dernier du texte spécifié.
- Si la note est supérieure au Seuil de refus du message pour cause de spam, le message est rejeté.
Les filtres statistiques, appelés Filtrage bayésien du spam(( **Filtrage bayésien du spam**: le filtrage bayésien du spam //(en référence au théorème de Bayes)// est une technique statistique de détection de pourriels s'appuyant sur la classification naïve bayésienne.Les filtres bayésiens fonctionnent en établissant une corrélation entre la présence de certains éléments //(en général des mots, parfois d'autres choses)// dans un message et le fait qu'ils apparaissent en général dans des messages indésirables //(spam)// ou dans des messages légitimes //(ham)// pour calculer la probabilité que ce message soit un spam.Le filtrage bayésien du spam est une technique puissante pour traiter le courrier électronique indésirable. Elle s'adapte aux habitudes de courrier des uns et des autres et produit un taux de faux positifs suffisamment bas pour être acceptable. \\ //Référence:// [[https://fr.wikipedia.org/wiki/Filtrage_bayésien_du_spam|https://fr.wikipedia.org/wiki/Filtrage_bay%C3%A9sien_du_spam]]. \\ \\ )), sont des règles spéciales qui évoluent et s’adaptent rapidement aux messages d’analyse marqués comme spam ou ham(( **HAM**: par opposition aux messages indésirables, les logiciels de filtrage de courrier électronique tels que SpamAssassin définissent comme "ham", littéralement "jambon", tout message électronique légitime. \\ //Référence:// [[https://fr.wikipedia.org/wiki/Spam#Origine_du_terme_«_spam_»|https://fr.wikipedia.org/wiki/Spam#Origine_du_terme_%C2%AB_spam_%C2%BB]]. \\ \\ )).
Les filtres statistiques peuvent ensuite apprendre avec n’importe quel client IMAP en déplaçant simplement un message dans le dossier "Junk".
Avant de commencer, vous devez activer le dossier de courrier indésirable à partir de la page **Configuration -> Courrier (Email) -> Boîtes mails** en cochant l'option //**Déplacer dans le dossier "Junk"**//.
- En mettant un message dans le dossier de courrier indésirable, les filtres apprennent qu'il s'agit d'un spam et attribueront un score plus élevé à des messages similaires.
- Au contraire, en enlevant un message du dossier "Junk", les filtres apprennent que c’est un ham; la prochaine fois, un score inférieur sera attribué.
|{{ Images_Cahier-101-03-299.png?400 }}|
Par défaut, tous les utilisateurs peuvent faire apprendre aux filtres en utilisant cette technique. Si un groupe appelé spamtrainers existe, seuls les utilisateurs de ce groupe seront autorisés à faire apprendre aux filtres.
L'apprentissage des filtres bayésiens s’applique à tous les utilisateurs du système et non pas uniquement à ceux qui ont marqué un courrier électronique en tant que spam ou ham.
Il est important de comprendre le fonctionnement des tests bayésiens:
- Ils ne marquent pas les messages comme spam s'ils contiennent un sujet ou une adresse d'expéditeur spécifique. Ils ne font que collecter les caractéristiques particulières du message.
- Un message ne peut être noté qu'une seule fois. Le même message noté plusieurs fois n’affecte rien, car les tests dynamiques ont déjà été appris pour ce message.
- Les tests bayésiens ne sont actifs que s’ils reçoivent suffisamment d’informations; ce qui implique un minimum de 200 spams et 200 hams.
{{Images_Cahier-101-03-006.png?25}} Une bonne habitude est de vérifier fréquemment le dossier des courriels indésirables afin de ne pas perdre les courriels reconnus à tort comme spam.
Si le système ne reconnaît pas correctement les spams, même après avoir été éduqué, les listes blanches et les listes noires peuvent alors vous aider. Ce sont des listes d'adresses courriels ou de domaines, toujours autorisées ou toujours bloquées, pour envoyer ou recevoir des messages.
De retour à la page **Configuration -> Courrier (Email) -> Filtre**.
☑ //**Ajouter un préfixe au Sujet des messages considérés comme spam**// \\ On peut ajouter un préfixe au Sujet des messages considérés comme pourriel.
|{{ Images_Cahier-101-03-300.png?400 }}|
\\
//**Règles par adresses mails**//\\ Cette section permet de créer trois types de règles:\\ ■ Nouveau blocage depuis: tout message de l'expéditeur spécifié est bloqué.\\ ■ Nouvelle autorisation depuis: tout message de l'expéditeur spécifié est accepté.\\ ■ Nouvelle autorisation pour: tout message au destinataire spécifié est accepté.
|{{ Images_Cahier-101-03-301.png?200 }}|
|{{ Images_Cahier-101-03-302.png?200 }}|
{{Images_Cahier-101-03-004.png?25}} Il est possible de créer une règle ‘Nouveau blocage’ ou ‘Nouvelle autorisation’ même pour un domaine complet de messagerie et non pas seulement pour une adresse courriel unique: il vous suffit de spécifier le domaine souhaité //(par exemple: nethserver.org)//.
On déroule le menu //**Nouveau blocage depuis**// **->** on clique **Nouvelle autorisation pour ->** on entre **nethserver.org ->** on clique l'icône à droite.
**-> SOUMETTRE**.
{{Images_Cahier-101-03-006.png?25}} Les vérifications antivirus sont appliquées malgré les paramètres de la liste blanche.
|{{ Images_Cahier-101-03-303.png?200 }}|
|{{ Images_Cahier-101-03-304.png?200 }}|
\\
**Interface web Rspamd**
Le module anti-spam du Serveur NethServer est implémenté par Rspamd [[https://rspamd.com/|https://rspamd.com/]] qui fournit une interface Web d’administration à laquelle on peut accéder: \\
1) à l'URL: https://:980/rspamd, \\
2) ou à l'URL: https://www.micronator-dev.org:980/rspamd/, \\
3) ou **Statut -> Application -> Rspamd -> OUVERT ->** on entre le justificatif de l'utilisateur **admin -> OK**.
|{{ Images_Cahier-101-03-306.png?400 }}|
|{{ Images_Cahier-101-03-307.png?400 }}|
\\
La page de RSPAMD s'affiche.
Le menu offre plusieurs choix d'affichage et de configurations.
|{{ Images_Cahier-101-03-308.png?400 }}|
\\
===== Adresses mail =====
Chaque utilisateur possède une boîte aux lettres personnelle et tout nom d'utilisateur sous la forme @ est également une adresse électronique valide pour y envoyer des messages.
**Gestion -> Adresse mail ->** onglet **Boîtes aux lettres utilisateurs** affiche la liste des boîtes aux lettres.
{{ Images_Cahier-101-03-309.png?800 }}
\\
==== Boîtes au lettres utilisateurs ====
Pour un utilisateur spécifique //(ex: michelandre@micronator-dev.org)//, le bouton **Éditer** permet de désactiver l'accès au service mail //(IMAP, POP3, SMTP/AUTH)//. Les messages envoyés à la boîte aux lettres de cet utilisateur peuvent être transférés à une adresse électronique externe.
{{Images_Cahier-101-03-006.png?25}} Si le système est lié à un fournisseur distant de comptes et qu'un compte d'utilisateur est supprimé à distance, la boîte aux lettres associée __doit être effacée manuellement__. Le préfixe du chemin du répertoire est ''/var/lib/nethserver/vmail''/.
☑ //**Accéder au service mail**//\\ Permet d'activer/désactiver l'accès au service de messagerie. Ce paramètre est activé par défaut.
☐ //**Réseau local seulement**//\\ Parfois, une entreprise interdit les communications externes à l’organisation. L'option //**Réseau local seulement**// bloque la possibilité à une adresse de recevoir du courrier électronique de l'extérieur. Néanmoins, l'option //**Réseau local seulement**// peut être utilisée pour échanger des messages avec d'autres comptes du système.
☐ //**Transférer des messages**//\\ Lorsque coché, ce paramètre affiche un cadre pour entrer l'adresse courriel de destination du transfert.\\ On peut garder une copie du message sur le serveur.
☐ //**Quota de la boîte mails personnalisé**// \\ Permet d'ajuster le quota de la boîte aux lettres de cet utilisateur en cliquant et en glissant le curseur. //(Défaut de 2 Go)//.
☐ //**Durée de rétention personnalisée des spams**// \\ Le curseur permet d'ajuster le temps de rétention des pourriels de cet utilisateur.
**-> SOUMETTRE** si on a modifié un paramètre.
|{{ Images_Cahier-101-03-310.png?400 }}|
|{{ Images_Cahier-101-03-311.png?400 }}|
|{{ Images_Cahier-101-03-312.png?400 }}|
|{{ Images_Cahier-101-03-313.png?400 }}|
==== Boîtes au lettres partagées ====
Les boîtes aux lettres peuvent être partagées entre des groupes d'utilisateurs. Cet onglet permet de créer une nouvelle boîte aux lettres partagée et d'en définir un ou plusieurs groupes propriétaires. Les boîtes aux lettres partagées peuvent également être créées par tout client IMAP prenant en charge l'extension de protocole IMAP ACL //(RFC 4314)//.
|{{ Images_Cahier-101-03-314.png?400 }}|
==== Alias de messagerie ====
Le système permet la création d’un nombre illimité d’adresses électroniques supplémentaires, à partir de cet onglet.
|{{ Images_Cahier-101-03-315.png?400 }}|
Chaque alias de messagerie est associé à une ou plusieurs //**Destinations**//. Une destination peut être un des types suivants:
- boîte aux lettres d'utilisateur,
- boîte aux lettres partagée ou
- adresse courriel externe.
Un alias de messagerie peut être lié à n'importe quel domaine de messagerie ou être spécifique à un domaine particulier.
Exemple:
- Premier domaine: __mondomaine.net__.
- Deuxième domaine: __exemple.com__.
|{{ Images_Cahier-101-03-316.png?400 }}|
\\
Pour une adresse électronique valide pour les deux domaines //(séparées par une virgule)//: __info@mondomaine.net__ , __info@exemple.com__.
Pour une adresse courriel __toto__ valide uniquement pour un domaine: __toto@exemple.com__.
\\
\\
===== Boîtes mails =====
**Configuration -> Courrier (Email) -> Boîtes mails** contrôle les protocoles disponibles pour accéder à une boîte aux lettres d'utilisateur.
==== Protocoles d'accès aux boîtes mails ====
☑ //**IMAP**//(( **IMAP**: Au sens strict, Interactive Message Access Protocol, devenu avec IMAP-4 Internet Message Access Protocol //(IMAP)//, est un protocole qui permet d'accéder à ses courriers électroniques directement sur les serveurs de messagerie. Son fonctionnement est donc à l'opposé de POP qui, lui, récupère les messages localement //(vers le poste de travail)// via un logiciel spécialisé. L'évolution des différentes versions d'IMAP //(IMAP 4)// en fait aujourd'hui un protocole permettant également de récupérer les messages localement.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Internet_Message_Access_Protocol|https://fr.wikipedia.org/wiki/Internet_Message_Access_Protocol]].
\\ \\ )) (recommandé)
☑ //**POP3**//(( **POP**: En informatique, le POP //(Post Office Protocol, littéralement "protocole de bureau de poste")//, est un protocole qui permet de récupérer les courriers électroniques situés sur un serveur de messagerie électronique. En dehors d'un paramétrage spécifique, POP se connecte au serveur de messagerie, s'authentifie, récupère le courrier, "peut" effacer le courrier sur le serveur, et se déconnecte.\\ Ce protocole a été réalisé en plusieurs versions; respectivement POP1, POP2 et actuellement POP3.\\ Cette opération transite sur un réseau TCP/IP et utilise le protocole de transfert TCP via le port 110. Ce protocole est défini par la RFC 1939.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Post_Office_Protocol|https://fr.wikipedia.org/wiki/Post_Office_Protocol]].
\\ \\ )) (obsolète)
☐ //**Autoriser les connexions __non chiffrées__**// \\ Pour des raisons de sécurité, tous les protocoles nécessitent par défaut, le chiffrage //STARTTLS//. //**Autoriser les connexions non chiffrées**// désactive cette exigence importante et permet de transmettre sur le réseau les mots de passe et le contenu du courrier en texte clair.
|{{ Images_Cahier-101-03-317.png?400 }}|
{{Images_Cahier-101-03-008.png?25}} N'autorisez pas les connexions non chiffrées dans les environnements de production!
==== Espace disque ====
À partir de la même page //(Configuration -> Courrier (Email) -> Boîtes mails)//, l'espace disque __de toutes les boîtes aux lettres__ peut être limité à un quota par défaut.
⦿ //**Appliquer les quotas**// si cliqué/activé, la page //Quota emails// récapitule l'utilisation du quota pour chaque utilisateur. Ce résumé est mis à jour lorsqu'un utilisateur se connecte ou qu'un message est livré.\\ Le quota peut être personnalisé __pour un utilisateur spécifique__ dans **Gestion -> Adresse mail -> Boîtes aux lettres utilisateurs ->** vis-à-vis un utilisateur **→ Éditer -> Quota de la boîte mails personnalisé.**
|{{ Images_Cahier-101-03-318.png?400 }}|
|{{ Images_Cahier-101-03-319.png?400 }}|
==== Traitement des spams ====
De retour à la page **Configuration -> Courrier (Email) -> Boîtes mails**, les messages marqués comme pourriel peuvent être automatiquement déplacés en activant l'option //**Déplacer dans le dossier "Junk"**//.
Si cette option est activée, tous les //spams// __pour tous les utilisateurs__ sont automatiquement supprimés à la fin de la période de conservation.
{{Images_Cahier-101-03-005.png?25}} La //période de rétention// du courrier indésirable peut être personnalisée __pour un utilisateur spécifique__ dans **Gestion -> Adresse mail -> Boîtes aux lettres utilisateurs -> Éditer** vis-à-vis un utilisateur:
☑ //**Durée de rétention personnalisée des spams**//.\\ Déplacer le curseur pour ajuster.
De retour à **Configuration -> Courrier (Email) -> Boîtes mails**, l'utilisateur root peut personnifier //(emprunter l'identité d')// un autre utilisateur et ainsi obtenir tous les droits et autorisations sur les dossiers et contenus du courrier de la boîte aux lettres de cet utilisateur.
☐ //**Root peut se connecter en tant qu'un autre utilisateur**// est le paramètre qui contrôle cette personnification qui est également appelée //utilisateur principal// dans Dovecot(( **Dovecot** est un serveur IMAP et POP3 pour les systèmes d'exploitation Unix et dérivés, conçu avec comme premier but la sécurité. Dovecot est distribué en double licence MITx et xGPL version 2.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Dovecot|https://fr.wikipedia.org/wiki/Dovecot]].
\\ \\ )). \\
Lorsque ce paramètre est activé, le justificatif d'identification suivant est accepté par le serveur IMAP: \\
♦ nom d'utilisateur avec le suffixe __*root__ ajouté \\
♦ mot de passe de root
|{{ Images_Cahier-101-03-320.png?400 }}|
|{{ Images_Cahier-101-03-321.png?400 }}|
|{{ Images_Cahier-101-03-322.png?400 }}|
//Exemple:// pour accéder à la boîte aux lettres de //michelandre//, root doit utiliser le justificatif d'identification suivant: \\
♦ nom d'utilisateur: //michelandre//__*root__ \\
♦ mot de passe: mot-de-passe-de-root
\\
\\
===== Messages =====
**Configuration -> Courrier (Email) ->** onglet **Messages**, le curseur //**Taille maximum des messages dans la file d'attente**// définit la taille maximale totale des messages dans la file d'attente du système de courriers. Si cette limite est dépassée, aucun message ne peut entrer dans le système et il est rejeté.
Une fois qu'un message entre dans NethServer, il est conservé dans une file d'attente, en attendant la livraison finale ou le relais vers un autre système.
|{{ Images_Cahier-101-03-323.png?400 }}|
Lorsque NethServer relaie un message vers un serveur distant, des erreurs peuvent survenir:
- la connexion réseau a échoué, ou
- l'autre serveur est en panne ou surchargé.
Ces erreurs et certaines autres sont temporaires. Dans ces cas, NethServer tente de se reconnecter à l'hôte distant à intervalles réguliers jusqu'à ce qu'une limite de temps soit atteinte. Le curseur //**Durée de vie des messages dans la file d'attente**// modifie cette limite. Par défaut, elle est définie à **4** jours.
Lorsque les messages sont dans la file d'attente, l'administrateur peut demander une tentative immédiate de relayer les messages en appuyant sur:\\
**Statut -> Queue d'e-mail -> Tenter d'envoyer**.
À l'écran surgissant, **-> Tenter d'envoyer**.
|{{ Images_Cahier-101-03-324.png?400 }}|
|{{ Images_Cahier-101-03-325.png?400 }}|
L'administrateur peut supprimer sélectivement les messages en file d'attente ou vider complètement la file d'attente avec le bouton **Supprimer tout**.
|{{ Images_Cahier-101-03-326.png?400 }}|
{{Images_Cahier-101-03-005.png?25}} De retour à **Configuration -> Courrier (Email) -> Messages** et pour conserver __une copie cachée de tous les messages__ traversant le serveur de messagerie, cochez la case:
☐ //**Toujours envoyer une copie (Bcc)**// \\
Cette fonctionnalité est différente de la même case à cocher sous **Configuration -> Courrier (E-mail) -> Domaine -> Copie cachée (Bcc)**, car elle ne différencie pas les domaines de messagerie et traite également les messages sortants.
|{{ Images_Cahier-101-03-327.png?400 }}|
{{Images_Cahier-101-03-006.png?25}} Dans certains pays, l'activation de l'option Toujours envoyer une copie //(Bcc)// peut être contraire aux lois sur la confidentialité.
\\
\\
===== Smarthost =====
La page **Configuration -> Courrier (E-mail) -> Smarthost** configure tous les messages sortant de manière à ce qu'ils soient dirigés vers un serveur SMTP spécial, techniquement appelé smarthost. Un smarthost accepte de relayer des messages sous certaines restrictions. Il pourrait vérifier:
- l'adresse IP du client et
- les informations d'identification du client SMTP AUTH.\\ L'envoi via un smarthost n'est généralement pas recommandé. Ce paramètre ne peut être utilisé que si le serveur est temporairement sur une liste noire(( **DNS Black Listing (DNSBL)** est une méthode permettant de consulter une liste noire d'émetteurs de courrier électronique en utilisant le protocole DNS. Le nom DNS Black Listing vient de l'expression anglaise black list qui signifie liste noire.\\ //Référence:// [[https://fr.wikipedia.org/wiki/DNS_Black_Listing|https://fr.wikipedia.org/wiki/DNS_Black_Listing]].
\\ \\ )) ou si l'accès SMTP normal est limité par le fournisseur d'accès Internet (FAI).
|{{ Images_Cahier-101-03-328.png?400 }}|
☐ //**Envoyer les messages en utilisant un smarthost**//\\
Le serveur tentera d'envoyer les courriels directement à la destination //(recommandé dans la plupart des cas)//; en choisissant plutôt d'envoyer par un smarthost, il essaiera de les transmettre via le serveur SMTP du FAI //(recommandé en cas de connexion peu fiable, IP dynamique, etc.)//. \\
//**Nom d'hôte**// - Le nom du serveur de messagerie du fournisseur d'accès Internet. \\
//**Port**// - Le port du serveur de messagerie du FAI.\\
//**Nom d'utilisateur**// - Si le serveur du FAI requiert une authentification, spécifiez le nom d'utilisateur.\\
//**Mot de passe**// - Le mot de passe requis par le FAI.
☐ //**Autoriser les connexions non cryptées**//\\
{{Images_Cahier-101-03-008.png?25}} Normalement, si vous utilisez une connexion authentifiée //(avec nom d'utilisateur et mot de passe)//, une connexion chiffrée est requise pour protéger le mot de passe. La sélection de cette option permettra à une connexion non sécurisée de se connecter au FAI //(non recommandé, à utiliser uniquement si le FAI a des problèmes)//.
\\
\\
===== Accès SMTP =====
//**Autoriser l'envoi à partir de ces adresses IP**//
Autoriser l'envoi de messages électroniques à partir de l'adresse IP spécifiée, sans authentification SMTP ni autres restrictions de sécurité. Cette option convient à un dispositif(( **dispositif:** n. m. unité qui assure la réalisation d'une opération particulière, indispensable au bon fonctionnement d'un système informatique, d'une machine ou d'un appareil. \\ //Référence:// [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8357059|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8357059]]. \\ \\ )) réseau patrimonial(( **patrimonial**: se dit de composants, logiciels ou matériels, issus d'une génération ou d'une version dépassée et qui continuent d'être utilisés, après des ajustements, en même temps que la technologie contemporaine d'une entreprise.//Note:// Les entreprises ont continué à supporter et à entretenir des environnements patrimoniaux qui auraient dû être changés depuis longtemps. \\ //Référence:// [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8390423|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8390423]]. \\ \\ )) qui ne prend pas en charge le protocole SMTP/AUTH.
{{Images_Cahier-101-03-006.png?25}} Ne changez pas la politique par défaut sur les nouveaux environnements!
|{{ Images_Cahier-101-03-329.png?400 }}|
//Par exemple//: certains périphériques //(imprimantes, numériseur/digitaliseur,…)// ne prennent pas en charge l'authentification SMTP, le chiffrage ou les paramètres de port. Ces périphériques peuvent être activés pour envoyer des courriels en entrant leur adresse IP dans la zone de texte //**Autoriser l'envoi à partir de ces adresses IP**//.
{{Images_Cahier-101-03-008.png?25}} ▼ **Options avancées**\\
☐ //**Autoriser l'envoi à partir des réseaux de confiance**// \\
Autorise l'envoi de messages électroniques à partir de n'importe quel hôte des réseaux de confiance, sans authentification SMTP et autres restrictions de sécurité.
☐ //**Activer l'authentification sur le port 25**// \\
Les clients de messagerie devraient envoyer leurs messages uniquement à l'aide du port **587** d'envoi standard. Pour les environnements patrimoniaux, cette option active aussi l'authentification du client ainsi que le relais de messagerie sur le port **25**.
\\
\\
===== Logs - Journaux =====
//**Administration -> Logs**//
Chaque opération du serveur de messagerie est enregistrée dans les fichiers journaux suivants:
''/var/log/imap'' - contient les opérations de connexion et de déconnexion des utilisateurs.
''/var/log/maillog'' - enregistre toutes les transactions de courrier.
|{{ Images_Cahier-101-03-330.png?400 }}|
Une transaction enregistrée dans le fichier maillog implique généralement différents paramètres du serveur de messagerie. Chaque ligne contient respectivement:
- l'horodatage,
- le nom d'hôte,
- le nom du composant et l'id du processus de l'instance du composant
- et un message texte détaillant l'opération.
\\
\\
====== Webmail ======
===== Installation =====
Nous avons installé **Webmail** //(Roundcube web mail)// lors de l'installation des modules de la messagerie électronique à la section [[nethserver_101_cahier_03_creation_un_serveur_virtuel#Installation]].
===== Description =====
Le client de messagerie Web par défaut est **Roundcube**. Les principales caractéristiques de Roundcube sont:
- Simple et rapide.
- Carnet d'adresses intégré avec le protocole LDAP interne.
- Prise en charge des messages HTML.
- Prise en charge des dossiers partagés.
- Extensions.
===== Accès =====
Webmail est disponible aux URL suivantes:
http://_FQDN-serveur_/webmail \\
http://_FQDN-server_/roundcubemail
Pour un serveur avec l'adresse IP 10.10.10.75 et le nom de domaine micronator-dev.org, les adresses valides sont les suivantes:
http://10.10.10.75/webmail \\
http://10.10.10.75/roundcubemail \\
http://www.micronator-dev.org/webmail \\
http://www.micronator-dev.org/roundcubemail \\
https://mail.micronator-dev.org/webmail \\
https://mail.micronator-dev.org/roundcubemail
{{Images_Cahier-101-03-006.png?25}} La connexion est sécuritaire, le protocole http sera transformé en protocole https.
{{Images_Cahier-101-03-003.png?22}} Pour accéder à Webmail sur un Hôte virtuel, il faut toujours employer: https://mail.FQDN/webmail ou https://www.mail.FQDN/webmail
===== Courriel de test =====
{{Images_Cahier-101-03-006.png?25}} Remarque: si NethServer est lié à un fournisseur distant de comptes Active Directory, un compte utilisateur dédié dans AD est requis par le module pour être pleinement opérationnel! Voir //Join an existing Active Directory domain// à l'URL [[http://docs.nethserver.org/en/v7/accounts.html#join-existing-ad-section|http://docs.nethserver.org/en/v7/accounts.html#join-existing-ad-section]].
On accède à la messagerie électronique de notre Serveur NethServer.
- http://www.micronator-dev.org/webmail, le protocole devient automatiquement https.
- L'utilisateur **admin** se logue.
|{{ Images_Cahier-101-03-331.png?400 }}|
La page de la boîte de réception d'admin s'affiche.
**Rédiger** pour écrire un nouveau message.
{{ Images_Cahier-101-03-332.png?800 }}
On rédige un message pour l'utilisateur //michelandre// **-> Envoyer**.
{{ Images_Cahier-101-03-333.png?800 }}
\\
\\
Dans le répertoire //**Envoyés**//, le message est présent.
|{{ Images_Cahier-101-03-334.png?400 }}|
\\
\\
**Déconnexion**.
|{{ Images_Cahier-101-03-335.png?400 }}|
On entre les informations pour **michelandre** afin qu'il puisse accéder à sa boîte aux lettres.
|{{ Images_Cahier-101-03-336.png?400 }}|
\\
Le courriel d'admin a bien été reçu par michelandre.
On double-clique l'objet du courriel pour l'afficher.
|{{ Images_Cahier-101-03-337.png?600 }}|
\\
Le message reçu de l'utilisateur admin s'affiche.
{{ Images_Cahier-101-03-338.png?800 }}
\\
On clique l'icône **Plus d'actions...** pour afficher les menus masqués **-> Afficher la source**.
{{ Images_Cahier-101-03-339.png?800 }}
\\
La source du message s'affiche.
Return-Path:
Delivered-To: michelandre@micronator-dev.org
Received: from dorgee.micronator-dev.org
by dorgee.micronator-dev.org with LMTP id +AWSASDLTFymGQAAYOHJyQ
for ; Sat, 26 Jan 2019 16:03:28 -0500
Received: from www.micronator-dev.org (localhost [127.0.0.1])
by dorgee.micronator-dev.org (Postfix) with ESMTP id D4CCF40C4CB3
for ; Sat, 26 Jan 2019 16:03:27 -0500 (EST)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII;
format=flowed
Content-Transfer-Encoding: 7bit
Date: Sat, 26 Jan 2019 16:03:27 -0500
From: admin@micronator-dev.org
To: Michel-Andre
Subject: Test de courriel
Message-ID: <7be97aa4c1187a12e5e741ddd58e3d2f@micronator-dev.org>
X-Sender: admin@micronator-dev.org
User-Agent: Roundcube Webmail/1.1.12
Bonjour le monde!
admin
===== Extensions =====
Roundcube prend en charge de nombreuses extensions qui sont déjà intégrées à l'installation.
Les extensions activées par défaut sont:
- //**Manage sieve**//: gère les filtres pour le courrier entrant.
- //**Mark as junk**//: marque les messages sélectionnés comme courriers indésirables et les déplace dans le dossier des courriers indésirables.
==== Extensions recommandées ====
- //**New mail notifier**// – Notification de nouveau courrier.
- //**Emoticons**// – Émoticônes.
- //**VCard support**// – Support VCard.
Des extensions peuvent être ajoutées ou supprimées en modifiant la liste, séparées par des virgules, dans la propriété ''PluginsList''.
//Exemple:// Pour activer: //Gérer les extensions sieve//, //Marquer comme indésirables// et //Notification de nouveau courrier// à partir de la ligne de commande, exécutez:
config setprop roundcubemail PluginsList managesieve,markasjunk,newmail_notifier
On signale les changements.
signal-eventnethserver-roundcubememail-update
On peut trouver une liste des extensions disponibles dans le répertoire: ''/usr/share/roundcubemail/plugins''.
Pour obtenir la liste, exécuter simplement:
[root@tchana ~]# ls /usr/share/roundcubemail/plugins
acl help password
additional_message_headers hide_blockquote redundant_attachments
archive http_authentication show_additional_headers
attachment_reminder identity_select squirrelmail_usercopy
autologon jqueryui subscriptions_option
database_attachments legacy_browser userinfo
debug_logger managesieve vcard_attachments
emoticons markasjunk virtuser_file
enigma newmail_notifier virtuser_query
example_addressbook new_user_dialog zipdownload
filesystem_attachments new_user_identity
[root@tchana ~]#
Pour voir les extensions installées:
[root@tchana ~]# config show roundcubemail
roundcubemail=configuration
PluginsList=managesieve,markasjunk
Server=localhost
access=public
[root@tchana ~]#
===== Accès à Webmail =====
Avec la configuration par défaut, Webmail est accessible via HTTPS à partir de n'importe quel réseau.
Si vous souhaitez restreindre l'accès uniquement aux réseaux verts et sécurisés, exécutez:
config setprop roundcubememail access private
signal-event nethserver-roundcubememail-update
Si vous voulez ouvrir l'accès depuis n'importe quel réseau:
config setprop roundcubememail access public
signal-event nethserver-roundcubememail-update
===== Nom du serveur dans l'écran de connexion à Webmail =====
À l'écran de connexion à Webmail, dans le champ //**Serveur**//, le nom du domaine principal du serveur apparaît.
On peut supprimer complètement l'affichage de cette ligne. Utile surtout si nous avons plusieurs domaines hébergés sur le Serveur NethServer, car peu importe le domaine auquel nous nous connectons, c'est toujours le nom du domaine principal qui est affiché.
Pour supprimer l'affichage de cette ligne, il nous faut modifier le fichier de configuration de PHP:\\
''/etc/roundcubemail/config.inc.php''
|{{ Images_Cahier-101-03-340.png?400 }}|
et y ajouter la ligne suivante: ''config['default_host'] = '127.0.0.1';''.
Par contre, si nous modifions directement ce fichier, le prochain ré-amorçage écrasera la modification lorsque le serveur assemblera les gabarits de configuration du système.
{{Images_Cahier-101-03-003.png?22}} Il nous faut donc créer un //**gabarit personnalisé**// et y insérer la nouvelle ligne de configuration. Ainsi, lors de l'assemblage des gabarits, le serveur incorporera le gabarit personnalisé au gabarit standard de configuration de PHP.
Création du répertoire pour le gabarit personnalisé.
[root@tchana ~]# mkdir -p /etc/e-smith/templates-custom/etc/roundcubemail/config.inc.php
[root@tchana ~]#
On crée le fichier **91CacherNomDuServeur** et on y insère la ligne de configuration.
{{Images_Cahier-101-03-006.png?25}}Prendre tout le contenu de l'encadré pour la commande.
cat > /etc/e-smith/templates-custom/etc/roundcubemail/config.inc.php/91CacherNomDuServeur <<'EOT'
$config['default_host'] = '127.0.0.1';
EOT
On vérifie.
[root@tchana ~]# cat /etc/e-smith/templates-custom/etc/roundcubemail/config.inc.php/91CacherNomDuServeur
$config['default_host'] = '127.0.0.1';
[root@tchana ~]#
{{Images_Cahier-101-03-006.png?25}}Il n'y a pas de ligne vide avant __$config...__ Nous en avons inséré une pour faciliter la copie de la commande.
On signale le changement.
[root@tchana ~]# expand-template /etc/roundcubemail/config.inc.php
[root@tchana ~]#
On redémarre le démon httpd.
[root@tchana ~]# systemctl restart httpd
[root@tchana ~]#
On se rend à l'URL de connexion à Webmail: https://www.micronator-dev.org/webmail/.
Le domaine du serveur ne s'affiche plus.
|{{ Images_Cahier-101-03-341.png?400 }}|
==== Sauvegarde ====
On vérifie si le nom du fichier ''/etc/e-smith/templates-custom/etc/roundcubemail/'' est déjà présent dans le fichier d'inclusion de la sauvegarde des données: ''/etc/backup-data.d/custom.include'', sinon on l'insère.
{{Images_Cahier-101-03-006.png?25}}Prendre tout le contenu de l'encadré pour la commande.
NouvelleInclusion="/etc/e-smith/templates-custom/etc/roundcubemail/"
if grep -Fxq "$NouvelleInclusion" /etc/backup-data.d/custom.include
then
# L'entrée a été trouvée dans custom.include
echo -e "\nLe fichier custom.include contient déjà l'entrée:\n$NouvelleInclusion \n"
else
# L'entrée n'a pas été trouvée dans custom.include
echo -e "$NouvelleInclusion" >> /etc/backup-data.d/custom.include
echo -e "\nL'entrée: $NouvelleInclusion a été ajoutée\n"
fi
On vérifie.
[root@tchana ~]# cat /etc/backup-data.d/custom.include | grep roundcube
/etc/e-smith/templates-custom/etc/roundcubemail/
[root@tchana ~]#
Ci-dessus, il n'y a pas de ligne vide avant __/etc/e-smith/templates-custom/etc/roundcubemail/__. Nous en avons inséré une afin de faciliter la copie de la commande.
===== Suppression de Webmail =====
Si vous souhaitez supprimer Roundcube, exécutez la commande suivante à la console du serveur.
yum autoremove nethserver-roundcubemail
\\
====== Fichiers journaux ======
===== Foire aux questions =====
==== Définition d’un journal ====
Un journal //(log en anglais)// est un fichier texte dans lequel sont écrits tous les événements qui lui sont associés. Par exemple, le journal messages contiendra, entre autres, les messages affichés au démarrage de votre serveur.
==== Répertoire des journaux ====
Les fichiers journaux se trouvent dans le répertoire ''/var/log''. On y trouve, par exemple, notre fichier messages.
==== Journaux dans le gestionnaire ====
Pour vous faciliter la tâche, les développeurs de NethServer on tout prévu! Pour rechercher et lire facilement un journal, connectez-vous au gestionnaire de NethServer. Dans la colonne de gauche, cliquez **Administration -> Logs**.
Vous voulez visualiser le fichier **messages**, cliquez sur **/var/log/messages**.
===== Voir un journal =====
//**Trouver**// \\
Vous permet de rechercher des mots et des phrases dans tous les journaux du serveur. Vous pouvez accéder directement à chaque journal via les liens répertoriés.
==== Afficher un seul journal ====
Vous permet de parcourir le contenu du journal sélectionné et de suivre le flux de texte en temps réel. \\
//**Fermer**// \\
Ferme la fenêtre du journal sélectionné et revient à la page principale. \\
//**Vide**// \\
Permet de vider le contenu de la fenêtre du journal. Les données sont uniquement supprimées de la fenêtre d'affichage, aucune modification n'est apportée au contenu du journal.
|{{ Images_Cahier-101-03-342.png?400 }}|
//**Suivre**// \\
Met à jour, en temps réel, la fenêtre d'affichage avec toutes les nouvelles informations écrites dans le journal. \\
//**Arrêtez**// \\
Arrête la mise à jour de la visualisation du journal en temps réel.
\\
\\
====== Diagnostiques ======
===== External IP address =====
Affiche l'adresse publique du réseau //(celle vue depuis l'Internet)//.
{{ Images_Cahier-101-03-343.png?800 }}
\\
===== Adresses réseaux =====
Affiche les adresses IP de toutes les cartes réseau du système.
{{ Images_Cahier-101-03-344.png?800 }}
\\
===== Route réseau =====
Affiche la **table de routage** du système.
//Référence:// https://fr.wikipedia.org/wiki/Table_de_routage. \\
Une table de routage est une structure de données utilisée par un routeur ou un ordinateur en réseau et qui associe des préfixes à des moyens d'acheminer les trames vers leur destination.
{{ Images_Cahier-101-03-345.png?800 }}
\\
===== Mail Test =====
Permet de vérifier que la messagerie électronique fonctionne correctement.
Pour envoyer un courriel de test à l'usager **-> root** //(spécifié sous **Mailbox to test**)// **-> SENDMAIL** .
{{ Images_Cahier-101-03-346.png?800 }}
\\
L'usager root se connecte.
|{{ Images_Cahier-101-03-347.png?400 }}|
Le courriel a bien été reçu par l'usager root.
|{{ Images_Cahier-101-03-348.png?600 }}|
===== Nslookup =====
//Référence:// [[https://fr.wikipedia.org/wiki/Nslookup|https://fr.wikipedia.org/wiki/Nslookup]]. \\
Le diagnostique **nslookup** est un programme informatique de recherche d'information dans le DNS, qui associe nom de domaine et adresses IP. Il permet donc d'interroger les serveurs DNS pour obtenir les informations définies pour un domaine déterminé.
//**Nom d'hôte ou IP**// **-> nethserver.org -> NSLOOKUP**.
{{ Images_Cahier-101-03-349.png?800 }}
\\
===== Ping =====
//Référence:// [[https://fr.wikipedia.org/wiki/Ping_(logiciel)|https://fr.wikipedia.org/wiki/Ping_(logiciel)]]. \\
**Ping** est le nom d'une commande informatique permettant de tester l'accessibilité d'une autre machine à travers un réseau IP. La commande mesure également le temps mis pour recevoir une réponse, appelé ////round-trip time//// //(temps aller-retour)//.
Ping utilise une requête **ICMP Request** et attend une réponse **Reply**. L'envoi est répété pour des fins statistiques, déterminer le taux de paquets perdus et le délai moyen de réponse. Si d'autres messages ICMP sont reçus de la part de routeurs intermédiaires //(comme TTL exceeded, Fragmentation needed, administratively prohibited…)//, ils sont affichés à l'écran.
//**Nom d'hôte ou IP**// **-> nethserver.org -> PING**.
{{ Images_Cahier-101-03-350.png?800 }}
\\
===== Scan =====
Balaie le réseau LOCAL à la recherche d'adresses IP connectées à cette interface.
//**Network interfaces**// **-> enp0s3 -> SCAN**.
{{ Images_Cahier-101-03-351.png?800 }}
\\
===== SpeedTest =====
Vérifie la vitesse de téléchargement/téléversement de la carte réseau Externe.
//**Network interfaces**// **-> enp0s8 -> SPEEDTEST**.
{{ Images_Cahier-101-03-352.png?800 }}
\\
===== Traceroute =====
//Référence:// [[https://fr.wikipedia.org/wiki/Traceroute|https://fr.wikipedia.org/wiki/Traceroute]]. \\
**traceroute** //(ou tracert sous Windows)// est un programme utilitaire qui permet de suivre les chemins qu'un paquet de données //(paquet IP)// va prendre pour aller de la machine locale à une autre machine connectée au réseau IP. Il a été conçu au sein du Laboratoire national Lawrence-Berkeley.
//**Nom d'hôte ou IP**// **-> nethserver.org -> TRACEROUTE**.
{{ Images_Cahier-101-03-353.png?800 }}
\\
\\
====== AWStats ======
===== Descriptions =====
//Référence:// [[https://fr.wikipedia.org/wiki/AWStats|https://fr.wikipedia.org/wiki/AWStats]]. \\
**AWStats** est un logiciel analyseur de journaux web //(mais aussi FTP, Streaming et email)// offrant des vues graphiques statiques mais aussi dynamiques des statistiques d'accès aux serveurs web.\\
Il permet d'afficher le nombre de visites, de visiteurs uniques, de pages, de hits, de transfert, par: domaine/pays, hôte, heure, navigateur, OS, … Il peut être lancé grâce à des scripts CGI ou en ligne de commande. \\
AWStats est un logiciel LIBRE sous licence GPL.
//Référence:// [[https://wiki.nethserver.org/doku.php?id=awstats|https://wiki.nethserver.org/doku.php?id=awstats]]. \\
Ce module installe **nethserver-virtualhosts** en tant que dépendance; celle-ci surveillera les internautes qui consultent vos sites Web situés dans vos hôtes virtuels ''/var/lib/nethserver/vhosts''.
Ce module affiche les statistiques de:
- Vos hôtes virtuels //(automatique)//.
- Votre serveur de messagerie //(automatique)//.
- Votre configuration AWStats //(manuel)//.
Un rapport PDF peut être créé et, si nécessaire, envoyé par courrier électronique à root.
===== Prérequis =====
==== Référentiel stephdl ====
Si ce n'est déjà fait, vous devez installer le référentiel __stephdl__. //Référence:// [[https://wiki.nethserver.org/doku.php?id=stephdl_repository|https://wiki.nethserver.org/doku.php?id=stephdl_repository]].
[root@tchana ~]# yum install -y http://mirror.de-labrusse.fr/NethServer/7/x86_64/nethserver-stephdl-1.0.7-1.ns7.sdl.noarch.rpm
...
Transaction Summary
============================================================================================
Install 1 Package
Total size: 40 k
Installed size: 40 k
...
Installed:
nethserver-stephdl.noarch 0:1.0.7-1.ns7.sdl
Complete!
[root@tchana ~]#
==== Installation ====
[root@tchana ~]# yum install -y nethserver-awstats --enablerepo=stephdl
...
Install 1 Package (+20 Dependent packages)
Total download size: 9.9 M
Installed size: 22 M
...
Installé :
nethserver-awstats.noarch 0:0.1.11-1.ns7.sdl
Dépendances installées :
awstats.noarch 0:7.7-1.el7 dejavu-serif-fonts.noarch 0:2.33-6.el7
...
xorg-x11-font-utils.x86_64 1:7.5-21.el7
Terminé !
[root@tchana ~]#
===== Usage =====
Vous avez un panneau **Statistiques AWStats** dans la catégorie **Gestion** et deux onglets disponibles: un premier pour les paramètres et un second pour consulter les pages de statistiques.
Ce module analyse l'accès Web aux pages des hôtes virtuels //(nethserver-virtualhosts)// à la recherche de statistiques. Le journal d'accès est spécifique à chaque nom de domaine utilisé //(un hôte virtuel peut avoir plusieurs noms de domaine)//. Vous pouvez trouver vos journaux personnalisés dans ''/var/log/httpd'', exemple: ''/var/log/httpd/access.NomDuDomaine.log''.
Seul l'utilisateur admin est d'abord capable de parcourir les pages de statistiques. Ultérieurement, vous pouvez autoriser plus d'utilisateurs à l'onglet **Configuration -> AWStats -> Réglages**.
Le démon **crond** met à jour les statistiques, mais vous pouvez le lancer manuellement
[root@tchana ~]# /usr/libexec/nethserver/awstatsCronJobs
[root@tchana ~]#
Vous pouvez activer l'extension **geoip** dans l'onglet **Configuration -> AWStats -> Réglages** sous //**Réglages avancés**//.
**Configuration -> Statistique AWStats ->** onglet **Configuration**.
{{ Images_Cahier-101-03-354.png?800 }}
\\
☑ //**Statut**//\\
Pour activer AWStats.
⦿ //**Consulter les pages de statistiques seulement sur votre réseau local**// \\
Pour afficher seulement les statistiques de votre réseau LOCAL.
⚪ //**Consulter les pages de statistiques en dehors de votre réseau local**// \\
Pour afficher seulement les statistiques en dehors de votre réseau LOCAL.
//**Exécuter les analyses toutes les minutes**// \\
Pour une mise à jour des statistiques à toutes les **5** minutes.
//**Utilisateurs autorisés à consulter les statistiques web**// \\
On entre un ou plusieurs noms d'utilisateurs //(**admin** et **michelandre**)// qui auront les droits de consulter les statistiques AWStats.
▼ //**Paramètres avancés**// \\
On ajuste les différents paramètres de AWStats **-> SOUMETTRE**.
|{{ Images_Cahier-101-03-355.png?400 }}|
|{{ Images_Cahier-101-03-356.png?400 }}|
On visite quelques pages sur notre site et on demande de mettre tout de suite à jour les statistiques.
[root@tchana ~]# /usr/libexec/nethserver/awstatsCronJobs
[root@tchana ~]#
**Configuration -> Statistique Awstats ->** onglet **Statistiques**.\\
On choisit une des pages de statistiques.
|{{ Images_Cahier-101-03-357.png?400 }}|
On fournit le justificatif d'identité //(**admin** ou **michelandre**)// **-> OK**.
|{{ Images_Cahier-101-03-358.png?400 }}|
\\
====== ClamAV ======
===== Introduction =====
//Référence:// [[https://wiki.nethserver.org/doku.php?id=clamscan|https://wiki.nethserver.org/doku.php?id=clamscan]]. \\
Il n'y a pas beaucoup de virus conçus pour les distributions Linux et, par conséquent, la plupart des utilisateurs de tels systèmes ne se donnent pas la peine d'utiliser un logiciel antivirus. Toutefois, ceux qui souhaitent pouvoir analyser leur système, ou d’autres systèmes Windows connectés sur un PC Linux via un réseau, peuvent utiliser **ClamAV**. ClamAV est un moteur antivirus LIBRE conçu pour détecter les virus, les chevaux de Troie, les logiciels malveillants et autres menaces. Il prend en charge plusieurs formats de fichiers (documents, exécutables ou archives) et utilise des fonctionnalités de balayages en traitement multifil(( **Traitement multifil:** Traitement multitâche qui se traduit par l'exécution simultanée des fils d'un même processus, et qui permet d'accélérer l'exécution d'un programme par l'exploitation à d'autres fins du temps d'attente imposé au processeur lors de l'accès aux données.//Notes://- Le traitement multifil est très utilisé, notamment pour le traitement synchronisé de données audio et vidéo.- Lors du traitement multifil, les fils constituant le processus sont exécutés de façon imbriquée de manière à simuler la simultanéité.- À la différence du multitraitement qui fonctionne au niveau de l'application, le traitement multifil fonctionne au niveau des fils du processus. Il a l'avantage de consommer moins de ressources que le traitement simultané de plusieurs processus. Par contre, il implique la synchronisation du partage des ressources et de la mémoire du processeur entre les différents fils qui composent le processus traité. \\ //Référence:// [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8351242|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8351242]]. \\ \\ )) et reçoit les mises à jour de sa base de données de signatures au moins 3 à 4 fois par jour.
===== Installation =====
==== Prérequis ====
Si ce n'est déjà fait, vous devez installer le référentiel stephdl. //Référence:// [[https://wiki.nethserver.org/doku.php?id=stephdl_repository|https://wiki.nethserver.org/doku.php?id=stephdl_repository]].
[root@tchana ~]# yum install -y http://mirror.de-labrusse.fr/NethServer/7/x86_64/nethserver-stephdl-1.0.7-1.ns7.sdl.noarch.rpm
...
Transaction Summary
============================================================================================
Install 1 Package
Total size: 40 k
Installed size: 40 k
...
Installed:
nethserver-stephdl.noarch 0:1.0.7-1.ns7.sdl
Complete!
[root@tchana ~]#
Vérification.
[root@tchana ~]# rpm -qa | grep stephdl
nethserver-stephdl-1.0.7-1.ns7.sdl.noarch
[root@tchana ~]#
==== Installation de ClamAV ====
[root@tchana ~]# yum install -y nethserver-clamscan --enablerepo=stephdl
...
Transaction Summary
============================================================================================
Install 1 Package (+1 Dependent package)
Upgrade ( 6 Dependent packages)
Total download size: 60 k
...
Installed:
nethserver-clamscan.noarch 0:0.1.2-3.ns7.sdl
Dependency Installed:
clamav-scanner-systemd.x86_64 0:0.101.2-1.el7
Complete!
[root@tchana ~]#
===== Mise à jour =====
On peut manuellement mettre à jour la BD des virus.
[root@tchana ~]# freshclam
ClamAV update process started at Fri April 19 15:13:40 2019
main.cvd is up to date (version: 58, sigs: 4566249, f-level: 60, builder: sigmgr)
daily.cld is up to date (version: 25442, sigs: 1564671, f-level: 63, builder: raynman)
bytecode.cvd is up to date (version: 328, sigs: 94, f-level: 63, builder: neo)
[root@tchana ~]#
\\
On rafraîchit l'interface Web pour afficher le nouveau menu.
**Configuration -> Scanner Antivirus ->** onglet **Clamscan**.
☑ //**Activer l'analyse des fichiers système**//\\
On coche cette case.
⦿ //**Effectuer une analyse journalière**//\\
On choisit l'heure de l'analyse.
☑ //**Déplacer les fichiers détectés vers la corbeille**//\\
On coche cette case.
☑ //**Oui, je suis totalement sur**//\\
On coche cette case.
Comme on le voit, la BD des virus est à jour.
**SOUMETTRE**.
|{{ Images_Cahier-101-03-354-a.png?400 }}|
\\
Onglet **Détections**, on prend les défauts.
|{{ Images_Cahier-101-03-360.png?400 }}|
Onglet **Fichiers**, on prend les défauts.
|{{ Images_Cahier-101-03-361.png?400 }}|
Onglet **PUA**, on prend les défauts.
|{{ Images_Cahier-101-03-362.png?400 }}|
\\
À l'onglet **Quarantaine**, on peut récupérer les fichiers qui ont généré une fausse alarme.
|{{ Images_Cahier-101-03-363.png?400 }}|
\\
Onglet **Signatures**, on prend les défauts.
|{{ Images_Cahier-101-03-364.png?400 }}|
===== Lancement manuel d'un balayage =====
À la console du Serveur NethServer, on peut lancer un balayage __en arrière-plan__ en ajoutant **&** à la fin de la commande de démarrage.
[root@tchana ~]# /sbin/e-smith/nethserver-clamscan &
[1] 25238
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ps aux | grep -i nethserver-clamscan
root 25238 0.0 0.2 151384 7848 pts/0 S 16:40 0:00 /usr/bin/perl -w /sbin/e-smith/nethserver-clamscan
root 25695 0.0 0.0 112708 988 pts/0 R+ 16:47 0:00 grep --color=auto -i nethserver-clamscan
[root@tchana ~]#
L'interface Web affiche que le balayage est //**En cours d'exécution**//.
|{{ Images_Cahier-101-03-365.png?400 }}|
Lorsque le balayage sera terminé, le message ci-dessous apparaît à la console du Serveur NethServer.
[root@tchana ~]#
[1]+ Done /sbin/e-smith/nethserver-clamscan
[root@tchana ~]#
On peut examiner le résultat du balayage en allant à: **Configuration -> Scanner Antivirus ->** onglet **Quarantaine**.
\\
{{Images_Cahier-101-03-005.png?25}} Pour la documentation, __en anglais seulement__, voir:\\
[[https://github.com/Cisco-Talos/clamav-faq|https://github.com/Cisco-Talos/clamav-faq]].
|{{ Images_Cahier-101-03-366.png?400 }}|
\\
\\
====== Appendices ======
===== Écran conventionnel de démarrage =====
Si nous voulons voir l'écran conventionnel de démarrage tel que ci-contre, il suffit de supprimer un seul paramètre dans le fichier de configuration de grub:
''/etc/default/grub''
|{{ Images_Cahier-101-03-368.png?400 }}|
|{{ Images_Cahier-101-03-367.png?400 }}|
==== Suppression du paramètre rhgb ====
Ligne originale dans le fichier ''/etc/default/grub''.
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=VolGroup/lv_root rd.lvm.lv=VolGroup/lv_swap nodmraid rhgb quiet"
Après avoir enlevé le paramètre **rhgb**.
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=VolGroup/lv_root rd.lvm.lv=VolGroup/lv_swap nodmraid quiet"
On signale le changement en régénérant le fichier de configuration.
[root@tchana ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-957.5.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.5.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-8ee070fd1a7a4e8daf17a7dae9f85ac1
Found initrd image: /boot/initramfs-0-rescue-8ee070fd1a7a4e8daf17a7dae9f85ac1.img
done
[root@tchana ~]#
{{Images_Cahier-101-03-005.png?25}} Au prochain réamorçage, le nouveau fichier grub sera effectif.
\\
\\
===== Table de mappe de clavier =====
On affiche les différentes mappes de clavier(( **Table de mappe de clavier**: n.f. Disposition des touches d'un clavier.\\
//Référence:// [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=18050861#eng|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=18050861#eng]]. \\ \\ )) "ca" disponibles.
[root@tchana ~]# localectl list-keymaps | grep ca
ca
ca-eng
ca-fr-dvorak
ca-fr-legacy
ca-multi
ca-multix
dvorak-ca-fr
es-cat
ph-capewell-dvorak
ph-capewell-qwerf2k6
[root@tchana ~]#
On active le clavier //**ca-multi**//.
[root@tchana ~]# localectl set-keymap ca-multi
[root@tchana ~]#
On vérifie.
[root@tchana ~]# localectl
System Locale: LANG=fr_FR.UTF-8
VC Keymap: ca-multi
X11 Layout: us
[root@tchana ~]#
===== Fermeture automatique de session (session timeout) =====
//Référence:// [[http://docs.nethserver.org/en/v7/access.html#session-timeouts|http://docs.nethserver.org/en/v7/access.html#session-timeouts]]. \\
Par défaut //(à partir de NethServer 7.5.1804)//, une session de gestion du serveur se termine après **60** minutes d'inactivité //(délai d'inactivité)// et expire 8 heures après la connexion //(durée de vie de la session)//.
La commande ci-dessous définit **2** heures de //délai d'inactivité// et **16** heures de //durée de vie de la session// maximale. Le temps est exprimé en secondes.
[root@tchana ~]# config setprop httpd-admin MaxSessionIdleTime 7200 MaxSessionLifeTime 57600
[root@tchana ~]#
Désactivation des délais.
[root@tchana ~]# config setprop httpd-admin MaxSessionIdleTime '' MaxSessionLifeTime ''
[root@tchana ~]#
{{Images_Cahier-101-03-006.png?25}} Les nouvelles valeurs de délais affecteront les nouvelles sessions. Ils ne changent aucune session active.
===== Fuseau horaire =====
Pour le fuseau horaire, il existe un fichier pour //**Montréal**//.
[root@tchana ~]# ls -ls /usr/share/zoneinfo/America/ -> grep Montreal
4 -rw-r--r-- 3 root root 3477 1 avril 08:27 Montreal
[root@tchana ~]#
==== Changement du fuseau horaire ====
On affiche le fuseau horaire actuel.
[root@tchana ~]# ls -l /etc/localtime
lrwxrwxrwx 1 root root 37 19 mai 23:48 /etc/localtime -> ../usr/share/zoneinfo/America/Toronto
[root@tchana ~]#
On change le fuseau horaire pour celui de //Montréal//.
[root@tchana ~]# timedatectl set-timezone America/Montreal
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -l /etc/localtime
lrwxrwxrwx 1 root root 38 22 mai 14:02 /etc/localtime -> ../usr/share/zoneinfo/America/Montreal
[root@tchana ~]#
Voilà! Le fuseau horaire //Montréal// est récupéré...
===== Certificat Let's Encrypt =====
==== Description ====
Un certificat émis par l'autorité de certification //Let's Encrypt// vous permettra de chiffrer les connexions de votre serveur avec une clé //TLS/SSL// reconnue mondialement. Les utilisateurs pourront utiliser //https//.
//Référence:// [[https://fr.wikipedia.org/wiki/Let's_Encrypt|https://fr.wikipedia.org/wiki/Let's_Encrypt]]. \\
//Let's Encrypt// est une autorité de certification //(CA)// lancée le 3 décembre 2015 //(Bêta Version Publique)//. Cette autorité fournit des certificats gratuits //X.509// pour le protocole cryptographique //TLS// au moyen d'un mécanisme automatisé destiné à se passer du processus complexe actuel impliquant la création manuelle, la validation, la signature, l'installation et le renouvellement des certificats pour la sécurisation des sites Internet.
=== Examen du certificat ===
{{Images_Cahier-101-03-006.png?25}} On examine le certificat émis par //Let's Encrypt// pour notre serveur //dorgee.micronator-101.org// qui est directement branché à l'Internet.
Si la demande de certificat a fonctionnée sans erreur, essayez de vous connecter à la page de l'interface Web du //Serveur NethServer//. Le certificat devrait incorporer tous les noms d'hôtes que vous avez inclus et être valide pour les quatre-vingt-dix prochains jours.
On se connecte à l'interface Web: **https://www.micronator-101.org:980**.
- Le cadenas est __vert__. \\
- On se logue.
|{{ Images_Cahier-101-03-369.png?400 }}|
- On clique le **cadenas**.\\
- On clique l'icône "**>**".
|{{ Images_Cahier-101-03-370.png?400 }}|
\\
**Plus d'informations**.
|{{ Images_Cahier-101-03-371.png?400 }}|
\\
\\
- Onglet **Sécurité**.\\
- Afficher le certificat.
|{{ Images_Cahier-101-03-372.png?400 }}|
- Onglet **Détails**.\\
- //**Émis pour**// //micronator-101.org//\\
- //**Émis par**// //Let's Encrypt Authority X3//\\
- On voit la date de début et de fin.
|{{ Images_Cahier-101-03-373.png?400 }}|
\\
\\
- **Validité -> Pas après**.\\
- Le certificat est valide pour 90 jours.
|{{ Images_Cahier-101-03-374.png?400 }}|
- **Nom alternatif du sujet du certificat**.\\
- Tous nos //CNAME// choisis lors de la demande du certificat sont affichés.\\
- **Fermer** toutes les fenêtres du certificat.\\
|{{ Images_Cahier-101-03-375.png?400 }}|
==== Vérification par Qualsys SSLLabs ====
{{Images_Cahier-101-03-006.png?25}} __Seulement pour un serveur directement branché à l'Internet.__\\
Une fois que vous avez obtenu votre certificat, testez-le en vous rendant chez //Qualsys SSLLabs//, [[https://www.ssllabs.com/ssltest/|https://www.ssllabs.com/ssltest/]].\\
Soumettez le nom //FQDN// de votre domaine pour vérifier que le certificat fonctionne correctement.
//**Hostname:**//\\
**micronator-101.org -> Submit**.
|{{ Images_Cahier-101-03-376.png?400 }}|
- //**Overall Rating**// → A.\\
- //**Certificate**// → 100%.
|{{ Images_Cahier-101-03-377.png?400 }}|
===== Changement du mot de passe de root =====
//Référence:// [[https://www.rootusers.com/how-to-reset-root-user-password-in-centos-rhel-7/|https://www.rootusers.com/how-to-reset-root-user-password-in-centos-rhel-7/]].\\
Réinitialiser le mot de passe de **__root__** est normalement une tâche simple si vous êtes déjà connecté avec les privilèges de **__root__**. Toutefois, si vous oubliez le mot de passe et devez le changer, les choses deviennent un peu plus difficiles.\\
Le processus a changé de la version 6 de //CentOS/RHEL// //(Red Hat Enterprise Linux)// à la version 7. Auparavant, vous démarriez en mode //mono-utilisateur//, puis changiez le mot de passe en tant qu'utilisateur **__root__**. À partir de la version 7, les modes équivalents sont: //mode de secours// et //mode d’urgence//. Cependant, ces modes d'opération nécessitent le mot de passe de **__root__** avant de pouvoir faire quoi que ce soit. Cette section va vous guider dans le nouveau processus pour changer le mot de passe perdu de **__root__**. Cette procédure sera exécutée à la console du système Linux, assurez-vous donc que vous y avez accès avant de commencer.\\
{{Images_Cahier-101-03-003.png?22}} Comme pour toutes les tâches de maintenance du système, assurez-vous de disposer d'une sauvegarde/instantané du système avant de poursuivre.
Si votre système Linux est en cours d'exécution, redémarrez-le. S'il ne roule pas, démarrez-le.
Pour //CentOS 7//, le menu de démarrage vous laissera 5 secondes pour sélectionner le noyau du système d’exploitation à démarrer. Ces 5 secondes sont importantes, car elles permettent aux administrateurs de sélectionner différents noyaux ou d’éditer les paramètres du noyau existant avant le démarrage.
Dans le menu de démarrage, appuyez sur e pour modifier le noyau existant tel qu'indiqué ci-dessous.
{{ Images_Cahier-101-03-378.png?800 }}
\\
Dans les options de ''grub'', recherchez la ligne qui commence par ''linux16'' et allez à la fin. Entrez ''rd.break'' à la fin de cette ligne tel qu'indiqué ci-dessous.
rd.break
{{ Images_Cahier-101-03-379.png?800 }}
\\
Appuyez sur **[Ctrl]** + **[x]** pour démarrer avec ces options qui vous amèneront à l'invite //initramfs// avec un //shell root//.
{{ Images_Cahier-101-03-380.png?800 }}
\\
À ce stade, le système de fichiers racine est monté en mode lecture seule //(ro)// dans le répertoire ''/sysroot'' et doit être remonté avec les autorisations de lecture/écriture //(rw)// pour que nous puissions réellement apporter certaines modifications. Ceci est réalisé avec la commande ''mount -o remount,rw /sysroot''.
switch_root:/# mount -o remount,rw /sysroot
switch_root:/#
{{ Images_Cahier-101-03-381.png?800 }}
\\
Une fois le système de fichiers remonté, changez-le en une //prison chroot// afin que le répertoire ''/sysroot'' soit utilisé comme racine du système de fichiers. Ceci est nécessaire pour que toutes les commandes que nous exécuterons se rapportent à ''/sysroot''. La commande à lancer est ''chroot /sysroot''.
switch_root:/# chroot /sysroot
sh-4.2#
{{ Images_Cahier-101-03-382.png?800 }}
\\
À partir d'ici, le mot de passe de **__root__** peut être réinitialisé à l’aide de la commande ''passwd''.
sh-4.2# passwd
Changing password for user root.
New password: Nouveau-mot-de-passe-de-root
Retype new passwd: Nouveau-mot-de-passe-de-root
passwd: all authentification tokens updated successfully.
sh-4.2#
{{ Images_Cahier-101-03-383.png?800 }}
\\
Si vous n'utilisiez pas SELinux, vous pourriez redémarrer à ce stade et tout irait bien. Cependant, par défaut, //CentOS/RHEL-7// active SELinux. Nous devons donc corriger le contexte du fichier ''/etc/shadow''. En effet, lorsque la commande ''passwd'' est exécutée, elle crée un nouveau fichier ''/etc/shadow''. SELinux n'étant pas en cours d'exécution dans ce mode, le fichier est créé sans aucun contexte SELinux, ce qui peut entraîner des problèmes lors du redémarrage.
On crée le fichier ''/.autorelabel'' à l’aide de ''touch''.
sh-4.2# touch /.autorelabel
sh-4.2#
{{Images_Cahier-101-03-006.png?25}} La création de ce fichier effectuera automatiquement un ré-étiquetage de tous les fichiers au prochain démarrage. Notez que cela peut prendre un certain temps en fonction de la quantité de fichiers que vous avez. Peut prendre environ **2** minutes pour un serveur //CentOS-7// ordinaire.
On quitte l'environnement //chroot//.
sh-4.2# exit
exit
sh-4.2#
On quitte le shell racine ''initramfs'' //(peut prendre un certain temps, être patient...)//. Le serveur s'amorce.
sh-4.2# exit
logout
...
==== Vérification ====
__À la console du serveur__, vous devriez pouvoir vous connecter et utiliser le système avec le nouveau mot de passe que vous avez créé.
===== ERROR Failed to send host log message =====
Cette erreur s'affiche seulement lors de l'amorçage d'un serveur roulant sous //VirtualBox//.
{{ Images_Cahier-101-03-384.png?800 }}
\\
- On arrête le //Serveur NethServer//.\\
- À l'écran //VirtualBox//, on sélectionne la machine **-> État actuel -> Configuration**.
|{{ Images_Cahier-101-03-385.png?400 }}|
\\
Au retour, on amorce le //Serveur NethServer// et le message ne s'affichera plus.
\\
**Affichage ->** onglet **Écran -> Contrôleur graphique ->** on change pour **VboxVGA -> OK**.
|{{ Images_Cahier-101-03-386.png?400 }}|
===== Martian source =====
Si dans le fichier journal ''/var/log/messages'', vous voyez plusieurs lignes telles que ci-dessous, c'est que l'//IP// de la passerelle du réseau vert de la carte //enp0s3// ou les //Serveurs DNS// ne sont corrects.
...IPv4: martian source 192.168.1.1...
...IPv4: martian source 192.168.1.1...
...IPv4: martian source 192.168.1.1...
=== Passerelle du réseau de la carte enp0s3 ===
On trouve notre passerelle en lançant un ''traceroute'' vers google.com.
[root@dorgee ~]# traceroute google.com
traceroute to google.com (172.217.165.14), 30 hops max, 60 byte packets
1 lo0-0-lns03-tor.teksavvy.com (206.248.155.139) 10.367 ms 11.449 ms 11.487 ms
2 ae0-2150-bdr01-tor.teksavvy.com (69.196.136.172) 11.523 ms 11.793 ms 11.826 ms
3 72.14.212.134 (72.14.212.134) 11.868 ms 12.430 ms 12.306 ms
4 74.125.244.161 (74.125.244.161) 12.736 ms 74.125.244.145 (74.125.244.145) 14.002 ms 74.125.244.161 (74.125.244.161) 13.174 ms
5 216.239.40.255 (216.239.40.255) 13.577 ms 13.923 ms 216.239.41.175 (216.239.41.175) 13.923 ms
6 yyz12s06-in-f14.1e100.net (172.217.165.14) 13.020 ms 12.009 ms 11.291 ms
[root@dorgee ~]#
L'adresse IP de la ligne #1 est //206.248.155.139// et elle est donc la passerelle utilisée par notre connexion.
\\
**Configuration -> Réseau -> Périphérique enp0s3 → Éditer**.
On change l'//IP// de la passerelle pour l'//IP// du rôle __LAN (vert)__ / __enp0s3__ -> **206.248.155.139**.
**SOUMETTRE**.
|{{ Images_Cahier-101-03-395.png?400 }}|
==== Serveurs DNS ====
//Référence:// [[https://korben.info/1-1-1-1-ou-9-9-9-9-ou-8-8-8-8-quel-dns-choisir.html|https://korben.info/1-1-1-1-ou-9-9-9-9-ou-8-8-8-8-quel-dns-choisir.html]].\\
... Le //DNS// de //Cloudflare// est un excellent //DNS//, car il est le plus rapide, mais aussi parce qu'ils ont pris les devants et s'engagent à ne pas revendre les données, et ne conservent pas les logs au-delà de 24h...\\
Le principal avantage bien sûr, c'est que contrairement au //DNS// de Google qui permet de mieux vous profiler pour vous balancer de la pub, on sait que //Cloudflare// ne trempe pas là dedans. Cela reste une boîte américaine, donc c'est évidemment à prendre avec toutes les précautions d'usage...
//Référence:// pour //8.8.8.8// - [[https://www.dnsperf.com/dns-resolver/google|https://www.dnsperf.com/dns-resolver/google]].
//Autre référence:// comparaison mondiale des performances de différents //DNS//: [[https://medium.com/@nykolas.z/dns-resolvers-performance-compared-cloudflare-x-google-x-quad9-x-opendns-149e803734e5|https://medium.com/@nykolas.z/dns-resolvers-performance-compared-cloudflare-x-google-x-quad9-x-opendns-149e803734e5]].
//Référence:// pour ci-dessous //1.1.1.1// - [[https://www.dnsperf.com/#!dns-resolvers|https://www.dnsperf.com/#!dns-resolvers]].
|{{ Images_Cahier-101-03-396.png?400 }}|
|{{ Images_Cahier-101-03-397.png?400 }}|
**Configuration -> Réseau -> Serveurs DNS**.
On ajuste les //**DNS Primaire**// et //**Secondaire**//.
{{Images_Cahier-101-03-005.png?25}} Le serveur //**DNS primaire**// **1.1.1.1** est le plus rapide et le plus utilisée de tout l'Internet.
Le serveur //**DNS secondaire**// **206.248.182.3** est le défaut de notre FAI.
**Soumettre**.
|{{ Images_Cahier-101-03-398.png?400 }}|
Si votre //FAI// filtre l'adresse //1.1.1.1//, prendre //8.8.8.8// ou une de celles citées dans la référence [[https://medium.com/@nykolas.z/dns-resolvers-performance-compared-cloudflare-x-google-x-quad9-x-opendns-149e803734e5|https://medium.com/@nykolas.z/dns-resolvers-performance-compared-cloudflare-x-google-x-quad9-x-opendns-149e803734e5]].
\\
\\
{{NS-101_002_Banniere_Victoire.png?50}} Victoire totale, hissons la bannière de la victoire.
\\
----
====== Crédits ======
© 2018-2019 RF-232\\
Auteur: Michel-André CLP.\\
Remerciement: Tous les contributeurs GNU/GPL.\\
Intégré par: Michel-André Robillard CLP.\\
Contact: michelandre at micronator.org
Répertoire de ce document: E:\000_DocPourRF232_general\RF-232_NethServer\RF-232_Cours_NethServer-101_Cahier-11_BackupPC_2019-08-04_19h53.odt
Historique des modifications:
^Version^Date^Commentaire^Auteur|
|0.0.1|2018-03-05|Début.|Michel-André|
|0.0.2|2018-05-14|- Désactivation des sauvegardes pour tous les gabarits des machines, en changeant pour BackupsDisable=1 sous l'onglet Horaire, car pourrait débuter une sauvegarde avant que la configuration des nouvelles machines soit totalement terminée.\\ - Mise à jour de la restauration vers Destination.\\ - Ajout de la vérification des cartes réseau pour le serveur de Destination.|Michel-André|
|0.0.3|2018-08-07|Coquilles dans "Création d'une machine pour le serveur hôte"|Michel-André|
|0.1.0|2018-09-18|Révision complète.|Michel-André|
|0.2.0|2019-03-16|Adaptation pour NethServer-7.6.1810.|Michel-André|
|0.2.1|2019-04-23|Corrections mineures.|Michel-André|
|0.3.0|2019-08-01|Ajustements pour DokuWiki.|Michel-André|
|12345678901| | |12345678901|
===== AVIS DE NON-RESPONSABILITÉ =====
Ce document est uniquement destiné à informer. Les informations, ainsi que les contenus et fonctionnalités de ce document sont fournis sans engagement et peuvent être modifiés à tout moment. RF‑232 n'offre aucune garantie quant à l'actualité, la conformité, l'exhaustivité, la qualité et la durabilité des informations, contenus et fonctionnalités de ce document. L'accès et l'utilisation de ce document se font sous la seule responsabilité du lecteur ou de l'utilisateur.
RF‑232 ne peut être tenu pour responsable de dommages de quelque nature que ce soit, y compris des dommages directs ou indirects, ainsi que des dommages consécutifs résultant de l'accès ou de l'utilisation de ce document ou de son contenu.
Chaque internaute doit prendre toutes les mesures appropriées //(mettre à jour régulièrement son logiciel antivirus, ne pas ouvrir des documents suspects de source douteuse ou non connue)// de façon à protéger le contenu de son ordinateur de la contamination d'éventuels virus circulant sur la Toile.
Toute reproduction interdite
Vous reconnaissez et acceptez que tout le contenu de ce document, incluant mais sans s’y limiter, le texte et les images, sont protégés par le droit d’auteur, les marques de commerce, les marques de service, les brevets, les secrets industriels et les autres droits de propriété intellectuelle. Sauf autorisation expresse de RF-232, vous acceptez de ne pas vendre, délivrer une licence, louer, modifier, distribuer, copier, reproduire, transmettre, afficher publiquement, exécuter en public, publier, adapter, éditer ou créer d’oeuvres dérivées de ce document et de son contenu.
==== Avertissement====
Bien que nous utilisions ici un vocabulaire issu des techniques informatiques, nous ne prétendons nullement à la précision technique de tous nos propos dans ce domaine.
\\
\\