====== Добавление доменов в чёрный список Pi-hole из правил Adblock Plus ====== Поделюсь удобным скриптом, который скачивает ruadlist+easylist.txt от [[wpru>Adblock_Plus|Adblock Plus]] и добавляет домены из него в черный список [[pi-hole:pi-hole|Pi-hole]]. Скрипт можно поместить в crontab и выполнять ежедневно (новые домены добавляются в правила довольно часто). В правилах Adblock Plus содержатся не только домены, но и специальные регулярные выражения, которые Pi-hole просто не поймет. Для отсеивания таких выражений применяется скрипт на perl, [[https://www.reddit.com/r/pihole/comments/4p2tp7/adding_easylist_and_other_adblocklike_sources_to/|найденный когда-то в reddit-сообществе pi-hole]]: #!/usr/bin/perl -w use strict; my %hosts = (); while ( <> ) { if ( $_ =~ m/^\|\|([a-z][a-z0-9-_.]+\.([a-z]{2,3}))\^\s*$/ ) { $hosts{$1} = 1; } } foreach my $host ( sort keys %hosts ) { print( "$host\n" ); } **//Этот perl-скрипт должен лежать в одной директории со скриптом ниже.//** Скрип создания списка блокировки и размещения его на web-сервере Pi-hole: #!/bin/sh #get AdList LST="$(curl --silent --insecure -4 https://easylist-downloads.adblockplus.org/ruadlist+easylist.txt)" #get domains from AdList echo "$LST" | "$(dirname $0)/selectDomainNamesFromAdlist.pl" | grep -v '^$' | sort -u > '/var/www/html/pihole/ruadlist_easylist.txt' #в настройках Pi-hole список можно будет добавить так: http://pi.hole/pihole/ruadlist_easylist.txt #(проверьте предварительно, что он доступен через web) ===== Заключение ===== У Adblock Plus много разных наборов правил для разных языков, со всеми можно ознакомиться здесь: https://adblockplus.org/ru/subscriptions Кроме того, без всякой предварительной обработки в настройки Pi-hole можно добавить список блокировки от AdGuard: https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts;showintro=0&useip=0.0.0.0