| Les deux révisions précédentesRévision précédente | |
| hosts [Le 01/09/2026, 18:51] – supprimer, ne pas rayer SVP | réorganisation | suppr obsolete | pas de maj à hosts | màj liens internes | mise en forme | suppr script discutable et non maintenu (utiliser une forge git, pas une documentation ubuntu pour partager des scripts) | suppr méth krodelabestiole | hosts [Le 02/09/2026, 19:52] (Version actuelle) – explication hostname | espaces insécables | réécriture explication hosts | suppr conseil au pif | màj liens | suppr lien mort krodelabestiole |
|---|
| ===== hostname ===== | ===== hostname ===== |
| |
| Le fichier ''/etc/hostname'' contient le nom de l'ordinateur. Il faut le modifier avec les [[:permissions administrateur]] en l'éditant avec votre éditeur préféré ou en tapant : | Le fichier ''/etc/hostname'' contient le [[:réseau#nom d'hôte]] de l'ordinateur. Celui-ci est utilisé pour identifier la machine sur un [[:réseau]], et apparaît dans l'[[:terminal#L'invite de commande (prompt)|invite de commande]] (//prompt//) du [[:terminal]]. |
| <code>sudo sh -c "echo nouveau_nom_du_pc > /etc/hostname"</code> | |
| | Sa modification requiert les [[:permissions administrateur]] en l'[[:tutoriel:comment_modifier_un_fichier|éditant]] avec votre éditeur préféré, ou en entrant depuis un [[:terminal]]\_: |
| | <code>sudo sh -c "echo nouveau_nom_du_pc > /etc/hostname"</code> |
| Un redémarrage est nécessaire pour la prise en compte. | Un redémarrage est nécessaire pour la prise en compte. |
| De façon temporaire on peut simplement utiliser la commande du même nom : | |
| <code>sudo hostname nouveau_nom_du_pc</code> | |
| Attention à garder la cohérence avec le fichier de configuration de Samba, cf. //[[:samba_smb.conf#Paramètres généraux de [global]]]//. | |
| |
| ===== hosts ===== | De façon temporaire on peut simplement utiliser la commande ''[[man>hostname]]''\_: |
| | <code>sudo hostname nouveau_nom_du_pc</code> |
| |
| Le fichier ''/etc/hosts'' est utilisé sous tous les systèmes d'exploitations lors de l'accès à Internet, ce fichier est consulté avant l'accès au serveur DNS. C'est un simple fichier qui contient sur la même ligne une adresse IP et parfois le nom de domaine.\\ | <note important> |
| | Attention à garder la cohérence avec le fichier de configuration de [[:Samba]], cf. //[[:samba_smb.conf#Paramètres généraux de [global]]]//. |
| | </note> |
| |
| Ce fichier permet de bloquer l'accès à un site Internet, de le rediriger, de bloquer les pubs et d'améliorer l'accès à des sites en fonction de la configuration de celui-ci. Il peut être utile pour protéger un ordinateur, empêcher un enfant (par exemple) d'accéder à un site particulier.\\ | ===== hosts ===== |
| Ce fichier peut aussi servir à définir les noms des machines sur un réseau local (ou pas). | |
| |
| Le fichier ''hosts'' est l'ancêtre des [[:DNS]] utilisé dans [[wpfr>ARPANET]] - servant à adresser les adresses des réseaux. | Le fichier ''/etc/hosts'' est consulté par tous les systèmes d'exploitations lors de l'accès à Internet, avant l'accès au serveur [[:DNS]], afin de résoudre une [[:reseau#adresse IP]]. C'est un simple fichier qui associe, en les déclarant sur une même ligne, une [[:reseau#adresse IP]] à un [[:web#nom de domaine]]. Le fichier ''hosts'' est l'ancêtre des [[:DNS]] utilisé sur [[wpfr>ARPANET]]. |
| |
| * **Voir également [[:Moblock|PGLD]], pour bloquer à partir de la liste peerguardian.** | Ce fichier permet de\_: |
| | * définir les [[:réseau#nom d'hôte|noms des machines]] sur un [[:réseau]] (privé ou public) |
| | * bloquer l'accès à un site Internet |
| | * le rediriger |
| | * bloquer les publicités |
| | * dans une certaine mesure améliorer l'accès à certains sites. |
| | Il peut être utile pour protéger un ordinateur, empêcher un enfant (par exemple) d'accéder à un site particulier.\\ |
| | |
| | <note important> |
| | La modification du fichier ''hosts'' n'est cependant utile ni fonctionnelle que pour la machine sur laquelle il se trouve, et facilement contournable. Pour définir (ou bloquer) plus largement des [[:web#nom de domaine|noms de domaine]], que ce soit sur Internet ou sur un réseau privé, on préférera généralement utiliser d'autres méthodes, qui s'appliqueront à plusieurs machines (voir [[:zeroconf#mDNS]], [[:smb|NetBIOS]], les [[:dns#gerer_son_propre_serveur_dns|serveurs DNS]], le projet [[https://pi-hole.net/|Pi-hole]], ou [[:Moblock|PeerGuardian]]). |
| | </note> |
| |
| ==== Trouver et modifier le fichier hosts ==== | ==== Trouver et modifier le fichier hosts ==== |
| |
| <note warning> | <note warning> |
| Avant modification, comme pour tout fichier-système, il est prudent d'en faire une **copie de sauvegarde**, datée de la veille : | Avant modification, comme pour tout fichier du [[:système]], il est prudent d'en faire une copie de sauvegarde (ici datée de la veille)\_: |
| <code>sudo cp -av /etc/hosts /etc/hosts.bak.$(date -d "yesterday" '+%Y-%m-%d')</code> | <code>sudo cp -av /etc/hosts /etc/hosts.bak.$(date -d "yesterday" '+%Y-%m-%d')</code> |
| Les deux premières lignes de ''hosts'' sont //cruciales//. N'y touchez pas si vous ne savez pas exactement ce que vous faites -- risque de rendre la machine inutilisable. | </note> |
| | <note warning> |
| | Les deux premières lignes de ''hosts'' sont //cruciales//. N'y touchez pas si vous ne savez pas exactement ce que vous faites -- au risque de rendre la machine inutilisable. |
| </note> | </note> |
| |
| Pour modifier le fichier ''hosts'', il faut les [[:permissions administrateur]]. | Pour modifier le fichier ''hosts'', il faut les [[:permissions administrateur]]. |
| |
| En ligne de commande : | En ligne de commande\_: |
| <code>sudo nano /etc/hosts</code> | <code>sudo nano /etc/hosts</code> |
| Pour enregistrer : ''Ctrl''+''O'' puis ''Entrée''. Pour quitter : ''Ctrl''+''X''. | Pour enregistrer\_: ''Ctrl''+''O'' puis ''Entrée''. Pour quitter\_: ''Ctrl''+''X''. |
| |
| En mode graphique : | En mode graphique\_: |
| - Copier le fichier (sans changer son nom) dans le [[:arborescence#répertoire personnel]] (et pas dans un de ses sous-répertoires) :<code>cp -v /etc/hosts ~</code> | - Copier le fichier (sans changer son nom) dans le [[:arborescence#répertoire personnel]] (et pas dans un de ses sous-répertoires)\_:<code>cp -v /etc/hosts ~</code> |
| - Modifier cette copie avec votre éditeur de texte favori. | - Modifier cette copie avec votre éditeur de texte favori. |
| - L'enregistrer (toujours sans changer son nom). | - L'enregistrer (toujours sans changer son nom). |
| - Le déplacer dans ''/etc/'' (c'est le seul moment qui nécessite les [[:permissions administrateur]]) :<code>sudo mv -v ~/hosts /etc/hosts</code> | - Le déplacer dans ''/etc/'' (c'est la seule opération qui requiert les [[:permissions administrateur]])\_:<code>sudo mv -v ~/hosts /etc/hosts</code> |
| |
| <note>La modification de ''/etc/hosts'' est instantanément appliquée par le système.</note> | <note>La modification de ''/etc/hosts'' est instantanément appliquée par le système.</note> |
| ==== Utiliser le fichier hosts pour bloquer des sites web ==== | ==== Utiliser le fichier hosts pour bloquer des sites web ==== |
| |
| En définissant comme adresse IP, une adresse autre, on peut éviter d'aller sur certains sites web ou par exemple, bloquer les publicités. | En définissant comme [[:reseau#adresse IP]] une adresse autre, on peut empêcher l'accès à certains sites web, ou bloquer les publicités. |
| |
| La plupart du temps c'est l'adresse de la boucle locale (''127.0.0.1'') qui est utilisée, cependant il est conseillé d'utiliser ''0.0.0.0'' à la place car il n'y a pas d'attente de timeout. Résultat : beaucoup moins de lenteurs. De plus, de cette façon, le fichier ''hosts'' n'interfère pas avec les serveurs Web qui peuvent être hébergés en local. | La plupart du temps c'est l'adresse de la boucle locale ''127.0.0.1'' qui est utilisée, cependant il est conseillé d'utiliser ''0.0.0.0'' à la place car il n'y a pas d'attente de //timeout//. Résultat\_: beaucoup moins de lenteurs. De plus, de cette façon, le fichier ''hosts'' n'interfère pas avec les serveurs Web qui peuvent être hébergés en local. |
| |
| <note warning>//A priori//, de trop grosses listes et/ou non adaptées peuvent ralentir l'accès au réseau. Faire des test (via la commande [[:faq_reseau#tests_vers_une_machine_distante|ping]] par exemple). | <note warning>//A priori//, de trop grosses listes et/ou non adaptées peuvent ralentir l'accès au réseau. Faire des test (via la commande [[:faq_reseau#tests_vers_une_machine_distante|ping]] par exemple). |
| |
| systemd-resolved est utilisé comme [[https://doc.ubuntu-fr.org/zesty#changements_apportes_depuis_la_version_precedente|résolveur DNS par défaut]] et un trop gros fichier hosts (plusieurs Mo) peut bloquer complètement l'accès à internet. Pour palier ce problème, il suffirait de supprimer systemd-resolved. Plus d'infos dans [[https://forum.ubuntu-fr.org/viewtopic.php?id=2029407|cette discussion]]. | **[[https://www.freedesktop.org/software/systemd/man/latest/systemd-resolved.service.html|systemd-resolved]]** est utilisé comme [[https://doc.ubuntu-fr.org/zesty#changements_apportes_depuis_la_version_precedente|résolveur DNS par défaut]] et un trop gros fichier hosts (plusieurs Mo) peut bloquer complètement l'accès à internet. |
| </note> | </note> |
| |
| === Divers fichiers hosts === | === Divers fichiers hosts === |
| |
| On trouve sur le web des fichiers ''hosts'' listant des [[:web#nom_de_domaine|noms de domaine]] à bloquer.\\ | On trouve sur le web des fichiers ''hosts'' listant des [[:web#nom_de_domaine|noms de domaine]] à bloquer. On peut les utiliser et les inclure dans son propre fichier ''/etc/hosts'' pour bloquer de très nombreux [[:web#nom de domaine|domaines]]. Cependant pour être efficace, ces listes devraient être mises à jour en permanence au moyen d'un utilitaire (voir les scripts proposés avec ces listes). |
| Cette liste n'est pas exhaustive. Les liens sont classés par ordre alphabétique. | Cette liste n'est pas exhaustive. Les liens sont classés par ordre alphabétique. |
| |
| * [[https://someonewhocares.org/hosts/|Someonewhocares.org]] | * [[https://someonewhocares.org/hosts/|Someonewhocares.org]] |
| |
| D'autres listes et sources sont disponibles sur GitHub : | D'autres listes et sources sont disponibles sur GitHub\_: |
| * [[https://github.com/mitchellkrogza/Badd-Boyz-Hosts]] (Bloque principalement les sites interdits aux mineurs) | * [[https://github.com/mitchellkrogza/Badd-Boyz-Hosts]] (bloque principalement les sites interdits aux mineurs) |
| | * [[https://github.com/notracking/hosts-blocklists]] |
| * [[https://github.com/StevenBlack/hosts]] | * [[https://github.com/StevenBlack/hosts]] |
| * [[https://github.com/mitchellkrogza/Ultimate.Hosts.Blacklist]] (Fournit également un fichier [[:denyhosts|hosts.deny]]) | * [[https://github.com/Ultimate-Hosts-Blacklist/Ultimate.Hosts.Blacklist]] (fournit également un fichier [[:denyhosts|hosts.deny]]) |
| * [[https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant]] | |
| * [[https://github.com/notracking/hosts-blocklists#sources]] | |
| * [[https://github.com/mitchellkrogza/Ultimate.Hosts.Blacklist#information-data-sources-copyrights-and-credits]]. | |
| |
| ===== Voir aussi ===== | ===== Voir aussi ===== |
| |
| * [[wpfr>hosts]] sur Wikipédia | * [[wpfr>hosts]] sur Wikipédia |
| * Introduction et personnalisation du fichier hosts : [[https://www.donnemoilinfo.com/sujet/Securiser/fichier-hosts.php|www.donnemoilinfo.com]]\\ | |
| |
| ---- | ---- |
| //[[:Contributeurs]] : [[:utilisateurs:Fl4t]], [[:utilisateurs:PsychedÉric]], [[:utilisateurs:gb1yop]], [[https://forum.ubuntu-fr.org/profile.php?id=45561|darunia]], [[:utilisateurs:anonyme68]], [[:utilisateurs:krodelabestiole]].// | //[[:Contributeurs]] : [[:utilisateurs:Fl4t]], [[:utilisateurs:PsychedÉric]], [[:utilisateurs:gb1yop]], [[https://forum.ubuntu-fr.org/profile.php?id=45561|darunia]], [[:utilisateurs:anonyme68]], [[:utilisateurs:krodelabestiole]].// |
| |