| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| hosts [Le 22/10/2009, 17:13] – psychederic | 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 |
|---|
| {{tag>hosts nohttpd intrepid reseau securité p2p}} | {{tag> pare-feu réseau sécurité}} |
| |
| | ====== Les fichiers hosts et hostname ====== |
| |
| ====== Le fichier Hosts ====== | ===== hostname ===== |
| |
| | 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]]. |
| |
| Le fichier 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.\\ | 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. |
| |
| 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 votre ordinateur, empêcher un enfant (par exemple) d'accéder à un site particulier ; de peer to peer, crack, jeux, msn, etc.\\ | De façon temporaire on peut simplement utiliser la commande ''[[man>hostname]]''\_: |
| | <code>sudo hostname nouveau_nom_du_pc</code> |
| |
| Le fichier hosts est l'ancêtre des DNS utilisé dans ARPANET - servant à adresser les adresses des réseaux. | <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> |
| |
| * **Voir également [[Moblock]], pour bloquer à partir de liste peerguardian.** | ===== hosts ===== |
| |
| ===== Trouver et modifier le fichier Hosts ===== | 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]]. |
| |
| Le fichier hosts se trouve dans /etc/hosts :<code> gksudo gedit /etc/hosts</code> | 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.\\ |
| |
| ===== Mettre à jour son fichier hosts automatiquement ===== | <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> |
| |
| Sauvegardez le script suivant dans un fichier .sh | ==== Trouver et modifier le fichier hosts ==== |
| * Modifier hostname par le nom de votre machine. | |
| |
| | Le fichier hosts se trouve dans ''/etc/''. Son [[:chemins|chemin]] est donc ''/etc/hosts''. |
| |
| <code> | <note warning> |
| #!/bin/sh | 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)\_: |
| if [ ! $(id -u) = 0 ]; then | <code>sudo cp -av /etc/hosts /etc/hosts.bak.$(date -d "yesterday" '+%Y-%m-%d')</code> |
| echo "Il faut être root" | </note> |
| zenity --question --title "Hosts" --text "$@ \ | <note warning> |
| Il faut passer en root" | 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. |
| exit 1 | </note> |
| fi | |
| lancement () | |
| { | |
| rm /tmp/hosts | |
| rm /tmp/hosts.txt | |
| echo "127.0.0.1 localhost.localdomain localhost hostname | |
| # *********************************************************#" >> /tmp/hosts | |
| wget http://www.mvps.org/winhelp2002/hosts.txt -O /tmp/hosts.txt | |
| |
| cat /tmp/hosts.txt >> /tmp/hosts | Pour modifier le fichier ''hosts'', il faut les [[:permissions administrateur]]. |
| |
| cp /tmp/hosts /etc/hosts | En ligne de commande\_: |
| } | <code>sudo nano /etc/hosts</code> |
| | Pour enregistrer\_: ''Ctrl''+''O'' puis ''Entrée''. Pour quitter\_: ''Ctrl''+''X''. |
| |
| (echo ""; lancement) | zenity --progress --title "Hosts" --text="Téléchargement en cours" --pulsate | 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> |
| | - Modifier cette copie avec votre éditeur de texte favori. |
| | - L'enregistrer (toujours sans changer son nom). |
| | - Le déplacer dans ''/etc/'' (c'est la seule opération qui requiert les [[:permissions administrateur]])\_:<code>sudo mv -v ~/hosts /etc/hosts</code> |
| |
| ## Si on clic sur Annuler... | <note>La modification de ''/etc/hosts'' est instantanément appliquée par le système.</note> |
| if [ $? -ne 0 ] | |
| then | |
| exit 0 | |
| fi | |
| |
| zenity --question --title "Hosts" --text "$@ \ | ==== Utiliser le fichier hosts pour bloquer des sites web ==== |
| script terminé ." | |
| ## Si on clic sur Annuler... | |
| if [ $? -ne 0 ] | |
| then | |
| exit 0 | |
| fi | |
| </code> | |
| |
| * Puis préparez un [[cron]]. | 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. |
| |
| ==== D'autres fichiers hosts ==== | 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>A priori des trop grosses listes - et non adaptées peuvent ralentir votre accès au réseau (et internet). Faire des test - 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). |
| |
| Dans tous les cas dans une perspective de sécurité l'utilisation d'un [[firewall]] est préférable. | **[[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> |
| |
| * http://www.mvps.org/winhelp2002/hosts.txt | <note> |
| conseillé | Pour aller plus loin et dans une perspective de sécurité, l'utilisation d'un [[:pare-feu]] ou d'un [[:proxy]] peut être préférable. |
| |
| * http://rlwpx.free.fr/WPFF/hosts.htm | Voir aussi l'utilisation de [[:configuration_serveur_dns_dhcp#bloquer_un_domaine_avec_dnsmasq|dnsmasq]]. |
| Il bloque pas mal de site, c'est même un peu trop! | </note> |
| |
| * http://accs-net.com/hosts/hostsforlinux.html | === Divers fichiers hosts === |
| pas testé. | |
| |
| * http://someonewhocares.org/hosts/ | 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. |
| |
| Sous il y a [[http://www.javacoolsoftware.com/spywareblaster.html|spywareblaster]] - (gratuit, licence ?) et [[http://www.safer-networking.org/fr/home/index.html|Spybot S & D]] (libre...) qui ont des listes à leur disposition. ( il serait utile de les récupérer et de faire partager). | * [[https://www.encrypt-the-planet.com/downloads/hosts|Encrypt The Planet]] |
| | * [[https://filterlists.com/|Filter Lists]] |
| | * [[https://winhelp2002.mvps.org/hosts.txt|MVPS.org]] |
| | * [[http://rlwpx.free.fr/WPFF/hosts.htm|rlwpx.free.fr]] |
| | * [[https://someonewhocares.org/hosts/|Someonewhocares.org]] |
| |
| Il est théoriquement possible de convertir des listes peerguardian pour mettre à jour hosts - mais autant utiliser Moblock qui fait déjà cela automatiquement. | 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/notracking/hosts-blocklists]] |
| | * [[https://github.com/StevenBlack/hosts]] |
| | * [[https://github.com/Ultimate-Hosts-Blacklist/Ultimate.Hosts.Blacklist]] (fournit également un fichier [[:denyhosts|hosts.deny]]) |
| |
| ===== AdzHosts ===== | ===== Voir aussi ===== |
| | |
| | |
| | |
| Note du créateur d'AdZHosts : | |
| | |
| //Beaucoup de personnes utilisent AdBlock ou autres logiciels pour se débarrasser des pubs.\\ | |
| Mais peu savent que ce moyen n'est pas très efficace. Surtout au niveau sécurité et vitesse de surf.\\ | |
| Effectivement, même si le navigateur n'affiche pas la pub, elle est tout de même téléchargée et présente dans le cache.\\ | |
| Pensez bien qu'il arrive la même chose avec les sites qui diffusent des trojans et autres malware.\\ | |
| \\ | |
| Pour parer ces problèmes, j'ai eu l'idée de vous proposer un fichier HOSTS que je tiens à jour.\\ | |
| Le HOSTS est une sorte de LISTE NOIR qui refuse l'accès et les connexions aux sites présent dans cette même liste.\\ | |
| \\ | |
| Le fichier HOSTS bloque la plus part des pubs, compteurs, sites phishing et autres logiciels espions.\\ | |
| AdZHosts est un HOSTS optimisé pour prendre moins de place.\\ | |
| \\ | |
| Quand des éléments sont bloqués par le HOSTS, votre navigateur affichera des cadres blanc avec un message d'erreur.\\ | |
| Pour éviter ça je vous propose d'utiliser un petit soft (au choix) qui remplacera les encadrements blancs par une image transparente.\\ | |
| Ceci a pour but de pubs de ne pas gâcher la mise en page des sites visités ;)\\ | |
| \\ | |
| [[http://adzhosts.blogspot.com/2009/04/des-logiciels-pour-adzhosts.html]]\\ | |
| \\ | |
| Faites confiance à Hajdar et téléchargez toujours les dernières builds ;)\\ | |
| \\ | |
| Le HOSTS contient énormément de noms de domaines.\\ | |
| Si vous rencontrez un souci pour accéder à l'un de vos sites ou si vous en avez assez de voir une pub gâcher votre site préféré, alors venez me faire vos retours sur mon blog.\\ | |
| Un forum est à votre disposition et un messenger est actif pour me parler en live.// | |
| | |
| ==== Pré-requis ==== | |
| | |
| | |
| savoir utiliser les [[http://wiki.ubuntu-fr.org/tutoriel/console_commandes_de_base|commandes de bases]].\\ | |
| | |
| Penser à sauvegarder le précédent avec :\\ | |
| <code>cd /etc/</code> | |
| <code>cp hosts hosts.backup</code> | |
| | |
| | |
| ==== Installation ==== | |
| | |
| | |
| === Méthode 1 === | |
| | |
| | |
| Téléchargez le fichier sur le site suivant [[http://adzhosts.blogspot.com/]] | |
| Dézippez l'archive dans votre répertoire personnel.\\ | |
| **/etc/** étant un dossier système, il va falloir le déplacer via le Terminal.\\ | |
| | |
| Menu>>Accessoires>>Terminal\\ | |
| <code>sudo mv ~/AdZHosts/HOSTS /etc/hosts</code> | |
| | |
| | |
| === Méthode 2 === | |
| | |
| | |
| Via mon script :) | |
| | |
| ouvrez un terminal dans "Menu>>Accessoires>>Terminal"\\ | |
| \\ | |
| tapez :\\ | |
| <code>gedit hosts.sh</code>\\ | |
| | |
| Le traitement de texte apparaît, copiez-collez ceci :\\ | |
| <code>#!/bin/bash | |
| #version 5 | |
| echo -n "Je télécharge l'archive ? O/N : " | |
| read ouinon | |
| if [ "$ouinon" = "o" ] || [ "$ouinon" = "O" ]; | |
| then | |
| { | |
| echo "Téléchargement :" | |
| wget --directory-prefix=/tmp "http://kosvocore.free.fr/AdZHosts/AdZHosts.zip" | |
| } | |
| elif [ "$ouinon" = "n" ] || [ "$ouinon" = "N" ]; | |
| then | |
| { | |
| echo "Ok, bye !" | |
| } | |
| else | |
| { | |
| echo "Il faut taper O ou N !! Pas $ouinon" | |
| } | |
| fi | |
| unzip /tmp/AdZHosts.zip -d /tmp/ | |
| if [ -e /tmp/hosts ] || [ -e /tmp/HOSTS ] | |
| then | |
| { | |
| gksudo mv /tmp/HOSTS /tmp/hosts | |
| gksudo mv /tmp/hosts /etc/ | |
| echo "Mission Accomplie !" | |
| } | |
| elif [ -e /tmp/AdZHosts/hosts ] || [ -e /tmp/AdZHosts/HOSTS ] | |
| then | |
| { | |
| gksudo mv /tmp/AdZHosts/HOSTS /tmp/AdZHosts/hosts | |
| gksudo mv /tmp/AdZHosts/hosts /etc/ | |
| echo "Mission Accomplie !" | |
| } | |
| else | |
| { | |
| echo "Fichier non trouvé" | |
| } | |
| fi | |
| sudo rm /tmp/AdZHosts.zip | |
| sudo rm -r /tmp/AdZHosts/ | |
| exit 0;</code> | |
| | |
| Enregistrez le fichier en hosts.sh, il devrait apparaître dans "/home/utilisateur".\\ | |
| \\ | |
| Cliquez droit dessus puis "propriétés>permissions" puis cocher :\\ | |
| "Autoriser l'exécution du fichier comme un programme"\\ | |
| \\ | |
| Ouvrez un nouveau terminal puis tapez :\\ | |
| | |
| <code>./hosts.sh</code> | |
| | |
| Il vous demande votre mot de passe pour remplacer dans /etc/\\ | |
| Et voilà, directement téléchargé et remplacé ;-)\\ | |
| | |
| | |
| ==== Désinstallation ==== | |
| | |
| | |
| Il faut tout simplement supprimer le fichier hosts qui a été remplacé et remettre l'original précieusement sauvegardé :)\\ | |
| | |
| | |
| ==== Site en rapport ==== | |
| | |
| | |
| * Lien pour script automatique : [[http://fl4t.blogspot.com/2009/05/script-pour-linuxien-adzhosts.html]]\\ | |
| * Le fil de discussion [[http://forum.ubuntu-fr.org/viewtopic.php?pid=2575813#p2575813]]\\ | |
| * Le site du fichier hosts [[http://adzhosts.blogspot.com/]]\\ | |
| * Introduction et personalisation de l'hosts [[http://kerio.probb.fr/securiser-un-peu-plus-son-ordinateur-f9/le-fichier-hosts-securiser-et-ameliorer-t473.htm]]\\ | |
| | |
| ===== Liens ===== | |
| | |
| * [[http://fr.wikipedia.org/wiki/Hosts|Hosts - sur wikipedia]] et [[http://en.wikipedia.org/wiki/Hosts_file|wikipedia en]] | |
| * [[http://lelogiciellibre.net/tutoriaux/fichier-hosts.php|Le fichier hosts sur le logiciellibre]]. | |
| |
| | * [[wpfr>hosts]] sur Wikipédia |
| |
| ---- | ---- |
| | //[[:Contributeurs]] : [[:utilisateurs:Fl4t]], [[:utilisateurs:PsychedÉric]], [[:utilisateurs:gb1yop]], [[https://forum.ubuntu-fr.org/profile.php?id=45561|darunia]], [[:utilisateurs:anonyme68]], [[:utilisateurs:krodelabestiole]].// |
| |
| Contributeurs principaux : [[utilisateurs:Fl4t|Fl4t]], [[:utilisateurs:psychederic|Psychederic]] ... | |
| |
| Basé sur [[http://www.winlsd.org/forum/topic-1100-1.html|« Le fichier HOSTS d'Hajdar »]] par Hajdar, et [[http://forum.ubuntu-fr.org/viewtopic.php?id=350476|forum]]. | |