Maison > Article > Tutoriel système > Bientôt, une toute nouvelle approche des mises à jour des fichiers hôtes !
Présentation | Il existe de nombreuses listes utiles de différents domaines de spam qui sont continuellement entretenues en ligne. La copie de ces listes dans votre fichier hosts permet de bloquer facilement autant de domaines que votre système n'aura pas du tout besoin de s'y connecter. Cette méthode fonctionne sans installer de plug-in de navigateur et bloquera tout navigateur (et tout autre programme) sur votre système. |
Dans ce didacticiel, je vais vous montrer comment faire fonctionner le script Unified Host de Steven Black sous Linux. Ce script mettra à jour le fichier hosts de votre ordinateur avec les dernières adresses connues des serveurs publicitaires, des sites de phishing et autres spams provenant de plusieurs sources tout en fournissant un moyen simple et propre de gérer vos propres listes noires/listes blanches, une de chaque liste gérée par ce script. .
Il y a deux choses à noter avant de mettre 30 000 domaines dans votre fichier hosts. Premièrement, ces énormes listes contiennent des serveurs qui peuvent devoir être débloqués pour effectuer des achats en ligne ou pour toute autre situation temporaire. Si vous modifiez votre fichier hosts, sachez que quelque chose en ligne pourrait mal se passer. Pour résoudre ce problème, je vais vous montrer comment utiliser un interrupteur marche/arrêt pratique afin que vous puissiez rapidement désactiver votre liste de blocage pour l'achat d'une lampe au brouillard salin de l'Himalaya (c'est une lampe à plasma). Je pense toujours que l'un des objectifs de ces listes est de tout bloquer (un peu ennuyeux, jusqu'à ce que je pense à désactiver l'interrupteur). Si vous rencontrez fréquemment des problèmes avec un serveur que vous devez bloquer, ajoutez-le simplement au fichier de liste blanche.
Le deuxième problème est que les performances sont légèrement affectées car le système doit vérifier la liste complète à chaque fois qu'un domaine est appelé. C'est juste un petit impact, mais pas si important que j'abandonne la liste noire et laisse passer chaque connexion. C'est à vous de décider comment vous choisissez.
Le fichier hosts bloque les requêtes en les dirigeant vers 127.0.0.1 ou 0.0.0.0 (autrement dit vers une adresse nulle). Certains disent que l’utilisation de 0.0.0.0 est plus rapide et moins problématique. Vous pouvez configurer le script pour utiliser l'option IP telle que "-ip nnn.nnn.nnn.nnn" comme adresse IP de blocage, mais la valeur par défaut est 0.0.0.0, qui est la valeur que j'ai utilisée.
J'avais l'habitude de faire ce que le script de Steven Black faisait manuellement de temps en temps, d'aller sur chaque site, de copier/coller leur liste dans mon fichier hosts, de rechercher et de remplacer et de transformer 127 en 0 et ainsi de suite. Je savais que tout cela pouvait être automatisé et que ce serait un peu idiot de le faire, mais je n'ai jamais pris le temps de le comprendre. Jusqu'à ce que je trouve ce script, c'était désormais une corvée oubliée.
Commençons par télécharger une copie du dernier code de Steven Black (environ 150 Mo) afin que nous puissions passer à l'étape suivante. Vous devez installer git, donc si vous ne l'avez pas encore installé, allez sur le terminal et tapez :
sudo apt-get install git
Après l'installation, entrez :
Il existe de nombreuses listes utiles de différents domaines de spam gérés en ligne. La copie de ces listes dans votre fichier hosts permet de bloquer facilement autant de domaines que votre système n'aura pas du tout besoin de s'y connecter. Cette méthode fonctionne sans installer de plug-in de navigateur et bloquera tout navigateur (et tout autre programme) sur votre système.
Dans ce didacticiel, je vais vous montrer comment faire fonctionner le script Unified Host de Steven Black sous Linux. Ce script mettra à jour le fichier hosts de votre ordinateur avec les dernières adresses connues des serveurs publicitaires, des sites de phishing et autres spams provenant de plusieurs sources tout en fournissant un moyen simple et propre de gérer vos propres listes noires/listes blanches, une de chaque liste gérée par ce script. .
Il y a deux choses à noter avant de mettre 30 000 domaines dans votre fichier hosts. Premièrement, ces énormes listes contiennent des serveurs qui peuvent devoir être débloqués pour effectuer des achats en ligne ou pour toute autre situation temporaire. Si vous modifiez votre fichier hosts, sachez que quelque chose en ligne pourrait mal se passer. Pour résoudre ce problème, je vais vous montrer comment utiliser un interrupteur marche/arrêt pratique afin que vous puissiez rapidement désactiver votre liste de blocage pour l'achat d'une lampe au brouillard salin de l'Himalaya (c'est une lampe à plasma). Je pense toujours que l'un des objectifs de ces listes est de tout bloquer (un peu ennuyeux, jusqu'à ce que je pense à désactiver l'interrupteur). Si vous rencontrez fréquemment des problèmes avec un serveur que vous devez bloquer, ajoutez-le simplement au fichier de liste blanche.
Le deuxième problème est que les performances sont légèrement affectées car le système doit vérifier la liste complète à chaque fois qu'un domaine est appelé. C'est juste un petit impact, mais pas si important que j'abandonne la liste noire et laisse passer chaque connexion. C'est à vous de décider comment vous choisissez.
Le fichier hosts bloque les requêtes en les dirigeant vers 127.0.0.1 ou 0.0.0.0 (autrement dit vers une adresse nulle). Certains disent que l’utilisation de 0.0.0.0 est plus rapide et moins problématique. Vous pouvez configurer le script pour utiliser l'option IP telle que -ip nnn.nnn.nnn.nnn comme adresse IP de blocage, mais la valeur par défaut est 0.0.0.0, qui est la valeur que j'ai utilisée.
我曾经将 Steven Black 的脚本做的事每隔一段时间就手动做一遍,进到每一个站点,将他们的列表拷贝/粘贴到我的主机文件中,做一个查找替换将其中的 127 变成 0 等等。我知道整件事情可以自动化,这样做有点傻,但我从来没有花时间解决这个问题。直到我找到这个脚本,现在这事已经是一个被遗忘的杂务。
让我们先下载一份最新的 Steven Black 的代码拷贝(大约 150MB),以便我们可以进行下一步。你需要安装 git,因此如果还没安装,进入到终端输入:
sudo apt-get install git
安装完之后,输入:
mkdir unifiedhosts cd unifiedhosts git clone https://github.com/StevenBlack/hosts.git cd hosts
当你打开了 Steven 的脚本时,让我们来看看有什么选项。该脚本有几个选项和扩展,但扩展我不会在这里提交,但如果你到了这一步并且你有兴趣,readme.md 可以告诉你所有你需要知道的。
你需要安装 python 来运行此脚本,并且与版本有关。要找到你安装的 Python 版本,请输入:
python --version
如果你还没安装 Python:
sudo apt-get install python
对于 Python 2.7,如下所示,输入 python 来执行脚本。对于 Python 3,在命令中的 python 替换成 python3。执行后,该脚本会确保它具有每个列表的最新版本,如果没有,它会抓取一个新的副本。然后,它会写入一个新的主机文件,包括了你的黑名单/白名单中的任何内容。让我们尝试使用 -r 选项来替换我们的当前的主机文件,而 -a 选项可以脚本不会问我们任何问题。回到终端:
python updateHostsFile.py -r -a
该命令将询问你的 root 密码,以便能够写入 /etc/。为了使新更新的列表处于激活状态,某些系统需要清除 DNS 缓存。在同一个硬件设备上,我观察到不同的操作系统表现出非常不同的行为,在没有刷新缓存的情况下不同的服务器变为可访问/不可访问所需的时间长度都不同。我已经看到了从即时更新(Slackware)到重启更新(Windows)的各种情况。有一些命令可以刷新 DNS 缓存,但是它们在每个操作系统甚至每个发行版上都不同,所以如果没有生效,只需要重新启动就行了。
现在,只要将你的个人例外添加到黑名单/白名单中,并且只要你想要更新主机文件,运行该脚本就好。该脚本将根据你的要求调整生成的主机文件,每次运行文件时会自动追加你额外的列表。
最后,我们来创建一个打开/关闭开关,对于打开和关闭功能每个都创建一个脚本,所以回到终端输入下面的内容创建关闭开关(用你自己的文本编辑器替换 leafpad):
leafpad hosts-off.sh
在新文件中输入下面的内容:
#!/bin/sh sudo mv /etc/hosts /etc/hostsDISABLED
接着让它可执行:
chmod +x hosts-off.sh
相似地,对于打开开关:
leafpad hosts-on.sh
在新文件中输入下面的内容:
#!/bin/sh sudo mv /etc/hostsDISABLED /etc/hosts
最后让它可执行:
chmod +x hosts-on.sh
你所需要做的是为每个脚本创建一个快捷方式,标记为 HOSTS-ON 和 HOSTS-OFF,放在你能找到它们的地方。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!