On rend le script exécutable par **__root__** seulement.
[root@tchana ~]# chmod 700 /root/dir.sh
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -als dir.sh
4 -rwx------ 1 root root 302 28 nov. 18:10 dir.sh
[root@tchana ~]#
On lance la commande d'ajustement des //propriétaire:groupe//.
[root@tchana ~]# /root/dir.sh
[root@tchana ~]#
On vérifie le résultat.
[root@tchana ~]# ls -als /var/lib/nethserver/home/
total 0
0 drwxr-xr-x. 6 root root 62 28 nov. 18:11 .
0 drwxr-xr-x. 12 root root 155 19 avril 2019 ..
0 drwx------ 2 admin@micronator-dev.org domain users@micronator-dev.org 83 28 nov. 18:06 admin
0 drwx------ 2 michelandre@micronator-dev.org domain users@micronator-dev.org 83 16 nov. 13:54 michelandre
0 drwx------ 2 titi@micronator-dev.org domain users@micronator-dev.org 83 17 oct. 11:32 titi
0 drwx------ 2 toto@micronator-dev.org domain users@micronator-dev.org 83 17 oct. 11:32 toto
[root@tchana ~]#
=== Substitution à l'utilisateur toto ===
Si ce n'est déjà fait, on édite l'utilisateur **__toto__** afin de lui permettre de se connecter à l'aide de //PuTTY//.
Dans l'interface Web de //NethServer//: **Gestion -> Utilisateurs et groupes ->** onglet **Utilisateurs ->** à la droite de la ligne de l'utilisateur **__toto__**, on clique **Éditer**.
On décoche **//Activer l'expiration de mot de passe//**.
On coche **//Remote Shell (SSH)//**.
**SOUMETTRE**.
|{{ Images_Cahier-301-02-039.png?700 }}|
On se substitue à l'utilisateur **__toto__** pour voir si tout se passera bien
[root@tchana ~]# su - toto
[toto@micronator-dev.org@tchana ~]$
Aucune erreur.
On affiche dans quel répertoire se trouve l'utilisateur **__toto__**.
[toto@micronator-dev.org@tchana ~]$ pwd
/var/lib/nethserver/home/toto
[toto@micronator-dev.org@tchana ~]$
L'utilisateur **__toto__** est correctement situé dans son répertoire personnel.
On affiche le contenu de son répertoire personnel.
[toto@micronator-dev.org@tchana ~]$ ls -als
total 16
0 drwx------ 2 toto@micronator-dev.org domain users@micronator-dev.org 83 17 oct. 11:32 .
0 drwxr-xr-x. 6 root root 62 28 nov. 18:11 ..
4 -rw------- 1 toto@micronator-dev.org domain users@micronator-dev.org 245 28 nov. 17:15 .bash_history
4 -rw------- 1 toto@micronator-dev.org domain users@micronator-dev.org 18 17 oct. 11:32 .bash_logout
4 -rw------- 1 toto@micronator-dev.org domain users@micronator-dev.org 193 17 oct. 11:32 .bash_profile
4 -rw------- 1 toto@micronator-dev.org domain users@micronator-dev.org 231 17 oct. 11:32 .bashrc
[toto@micronator-dev.org@tchana ~]$
Il peut voir tout le contenu de son répertoire personnel. Tous ses anciens fichiers sont là.
On retourne à l'utilisateur **__root__**.
[toto@micronator-dev.org@tchana ~]$ exit
déconnexion
[root@tchana ~]#
Aucune erreur, tout s'est bien passé.
\\
\\
===== Serveur DNS attribué par DHCP =====
{{Images_Cahier-101-03-006.png?25}} L'ajout d'//AD// comme fournisseur des comptes signifie que la page //DNS// du //Serveur NethServer// NE SERA PAS UTILISÉE!\\
{{Images_Cahier-101-03-003.png?22}} L'adresse //IP// du serveur //DNS// que nous allons distribuer aux clients DOIT ÊTRE celle du conteneur //AD//, c.-à-d. 10.10.10.76: l'adresse //IP// donnée à la section **
[[nethserver_301_cahier_02_active_directoty#Installation d'Active Directory comme fournisseur des comptes|Installation d'Active Directory comme fournisseur des comptes]]
**.
==== Ajustement du serveur DHCP ====
**Configuration -> DHCP ->** onglet **Serveur DHCP**.
On ajuste les paramètres du serveur //DHCP// pour que celui-ci fournisse la bonne adresse //IP// des serveurs //DNS / Wins//.
**SOUMETTRE**.
|{{ Images_Cahier-301-02-040.png?700 }}|
\\
===== Configuration de la carte réseau de la station =====
On s'assure de la bonne configuration de la carte réseau de la station à //joindre à Active Directory//.
- Clac sur l'**icône réseau**.\\
- **Ouvrir le Centre Réseau et partage**.
|{{ Images_Cahier-301-02-041.png?400 }}|
\\
**Modifier les paramètres de la carte**.
|{{ Images_Cahier-301-02-042.png?400 }}|
Double-cliquer sur l'**icône de la carte réseau**.
|{{ Images_Cahier-301-02-043.png?400 }}|
\\
\\
**Détails...**
|{{ Images_Cahier-301-02-044.png?400 }}|
- On s'assure de la bonne configuration de la carte.\\
- **Fermer**.
|{{ Images_Cahier-301-02-045.png?400 }}|
\\
\\
**Fermer** toutes les fenêtres.
|{{ Images_Cahier-301-02-046.png?400 }}|
\\
===== Quelques paramètres du fournisseur des comptes AD =====
[root@tchana ~]# account-provider-test dump
{
"BindDN" : "ldapservice@AD.MICRONATOR-DEV.ORG",
"LdapURI" : "ldaps://nsdc-tchana.ad.micronator-dev.org",
"DiscoverDcType" : "ldapuri",
"StartTls" : "",
"port" : 636,
"host" : "nsdc-tchana.ad.micronator-dev.org",
"isAD" : "1",
"isLdap" : "",
"UserDN" : "dc=ad,dc=micronator-dev,dc=org",
"GroupDN" : "dc=ad,dc=micronator-dev,dc=org",
"BindPassword" : "OwSvR7Cg_9XbT28w",
"BaseDN" : "dc=ad,dc=micronator-dev,dc=org",
"LdapUriDn" : "ldap:///dc%3Dad%2Cdc%3Dmicronator-dev%2Cdc%3Dorg"
}
[root@tchana ~]#
\\
===== Instantané VirtualBox =====
{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un instantané de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
\\
===== Ajustement de Self Service Password pour AD =====
{{Images_Cahier-101-03-006.png?25}} Nous ajustons //Self Service Password// pour qu'il fonctionne sous //Active Directory// en se référant au **
[[nethserver_301_cahier_03_self_service_password_active_directory|Cahier-03:]]
** //Self Service Password & Active Directory// du "Cours NethServe-301".
\\
===== Instantané VirtualBox =====
{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un instantané de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
\\
\\
====== Changement des mots de passe ======
===== Prérequis =====
{{Images_Cahier-101-03-006.png?25}} Si ce n'est déjà fait, il faut maintenant ajuster la configuration de //Self Service Password// pour l'adapter à //Active Directory//.\\
Veillez consulter le
**
[[nethserver_301_cahier_03_self_service_password_active_directory|Cahier-03:]]
** //Self Service Password & Active Directory// du "Cours NethServe-301" et plus particulièrement, les manipulations du chapitre //Self Service Password & Active Directory//.
\\
===== Téléversement du fichier d'exportation =====
On doit copier le fichier ''/root/exportation.ldif'', créé en format //LDIF// au paragraphe **
[[nethserver_301_cahier_02_active_directoty#Fichier d'exportation LDIF créé par le script|Fichier d'exportation LDIF créé par le script]]
**, contenant les Question/Réponse des utilisateurs dans le répertoire: ''/var/lib/machines/nsdc/var/lib/samba/private/''.
On copie le fichier ''/root/exportation.ldif'' tout en le renommant ''file.ldif''.
[root@tchana ~]# cp /root/exportation.ldif /var/lib/machines/nsdc/var/lib/samba/private/file.ldif
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -ls /var/lib/machines/nsdc/var/lib/samba/private/file.ldif
4 -rw-r--r-- 1 root root 337 1 déc. 10:08 exportation.ldif
[root@tchana ~]#
\\
===== Importation =====
//Référence:// [[https://wiki.nethserver.org/doku.php?id=howto:useful_commands#modify_the_samba4_ad_settings|https://wiki.nethserver.org/doku.php?id=howto:useful_commands#modify_the_samba4_ad_settings]]
On importe les Question/Réponse.
[root@tchana ~]# /usr/bin/systemd-run -M nsdc \
-q \
-t /usr/bin/ldbmodify \
-H /var/lib/samba/private/sam.ldb \
/var/lib/samba/private/file.ldif
Modified 3 records successfully
[root@tchana ~]#
Les Question/Réponse de nos trois utilisateurs ont été importés dans //Active Directory//.
\\
===== Suppression du fichier file.ldif =====
{{Images_Cahier-101-03-008.png?25}} Pour la sécurité, on supprime le fichier ''file.ldif'', car il n'est plus utile.
[root@tchana ~]# rm -rf /var/lib/machines/nsdc/var/lib/samba/private/file.ldif
[root@tchana ~]#
On vérifie.
[root@tchana ~]# ls -als /var/lib/machines/nsdc/var/lib/samba/private/file.ldif
ls: impossible d'accéder à /var/lib/machines/nsdc/var/lib/samba/private/file.ldif: Aucun fichier ou dossier de ce type
[root@tchana ~]#
\\
===== Changement du mot de passe par question =====
==== Exemple avec l'utilisateur toto ====
Vu que l'utilisateur **__toto__** ne connaît pas le nouveau mot de passe qu'//Active Directory// lui a octroyé, il doit utiliser la méthode de changement de mot de passe par réponse à sa question préalablement choisie. Il se rend donc à la page https://www.micronator-dev.org/ssp et clique **Question** afin de pouvoir changer son mot de passe.
- L'utilisateur **__toto__** entre son identifiant,\\
- choisit sa question,\\
- entre sa réponse, \\
- entre son nouveau mot de passe,\\
- le confirme,\\
- répond au //reCaptcha//\\
- et clique **Envoyer**.
|{{ Images_Cahier-301-02-047.png?600 }}|
\\
\\
\\
\\
\\
\\
L'opération a réussi.
|{{ Images_Cahier-301-02-048.png?500 }}|
Pour vérifier son nouveau mot de passe, l'utilisateur **__toto__** se connecte à //Webmail// en allant à: https://www.micronator-dev.org/webmail.
L'utilisateur **__toto__** entre sont identifiant et son nouveau mot de passe **-> Connexion**.
|{{ Images_Cahier-301-02-049.png?500 }}|
Le nouveau mot de passe de l'utilisateur **__toto__** a bien été changé et il est fonctionnel.
|{{ Images_Cahier-301-02-050.png?500 }}|
==== Autres utilisateurs ====
Tous les autres utilisateurs exécutent les mêmes manipulations que celles utilisées par **''toto''** pour changer leur mot de passe.
\\
Active Directory et le gestionnaire des mots de passeSelf Service Password fonctionnent correctement.
\\
====== Certificat Let's Encrypt ======
===== Description =====
Il nous faut ajuster le certificat //Let's Encrypt// afin d'y inclure le nom et les //CNAME// de notre domaine //Active Directory//.
===== Ajout de CNAME chez le régistraire du domaine =====
Affichage des **CNAME** + **FQDN** de notre domaine. Le nom **tchana** est celui de notre //Serveur NethServer//.
[root@tchana ~]# account-provider-test dump
{
"BindDN" : "ldapservice@AD.MICRONATOR-DEV.ORG",
"LdapURI" : "ldaps://nsdc-tchana.ad.micronator-dev.org",
"DiscoverDcType" : "ldapuri",
"StartTls" : "",
"port" : 636,
"host" : "nsdc-tchana.ad.micronator-dev.org",
"isAD" : "1",
"isLdap" : "",
"UserDN" : "dc=ad,dc=micronator-dev,dc=org",
"GroupDN" : "dc=ad,dc=micronator-dev,dc=org",
"BindPassword" : "OwSvR7Cg_9XbT28w",
"BaseDN" : "dc=ad,dc=micronator-dev,dc=org",
"LdapUriDn" : "ldap:///dc%3Dad%2Cdc%3Dmicronator-dev%2Cdc%3Dorg"
}
[root@tchana ~]#
{{Images_Cahier-101-03-006.png?25}} Pour un serveur directement branché à l'Internet, il faut ajouter les trois enregistrements //CNAME//: **__ad__**, **__nscd-tchana.ad__** et **__adserver.ad__** chez le régistraire de notre nom de domaine.\\
{{Images_icone-201-003_Note.png?25}} Ici, nous utilisons [[http://cloudflare.com/|cloudflare.com]] comme notre régistraire de domaine.
**ad**
{{ Images_Cahier-301-02-051.png?700 }}
**nscd-tchana.ad**
{{ Images_Cahier-301-02-052.png?700 }}
**adserver.ad**
{{ Images_Cahier-301-02-053.png?700 }}
**Résultat final**
{{ Images_Cahier-301-02-054.png?700 }}
\\
Pour plus de détails, voir le chapitre **
[[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver#Régistraire de domaines|Régistraire de domaines]]
** dans le **Cahier-05:** //VDSL, FQDN, Internet et NethServer// du "Cours NethServer-101".
Voir aussi le chapitre **
[[nethserver_101_cahier_04_local_certificat_let_encrypt#Certificat pour un domaine LOCAL|Certificat pour un domaine LOCAL]]
** dans le **Cahier-04:** //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
\\
===== Serveur sur un réseau LOCAL =====
Voir le chapitre **
[[nethserver_101_cahier_04_local_certificat_let_encrypt#Certificat pour un domaine LOCAL|Certificat pour un domaine LOCAL]]
** dans le **Cahier-04:** //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
Pour la demande du certificat //Let's Encrypt//. il faut ajouter les trois enregistrements //CNAME//: **__ad__**, **__nscd.tchana.ad__** et **__adserver.ad__**.
==== Certificat de test (--test) ====
[root@tchana ~]# /root/.acme.sh/acme.sh \
--issue \
--dns dns_cf \
-d micronator-dev.org \
-d www.micronator-dev.org \
-d mail.micronator-dev.org \
-d wpad.micronator-dev.org \
-d ad.micronator-dev.org \
-d nscd-tchana.ad.micronator-dev.org \
-d adserver.ad.micronator-dev.org \
--cert-file /etc/pki/tls/certs/cert.pem \
--ca-file /etc/pki/tls/certs/chain.pem \
--key-file /etc/pki/tls/private/privkey.pem \
--reloadcmd "/sbin/e-smith/signal-event certificate-update" \
--test
...
[sam. déc. 7 12:02:55 EST 2019] Your cert is in /root/.acme.sh/micronator-dev.org/micronator-dev.org.cer
[sam. déc. 7 12:02:55 EST 2019] Your cert key is in /root/.acme.sh/micronator-dev.org/micronator-dev.org.key
[sam. déc. 7 12:02:55 EST 2019] The intermediate CA cert is in /root/.acme.sh/micronator-dev.org/ca.cer
[sam. déc. 7 12:02:55 EST 2019] And the full chain certs is there: /root/.acme.sh/micronator-dev.org/fullchain.cer
[sam. déc. 7 12:02:55 EST 2019] Installing cert to:/etc/pki/tls/certs/cert.pem
[sam. déc. 7 12:02:55 EST 2019] Installing CA to:/etc/pki/tls/certs/chain.pem
[sam. déc. 7 12:02:55 EST 2019] Installing key to:/etc/pki/tls/private/privkey.pem
[sam. déc. 7 12:02:55 EST 2019] Run reload cmd: /sbin/e-smith/signal-event certificate-update
[sam. déc. 7 12:02:59 EST 2019] Reload success
[root@tchana ~]#
==== Certificat officiel ====
La demande d'un certificat de //test// est réussie, on peut demander un certificat //officiel//.\\
{{Images_Cahier-101-03-006.png?25}} Vu que le certificat de //test// est valide pour une période de __90 jours__, on remplace le paramètre ''--test'' par ''--force'' afin de "forcer" le renouvellement.
[root@tchana ~]# /root/.acme.sh/acme.sh \
--issue \
--dns dns_cf \
-d micronator-dev.org \
-d www.micronator-dev.org \
-d mail.micronator-dev.org \
-d wpad.micronator-dev.org \
-d ad.micronator-dev.org \
-d nscd-tchana.ad.micronator-dev.org \
-d adserver.ad.micronator-dev.org \
--cert-file /etc/pki/tls/certs/cert.pem \
--ca-file /etc/pki/tls/certs/chain.pem \
--key-file /etc/pki/tls/private/privkey.pem \
--reloadcmd "/sbin/e-smith/signal-event certificate-update" \
--force
...
[sam. déc. 7 12:17:12 EST 2019] Your cert is in /root/.acme.sh/micronator-dev.org/micronator-dev.org.cer
[sam. déc. 7 12:17:12 EST 2019] Your cert key is in /root/.acme.sh/micronator-dev.org/micronator-dev.org.key
[sam. déc. 7 12:17:12 EST 2019] The intermediate CA cert is in /root/.acme.sh/micronator-dev.org/ca.cer
[sam. déc. 7 12:17:12 EST 2019] And the full chain certs is there: /root/.acme.sh/micronator-dev.org/fullchain.cer
[sam. déc. 7 12:17:12 EST 2019] Installing cert to:/etc/pki/tls/certs/cert.pem
[sam. déc. 7 12:17:12 EST 2019] Installing CA to:/etc/pki/tls/certs/chain.pem
[sam. déc. 7 12:17:12 EST 2019] Installing key to:/etc/pki/tls/private/privkey.pem
[sam. déc. 7 12:17:12 EST 2019] Run reload cmd: /sbin/e-smith/signal-event certificate-update
[sam. déc. 7 12:17:15 EST 2019] Reload success
[root@tchana ~]#
==== Vérification ====
=== À la console du serveur ===
Certificat publique.
[root@tchana ~]# ls -als /etc/pki/tls/certs/cert.pem
4 -rw-r--r-- 1 root root 2143 7 déc. 12:17 /etc/pki/tls/certs/cert.pem
[root@tchana ~]#
Chaîne de certification.
[root@tchana ~]# ls -als /etc/pki/tls/certs/chain.pem
4 -rw-r--r-- 1 root root 1648 7 déc. 12:17 /etc/pki/tls/certs/chain.pem
[root@tchana ~]#
Clé privée.
[root@tchana ~]# ls -als /etc/pki/tls/private/privkey.pem
4 -rw------- 1 root root 1679 7 déc. 12:17 /etc/pki/tls/private/privkey.pem
[root@tchana ~]#
=== Avec un navigateur ===
On se rend à https://www.micronator-dev.org.
Il n'est pas nécessaire d'ajouter une exception pour le certificat car, il a été émis par une autorité de certification reconnue. Le cadenas est vert.
On clique le **cadenas** pour afficher les informations de la connexion puis, on clique l'icône >.
|{{ Images_Cahier-301-02-055.png?500 }}|
\\
**Plus d'informations**.
|{{ Images_Cahier-301-02-056.png?500 }}|
Afficher le certificat.
|{{ Images_Cahier-301-02-057.png?500 }}|
Tous nos //CNAME// sont présents.
|{{ Images_Cahier-301-02-058.png?500 }}|
\\
===== Renouvellement =====
À chaque jour, une tâche //cron// vérifie le nombre de jours restant pour la validité.
[root@tchana ~]# crontab -l
56 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
[root@tchana ~]#
{{Images_icone-201-003_Note.png?25}} Le renouvellement se fera automatiquement lorsqu'il ne restera que __30__ jours de validité.
Le certificat Let's Encrypt fonctionne correctement pour notre Serveur NethServer LOCAL.
\\
\\
===== Serveur branché directement à l'Internet =====
==== Répertoire well-known ====
//Référence:// [[https://dev-notes.eu/2017/01/apache-directives-in-config-vs-htaccess/|https://dev-notes.eu/2017/01/apache-directives-in-config-vs-htaccess/]]\\
Référence: [[http://httpd.apache.org/docs/current/howto/htaccess.html#page-header|http://httpd.apache.org/docs/current/howto/htaccess.html#page-header]].
* Pour un serveur branché directement à l'Internet, lors d'une demande d'un certificat à //Let's Encrypt//, ce dernier doit pouvoir accéder au répertoire ''.well-known'' et à son sous-répertoire ''acme-challenge''.
* On peut faire la demande de certificat à la page de l'interface Web: **Configuration -> Certificat du serveur ->** on déroule le menu et on choisit **Requête de certificat Let's Encrypt**.
* Pour plus de détails, voir le **
[[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver|Cahier-05:]]
** //NethServer-101, Cahier-05: VDSL, FQDN, Internet et NethServer// du Cours "NethServer-101".
Pour ce genre de serveur, nous devons créer un fichier ''/etc/httpd/conf.d/z_well-known.conf'' pour indiquer à //Apache// de rendre accessibles le répertoire ''.well-known'' et son sous-répertoire ''acme-challenge''.
=== Création du fichier z_well-known.conf ===
{{Images_Cahier-101-03-006.png?25}} Prendre tout le contenu de l'encadré pour la commande.
cat > /etc/httpd/conf.d/z_well-known.conf <<'EOT'
Alias "/.well-known/acme-challenge/" "/var/www/html/.well-known/acme-challenge/"
Require all granted
Options -Indexes +FollowSymLinks
AllowOverride All
EOT
On vérifie.
[root@tchana ~]# ls -als /etc/httpd/conf.d/z_well-known.conf
4 -rw-r--r-- 1 root root 231 7 déc. 13:46 /etc/httpd/conf.d/z_well-known.conf
[root@tchana ~]#
On affiche le contenu du fichier.
[root@tchana ~]# cat /etc/httpd/conf.d/z_well-known.conf
Alias "/.well-known/acme-challenge/" "/var/www/html/.well-known/acme-challenge/"
Require all granted
Options -Indexes +FollowSymLinks
AllowOverride All
[root@tchana ~]#
{{Images_Cahier-101-03-006.png?25}} Il n'y a pas de ligne vide au dessus de ''Alias...'' Ci-dessus, Nous en avons inséré une afin de faciliter la copie de la commande.
=== Sauvegarde du fichier ===
On vérifie si le nom du fichier ''/etc/httpd/conf/z_well-known.conf'' est déjà inclus 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/httpd/conf/z_well-known.conf"
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 z_well-known.conf
/etc/httpd/conf/z_well-known.conf
[root@tchana ~]#
Ci-dessus, il n'y a pas de ligne vide avant ''/etc/httpd/conf/z_well-known.conf''. Nous en avons inséré une afin de faciliter la copie de la commande.
=== Redémarrage du démon httpd ===
On redémarre le démon //Apache// afin qu'il relise ses fichiers de configuration.
[root@tchana ~]# systemctl restart httpd
[root@tchana ~]#
==== Demande d'un nouveau certificat Let's Encrypt ====
{{Images_Cahier-101-03-006.png?25}} Seulement pour un //Serveur NethServer// branché directement à l'Internet.\\
{{Images_Cahier-101-03-006.png?25}} Le certificat sera émis pour le nom du premier //FQDN// entré.
**Configuration -> Certificat du serveur ->** on déroule le menu **-> Requête de certificat Let's Encrypt**.
|{{ Images_Cahier-301-02-059.png?500 }}|
- On entre notre adresse courriel.\\
- On entre tous nos //CNAME// + //FQDN//.\\
- **REQUÊTE DE CERTIFICAT LET'S ENCRYPT**.
|{{ Images_Cahier-301-02-060.png?500 }}|
==== Certificat par défaut ====
{{Images_Cahier-101-03-006.png?25}} Les captures d'écran ci-dessous ont été prise d'un autre //Serveur NethServer//, mais elles reflètent exactement la marche à suivre pour définir le certificat émis par //Let's Encrypt// comme certificat par défaut.
{{Images_icone-201-003_Note.png?25}} On désigne le nouveau certificat émis par //Let's Encrypt// en tant que celui qui sera utilisé par défaut, car c'est le certificat standard auto-signé qui l'est encore comme le démontre le crochet de la colonne **//Défaut//** de la capture d'écran ci-dessous.
- On déroule le menu à l'extrême droite de la ligne du certificat //Let's Encrypt//.\\
- **Set as default**.
|{{ Images_Cahier-301-02-061.png?700 }}|
\\
**CONFIRM**.
|{{ Images_Cahier-301-02-062.png?400 }}|
{{Images_Cahier-101-03-006.png?25}} C'est le certificat //Let's Encrypt// qui sera maintenant utilisé par défaut.
{{ Images_Cahier-301-02-063.png?700 }}
{{Images_icone-201-003_Note.png?25}} Pour plus de détails, voir le chapitre **
[[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver#Certificat Let's Encrypt|Certificat Let's Encrypt]]
** dans le **Cahier-05:** //VDSL, FQDN, Internet et NethServer// du "Cours NethServer-101".
\\
\\
====== Appendices ======
{{Images_icone-201-003_Note.png?25}} Les exemples de ce chapitre proviennent de la section **
[[nethserver_201_cahier_04_dokuwiki#Appendices#|Appendices]]
** du **Cahier-201-04:** //DokuWiki// du "Cours NethServer-201".
===== É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.
===== 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 répertoire ''/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.
===== 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. On choisit ''fr_FR.utf8'', car ce choix affectera aussi celui de la traduction pour l'interface Web. Pour l'instant, la traduction ''fr_FR'' est plus avancé que celle de ''fr_CA''.
[root@tchana ~]# localectl set-locale LANG=fr_FR.utf8
[root@tchana ~]#
{{Images_icone-201-003_Note.png?25}} Dorénavant, la page de connexion offrira //Français (France)// comme langue par défaut au lieu de //English (United States)// si nous avons installé le module //**Langue Française**//.
On pourra vérifier, après le prochain redémarrage, 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 }}|
===== 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]].
\\
\\
====== Introduction à l'éditeur vi ======
//Référence:// http://www.iro.umontreal.ca/~dift3830/vi.html. //(Dernière consultation, le 30 mai 2016. Novembre 2018, ce lien n'est plus fonctionnel.)//
**''vi''** est un éditeur de texte très puissant. Sa convivialité par contre lui fait défaut. Ceci dit, il est toujours utile d'en connaître les rudiments, car son omniprésence est presque garantie sur les systèmes modernes.
La documentation de ''vi'' étant très abondante, on se limitera pour cette démo aux commandes les plus usuelles.
Tout d'abord l'invocation. On peut invoquer ''vi'' à partir du shell de plusieurs façons dont en voici quelques-unes:
- **''vi''**: -> ouvre ''vi'' avec un contenu vide.
- **''vi nom_de_fichier''**: -> ouvre un fichier et l'affiche à l'écran.
- **''vi +nom_de_fichier''**: -> ouvre un fichier et positionne le curseur à la fin de celui-ci.
Dès son invocation, ''vi'' se met en mode **commande**, dans ce mode il est possible d'entrer les commandes qui seront vues plus bas. Si on tape une commande susceptible de modifier un texte //(insertion d'un caractère par exemple)//, ''vi'' bascule en mode **édition**; dans ce mode tout caractère tapé sera considéré comme faisant partie du texte, tandis que les caractères saisis en mode //commande//, seront eux interprétés comme étant des commandes et ne seront jamais rajoutés au texte.
Afin de basculer du mode //édition// au mode //commande// il suffit de presser la touche **[Échap]**.
Nous allons commencer par invoquer ''vi'' à partir du shell en tapant:
vi
Ce qui devrait donner l'affichage ci-contre:
''vi'' est déjà en mode //commande//, pour le faire passer en mode //édition//, on tape la commande ''i'' //(insert)// qui nous permet d'insérer du texte.
i
|{{ Images_Cahier-101-01-018.png?400 }}|
Après avoir tapé le texte suivant:
vi est un éditeur de texte très
utile pour la communauté des
administrateurs.
On obtient l'affichage ci-contre.
|{{ Images_Cahier-101-01-019.png?400 }}|
Après cela, on pourrait passer en mode //commande// par simple pression sur la touche [Échap].
Une fois en mode //commande//, on voudrait par exemple, éliminer la ligne blanche qui se trouve juste après la première. Pour ce faire, on positionne le curseur a la hauteur de la 2e ligne et on tape ''dd''.
Ceci aura pour effet de supprimer la ligne.
Si on est satisfait, il ne nous reste plus qu'à sauvegarder le document sous le nom ''texte1.txt'' à l'aide de la commande suivante:
:w texte1.txt
//(Pour les sauvegardes ultérieures, il n'est pas nécessaire d'ajouter le nom du fichier)//.
Afin de quitter ''vi'' il suffit de taper la commande:
:q texte1.txt
Les commandes abondent dans ''vi'', on n'en citera que quelques-unes.
^ \\ Principales commandes de vi ^^
|//**Commande**//|//**Effets**//|
|i (insert)|Insère un texte sur le curseur|
|I|Insère au début de la ligne|
|a (append)|Insère après le curseur|
|A|Insère à la fin de la ligne|
|Les flèches|pour les déplacements|
|Ctrl-F (forward)|Défiler d'un écran vers le bas|
|Ctrl-B (backward)|Défiler d'un écran vers le haut|
|nG (goto)|va à la nième ligne dans le texte|
|G|Va à la fin du texte|
|x|Effacer le caractère courant|
|dd|Effacer la ligne courante|
|D|Effacer depuis la position du curseur jusqu'à la fin de la ligne|
|db (DeleteBegining)|Effacer depuis la position courante jusqu'au début de la ligne|
|/chaîne|rechercher la chaîne 'chaîne' dans le texte, on peut taper 'n' pour voir les autres occurrences|
|:w fichier|copie le texte courant sur le disque sous le nom fichier |
|:wq (write & quit)|écrit le fichier sur le disque et quitte vi.|
|:q!|Quitter sans sauvegarder.|
|:set nu|Affiche le numérotage des lignes.|
\\
\\
{{NS-101_002_Banniere_Victoire.png?50}} Victoire totale, hissons la bannière de la victoire.
\\
----
====== Crédits ======
© 2019 RF-232\\
Auteur: Michel-André.\\
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-301\RF-232_Cours_NethServer-301-02_ActiveDirectory_2019-12-24_11h59.odt.
Historique des modifications:
^Version^Date^Commentaire^Auteur|
|0.0.1|2019-10-02|Début.|M.-A. Robillard|
|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.
\\
\\