Как заблокировать социальные веб-сайты в песнях через прокси?

Используйте perl:

perl -nle 'print "$1 $ARGV" if /(pattern)/' a.*

И для вопроса, да, grep откройте каждый файл для поиска, затем закройте его, откройте следующий файл и так далее.

$ strace -e trace=file,close grep Power 1.txt 2.txt
....
openat(AT_FDCWD, "1.txt", O_RDONLY)     = 3
1.txt:Power and signal 
1.txt:VDD Digital Power This pin provides power supply connection for the digital
1.txt:VMEASPOS Digital Power Voltage to be measured.
1.txt:VREFEXT Digital Power Reference voltage input of 1.024V %for VSENS calibration.
close(3)                                = 0
openat(AT_FDCWD, "2.txt", O_RDONLY)     = 3
2.txt:0.078362 Power
2.txt:Power
close(3)

Я не могу придумать лучшего способа сделать это. Почти инструменты обработки текста также ведут себя так. Единственное отличие, которое я вижу, это то, как они называют систему. grep используйте openat(), в то время как perl, awk используйте open().

1
23.12.2014, 15:17
1 ответ

Блокирующие веб-сайты - это как-то игра для мыши, и вам придется комбинировать много методов, чтобы минимизировать количество веб-прокси, которые ваши пользователи могут достичь / доступ.

Метод 1 - Блокировка общих прокси Regexes:

Отредактируйте ваш файл /etc/squid/squid.conf , используя редактор выбора и добавить следующие строки:

acl regex-prox-sites urlregex –i "/etc/squid/proxy_regex.acl"
http_access deny regex-prox-sites

Теперь создайте файл /etc/squid/proxy_regex.acl и добавьте следующую строку:

browse.php
view?q=

Вы также можете добавить слово Proxy в этом списке, но это может вызвать ложные срабатывания. Используя этот метод, вы сократите доступом пользователей к WebProxies, которые имеют общие файлы PHP выше и используют эти слова на любом месте URL.

Способ 2 - Используйте Squidguard и загрузить онлайн-представленные списки

Это займет некоторое время, и вам, вероятно, придется компилировать источники Squidguard, если ваше распределение не упаковывает его, и использовать онлайн-списки, такие как . Вы можете обратиться к документам Squidguard, где есть много документации с шагами установки и как использовать черные списки из Интернета.

После завершения установки вам нужно будет добавить параметр Rewrite URL в конце вашего файл Squid.conf . Пример:

echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf

Метод 3 - Создайте свой собственный скрипт, чтобы создать черные списки с сайтов, которые предоставляют информацию о веб-прокси.

Этот пример загрузит HTML-файл из Proxy.org и извлекает сайты из HTML.

wget -q -U "Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0" http://proxy.org/cgi_proxies.shtml -O - |grep "\<option value=\"" | grep -v random | cut -d \" -f 2

Обратите внимание, что этот простой скрипт будет работать только с этим сайтом, и другие провайдеры прокси могут иметь ограничения входа в систему или другие методы, чтобы заблокировать вас от загрузочной информации.

Вы можете перенаправить вывод этой команды в другой файл и создать блок Dstdomain на Squid, следуя на примере метода 1.

1
27.01.2020, 23:51

Теги

Похожие вопросы