Домашний Squid для Ipad. URL filter.

Планшет для меня - один из самых активно используемых девайсов за последние годы. Но в какой-то момент я начал замечать, что некоторые сайты на нем начинают открываться только после длительной задержки.

В общем, не буду писать неинтересные подробности (про то почему я не сразу начал с этим разбираться, про клаудфлэровские DNS-ы на роутере и т.п.), напишу лишь суть.

Причина долгих фризов некоторых сайтов (не зависимо от браузера) - невозможность загрузить контент с российских заблокированных ресурсов вроде метрик/счетчиков и т.п. из Украины. Если включить VPN, то задержки исчезают.

Но для того, чтобы не гонять всегда свой траффик через зарубежные VPN-сервисы (вроде TunnelBear), можно сделать все немного проще. Можно поднять на своем домашнем сервере (или даже на Windows из WLS прямо на своем компьютере) старый добрый прокси - SQUID:

sudo apt install squid

Конфиг (squid.conf):

http_port 3128
acl url_filtred src 192.168.0.1-192.168.0.254
acl blacklist url_regex -i "/etc/squid/blacklist"
http_access deny blacklist url_filtred
http_access allow all

Там же рядом (в /etc/squid) надо создать файлик blacklist, в который разместить такой контент (регулярки для фильтра):

vk\.com
odnoklassniki\.ru
yandex\.ru
\.ok\.ru
yandex\.net
yandex\.ua
\.vkuservideo\.net
\.userapi\.com
mail\.ru

И не забыть перезапустить его:

service squid restart

Все, теперь на IPad в свойствах WiFi для своей домашней сети нужно включить “использовать прокси” и прописать туда соответствующие IP/PORT.

Ну и, если кому нужно, можно пойти дальше и заблокировать все-все “плохие” URL-ы (гуглить “Blacklist for Squid”).