How to Wiki Database (change log) http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
2.6 KiB

10 months ago
====== Добавление доменов в чёрный список 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]]:
<file perl selectDomainNamesFromAdlist.pl>
#!/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" );
}
</file>
**//Этот perl-скрипт должен лежать в одной директории со скриптом ниже.//**
Скрип создания списка блокировки и размещения его на web-сервере Pi-hole:
<code bash>#!/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)</code>
===== Заключение =====
У 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