Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    SquidGuard & Adblock

    Scheduled Pinned Locked Moved Russian
    21 Posts 4 Posters 14.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      volag
      last edited by

      Я вообще исхитрился так: создал категорию adblock в гуе, вписал один сайт в поле expressions, сохранил, затем перезаписал WinSCP этот файл тем, коотрый я стянул и сконвертировал. Все это дело работало, но появилось два пункта adblock. Затем фильтр обиделся и не заработал, пока я не вернул все в "заводские настройки".

      Вот у меня такой вопрос: какой допустимый синтаксис в файле expressions?

      1 Reply Last reply Reply Quote 0
      • D
        dvserg
        last edited by

        @volag:

        Я вообще исхитрился так: создал категорию adblock в гуе, вписал один сайт в поле expressions, сохранил, затем перезаписал WinSCP этот файл тем, коотрый я стянул и сконвертировал. Все это дело работало, но появилось два пункта adblock. Затем фильтр обиделся и не заработал, пока я не вернул все в "заводские настройки".

        Вот у меня такой вопрос: какой допустимый синтаксис в файле expressions?

        Ну естественно одна категория шла из файла блэклист а вторая из гуя. А про совпадение имен ничего не говорилось?

        SquidGuardDoc EN  RU Tutorial
        Localization ru_PFSense

        1 Reply Last reply Reply Quote 0
        • V
          volag
          last edited by

          @dvserg:

          Ну естественно одна категория шла из файла блэклист а вторая из гуя. А про совпадение имен ничего не говорилось?

          Я глядел логи, но ничего такого нет, вообще без ошибок все происходит.
          Преполагаю, что можно попробовать цивильно в гуе в поле expressions добавить весь список(он весит до 400Кб) и нормальным образом сохранить, но вот в хинте под этим полем указан список правил, разделенный "|", а вот про сами правила ничего не указано, например как там маски указывать и т.д. Где можно уточнить перевариваемый формат выражений(expressions)?

          1 Reply Last reply Reply Quote 0
          • D
            dvserg
            last edited by

            @volag:

            @dvserg:

            Ну естественно одна категория шла из файла блэклист а вторая из гуя. А про совпадение имен ничего не говорилось?

            Я глядел логи, но ничего такого нет, вообще без ошибок все происходит.
            Преполагаю, что можно попробовать цивильно в гуе в поле expressions добавить весь список(он весит до 400Кб) и нормальным образом сохранить, но вот в хинте под этим полем указан список правил, разделенный "|", а вот про сами правила ничего не указано, например как там маски указывать и т.д. Где можно уточнить перевариваемый формат выражений(expressions)?

            Это обычные регулярные выражения - гугл в курсе.
            Маски:
            .   - одиночный символ

            • - неограниченное повторение последнего символа
              .* - соотв любая последовательность
              . - точка
              \ - один слеш
              ^ - от начала строки
              $ - конец строки
              () - скобки ограничивают токен
              [] - скобки допустимые символы
              |  - знак или

            http:\\..mail.ru. - соответствует http:\.mail.ru
            ..mail.ru.((.exe$)|(.php$)|(.zip$)) - соответствует .mail.ru.exe или .mail.ru.php или .mail.ru.zip

            [0-9]* - любая строка из цифр
            [a-zA-Z0-9] - любая цифро-буквенная строка с латиницей

            SquidGuardDoc EN  RU Tutorial
            Localization ru_PFSense

            1 Reply Last reply Reply Quote 0
            • V
              volag
              last edited by

              @dvserg:

              Это обычные регулярные выражения - гугл в курсе.
              Маски:
              .   - одиночный символ

              • - неограниченное повторение последнего символа
                .* - соотв любая последовательность
                . - точка
                \ - один слеш
                ^ - от начала строки
                $ - конец строки
                () - скобки ограничивают токен
                [] - скобки допустимые символы
                |  - знак или

              http:\\..mail.ru. - соответствует http:\.mail.ru
              ..mail.ru.((.exe$)|(.php$)|(.zip$)) - соответствует .mail.ru.exe или .mail.ru.php или .mail.ru.zip

              [0-9]* - любая строка из цифр
              [a-zA-Z0-9] - любая цифро-буквенная строка с латиницей

              То бишь мне по идее достаточно в исходном файле заменить символы перевода строк на символ "|"(получится одна немерянная мегастрока) и вставить все содержимое в это поле?

              1 Reply Last reply Reply Quote 0
              • D
                dvserg
                last edited by

                Думаю так - каждая строка заключается в скобки и | между ними
                (строка1)|(строка2)|(строка3)|(строка4)
                Я не помню реализован ли там разделитель токенов, так что лучше так.

                SquidGuardDoc EN  RU Tutorial
                Localization ru_PFSense

                1 Reply Last reply Reply Quote 0
                • E
                  Eugene
                  last edited by

                  Некисло у вас там кормят, похоже, dvserg -)))

                  http://ru.doc.pfsense.org

                  1 Reply Last reply Reply Quote 0
                  • D
                    dvserg
                    last edited by

                    @Evgeny:

                    Некисло у вас там кормят, похоже, dvserg -)))

                    Ты про аватар? Это мне напоминалка, что пора чуток похудеть.

                    SquidGuardDoc EN  RU Tutorial
                    Localization ru_PFSense

                    1 Reply Last reply Reply Quote 0
                    • V
                      volag
                      last edited by

                      up

                      И все-таки, кому-то интересна кроме меня эта тема?

                      как автоматизировать процесс конвертации списка https://easylist-downloads.adblockplus.org/ruadlist+easylist.txt в удобный для squidguard'а?

                      1 Reply Last reply Reply Quote 0
                      • V
                        volag
                        last edited by

                        Ну собственно как обычно - сам спросил, сам ответил.

                        Все в общем-то работает, но есть проблемы с автоматизацией.

                        Как заработало: в самом первом посте я давал ссылку на сайт, где показано как сконвертировать регулярные выражения. Результат сквидгарду подходит, НО веб-интерфейс бьёт его.
                        Как обойти: я вручную переписал файл expressions (если кому нужен готовый вот я выкинул: http://dl.dropbox.com/u/10649848/expressions), после этого в меню services вручную перезапускаем SquidGuard.

                        Все работает нормально, но только до первого сохранения в веб-морде:(

                        Теперь собственно вопрос к уважаемому dvserg как к специалисту по сквидгарду, как обойти указанную мной проблему? Кстати easylist постоянно обновляется и хотелось бы автоматизировать процесс(крон напряч не проблема - проблема подсунуть сквидгарду непоколеченный перепакованный easylist)

                        Заранее благодарен!

                        1 Reply Last reply Reply Quote 0
                        • D
                          dvserg
                          last edited by

                          Копать GUI-Expressions, чтобы пропускал как есть. Для себя одного это можно сделать, для всех не рискну - если будет ошибка в регулярном выражении - гард упадет в эмерженс мод.

                          SquidGuardDoc EN  RU Tutorial
                          Localization ru_PFSense

                          1 Reply Last reply Reply Quote 0
                          • V
                            volag
                            last edited by

                            Судя по тому, что я вижу, GUI-expressions убивает просто переводы строк. Причем я так понимаю это делается для общего конфигурационного xml-файла.

                            Разница между моим и перегенерированным файлами только в отсутствии символов перевода строки.

                            P.S. Решил я небольшой скрипт написать и скормить его крону, только вот не найду, где лежит скрипт запуска SquidGuard'а?

                            1 Reply Last reply Reply Quote 0
                            • S
                              scooterdouglas
                              last edited by

                              squidGuard and Adblock (Easylist)

                              http://forum.pfsense.org/index.php/topic,19756.0.html

                              ;)

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post
                              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.