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

    Какую версию взять под задачи?

    Scheduled Pinned Locked Moved Russian
    25 Posts 6 Posters 10.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.
    • S
      StanislawK
      last edited by

      Предистория.
      В одном дальнем офисе уже используется pFsense 2.0 BETA 4.  В принципе пока нравится. Был выявлен один странный баг. Настройки OpenVPN клиента применялись методом "save + reboot".  На поиски чего и было убито два дня.

      Есть головной офис маленького ИЧП.
      Два физических интерфейса в интернет.  wan1  wan2
      Физический интерфейс "VPN" L2.
      И конечно физический интерфейс в LAN.

      Есть два офиса связь с которыми осуществляется через физический интерфейс VPN (у этих офисов других каналов связи нет).
      При этом есть удаленный офис доступный только через интернет (вот там и есть pFsense 2.b4).
      И есть офис, доступный часто через интерфейс VPN, иногда через интернет.

      Сейчас это дело разруливает FreeBSD 8.0.  Но специалист настроивший нам кусочек счастья - уволился. Нового брать не хотят. В поисках условно простой системы администрирования, с условием опыта эксплуатации pFsense возникла Мысль - перевести все офисы со шлюзов с консольной FreeBSD на версию с веб админкой.

      В головном офисе нужно (хочется) разрулить трафик между WAN (по приоритетам, по удаленным хостам, по протоколам, ).  При падении одного из каналов - соответственно весь трафик зарулить в живой. При поднятии - вернуть "как было".

      Поднять OpenVPN сервер, и гонять трафик к удаленным офисам только внутри VPN, даже если между ними "прямой провод" физического интерфейса VPN. Учредителю с ноута по PPtP ходить на локальные ресурсы и пугать планктон распечатывая "я бумажко ползу к владелицу" на сетевых принтерах.

      В головном офисе SIP Asterisk. В дальних офисах телефонов пока нет и других не предвидится. Соответственно из дальних офисов обеспечить коннект с Asterisk.

      Ну и в силу того что народ оборзел и ничего не боится, зарезать всякие вконтактики и одноглазиков вместе с порнотубами. Часть сайтов зарезать вовсе. Часть запретить избранным, части избранных разрешить всё. Запретить ходить из LAN на "неправильные" порты. торренты и дома можно покачать.

      Установленная сейчас FreeBSD не умеет ограничивать скорость. Не умеет переключать wan1-wan2.

      Поставил в виртуалку pFsense 2.0B5  Сразу возникают вопросы:

      1. transparent squid вроде как работает.
      2. LightSquid не создает репортов
      3. SquidGuard установился, но ничего не ограничивает.
      4. Нужен ли FreeSWITCH  в качестве локального прокси для конкретного дальнего офиса, или лучше всех напрямую заводить на центральный Asterisk?

      Посоветуйте что нибудь, или отговорите на что нибудь другое.

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

        @StanislawK:

        Поставил в виртуалку pFsense 2.0B5   Сразу возникают вопросы:

        1. transparent squid вроде как работает.
        2. LightSquid не создает репортов
        3. SquidGuard установился, но ничего не ограничивает.
        4. Нужен ли FreeSWITCH  в качестве локального прокси для конкретного дальнего офиса, или лучше всех напрямую заводить на центральный Asterisk?

        1. OK
        2. Неизчего их создавать - проверьте логи сквида.
        3. Нужно настроить - само не ограничит.

        SquidGuardDoc EN  RU Tutorial
        Localization ru_PFSense

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

          @dvserg:

          @StanislawK:

          Поставил в виртуалку pFsense 2.0B5   Сразу возникают вопросы:

          1. transparent squid вроде как работает.
          2. LightSquid не создает репортов
          3. SquidGuard установился, но ничего не ограничивает.
          4. Нужен ли FreeSWITCH  в качестве локального прокси для конкретного дальнего офиса, или лучше всех напрямую заводить на центральный Asterisk?

          1. OK
          2. Неизчего их создавать - проверьте логи сквида.
          3. Нужно настроить - само не ограничит.

          1 сомнительно. ip.yandex.ru про прокси молчит. x-forward-for, и тп типичное отсутствует напрочь.

          2 ну так я специально лазал через него (pfsense as default router, squid as transparent) и в то время, когда pfsense перезагружался инет не работал. и лог сквида в принципе сайты записал. я смотрел.

          3 настроить - ясное дело. как настроить?  SquidGuard установленный по умолчанию тянет с собой пачку пресетов. несколько десятков групп с названиями "прон" "адсенс" и прочий "цп". а тут вебморда непонятная. в чем и состоит претензия на 90%.

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

            Я может быть, если внедрение пройдет хорошо, поспособствую в организации вебморды к squidguard. Чисто из ненависти к рекламе.

            Есть ли мануал, как\на чем писать вебморды к pFsense?

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

              В LS есть кнопка обновить. Что с ним за проблемы? Первоначальную настройку сделали?
              По squidGuardкакие претензии/предложения к интерфейсу?

              SquidGuardDoc EN  RU Tutorial
              Localization ru_PFSense

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

                @dvserg:

                В LS есть кнопка обновить. Что с ним за проблемы? Первоначальную настройку сделали?
                По squidGuardкакие претензии/предложения к интерфейсу?

                Кнопка есть, но нажимай ты её не нажимай, ручками ли запускаем lightparser.pl результат один:

                LigthSquid diagnostic.
                Error : report folder '/var/lightsquid/report' not contain any valid data!

                Это для 2.0-BETA5 (i386)  в 4 бете тоже самое.

                К squidGuard претенизий нет, есть пожелание в штатной установке сразу иметь пресеты Destination. Чтобы не забивать руками.

                Вот почему, при аплоаде блэклитса (с http://www.shallalist.de/ например)  на закладке Destination пусто?  Я буквально случайно сунулся создавать новый ACL и увидел что там появились Destination categories (и то, когда сделал click). Сам вид этих категорий, к стати, тоже неудобен. строчки расползлись широко и сложно отследить к чему относится acces.

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

                  @StanislawK:

                  @dvserg:

                  В LS есть кнопка обновить. Что с ним за проблемы? Первоначальную настройку сделали?

                  Кнопка есть, но нажимай ты её не нажимай, ручками ли запускаем lightparser.pl результат один:

                  LigthSquid diagnostic.
                  Error : report folder '/var/lightsquid/report' not contain any valid data!

                  Это для 2.0-BETA5 (i386)  в 4 бете тоже самое.

                  Проверьте разрешения на файл /var/squid/log/access.log. У меня 640/proxy

                  @StanislawK:

                  К squidGuard претенизий нет, есть пожелание в штатной установке сразу иметь пресеты Destination. Чтобы не забивать руками.

                  Какие именно? С ним идет уже sample база 2002 года давности. Можно скачать и установить http://www.shallalist.de/Downloads/shallalist.tar.gz базу.

                  SquidGuardDoc EN  RU Tutorial
                  Localization ru_PFSense

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

                    Ладно. с внешним видом ACL s squidGuard разобрался. Мне так больше нравится.

                    Правка пары строк в одной функции  файлик: /usr/local/pkg/squidguard.inc

                    
                    # -----------------------------------------------------------------------------
                    # make_grid_controls
                    # -----------------------------------------------------------------------------
                    function make_grid_controls($type, $items, $enable_overtime = true) {
                        global $g;
                    
                        $res = '';
                        $tbl = '';
                        $color = '';
                        $color2 = '';
                        $x = 0;
                    
                        foreach($items as $item) {
                            if ($x === 0) {
                                $color = 'style="background-color: #ccffcc;"';
                                $color2 = 'style="background-color: #dddddd;"';
                                $x = 1;
                            }
                            else {
                                $color = 'style="background-color: #dddddd;"';
                                $color2 = 'style="background-color: #ccffcc;"';
                                $x = 0;
                            }
                    
                            $name    = trim($item['name']);
                            $upt_val = $item['upt_value'];
                            $ovt_val = $item['ovt_value'];
                            $description = $item['description'];
                    
                            if (!$name) continue; # skip empty
                    
                            $sel = "selected=\"selected\"";
                            $upt_A = $upt_B = $upt_C = $upt_D = '';
                            switch($upt_val) {
                                case "allow": $upt_B = $sel; break;
                                case "white": $upt_C = $sel; break;
                                case "deny" : $upt_D = $sel; break;
                                default:      $upt_A = $sel; break;
                            }
                    
                            $ovt_A = $ovt_B = $ovt_C= $ovt_D = '';
                            switch($ovt_val) {
                                case "allow": $ovt_B = $sel; break;
                                case "white": $ovt_C = $sel; break;
                                case "deny" : $ovt_D = $sel; break;
                                default:      $ovt_A = $sel; break;
                            }
                            unset($sel);
                    
                            $tbl .= "";
                            # uptime table
                            $tnm  = PREF_UPTIME . $name;
                            $tbl .= "<select id="$tnm" name="\&quot;$tnm\&quot;">";        if ($name !== "all"/*substr_count($name, "all") === 0*/) {            $tbl .= "<option value="none&nbsp;" name="\&quot;----\&quot;&nbsp;" $upt_a="">----</option>";            $tbl .= "<option value="white" name="\&quot;white\&quot;" $upt_c="">whitelist</option>";            $tbl .= "<option value="deny&nbsp;" name="\&quot;deny\&quot;&nbsp;" $upt_d="">deny</option> ";            $tbl .= "<option value="allow" name="\&quot;allow\&quot;" $upt_b="">allow</option>";        }        else {            $tbl .= "<option value="allow" name="\&quot;allow\&quot;" $upt_b="">allow</option>";            $tbl .= "<option value="deny&nbsp;" name="\&quot;deny\&quot;&nbsp;" $upt_d="">deny</option> ";        }        $tbl .= "";        $tbl .= "access to";        $tbl .= "$description [$name]";        $tbl .= " ";        # overtime table        if ($enable_overtime) {            $tnm  = PREF_OVERTIME . $name;            $tbl .= "</select>";
                                if ($name !== "all"/*substr_count($name, "all") === 0*/) {
                                    $tbl .= "<option value="none&nbsp;" name="\&quot;----\&quot;&nbsp;" $ovt_a="">----</option>";
                                    $tbl .= "<option value="white" name="\&quot;white\&quot;" $ovt_c="">whitelist</option>";
                                    $tbl .= "<option value="deny&nbsp;" name="\&quot;deny\&quot;&nbsp;" $ovt_d="">deny</option> ";
                                    $tbl .= "<option value="allow" name="\&quot;allow\&quot;" $ovt_b="">allow</option>";
                                }
                                else {
                                    $tbl .= "<option value="allow" name="\&quot;allow\&quot;" $ovt_b="">allow</option>";
                                    $tbl .= "<option value="deny&nbsp;" name="\&quot;deny\&quot;&nbsp;" $ovt_d="">deny</option> ";
                                }
                                $tbl .= "";
                                $tbl .= "access to";
                                $tbl .= "$description [$name]";
                                $tbl .= " ";
                            }
                            $tbl .= "";
                        }
                    
                        # header
                        if (!empty($tbl)) {
                            $color = 'style="background-color: #dddddd;"';
                            $thdr = '';
                            $hdr1up = "<big>Destination Categories</big>";
                            $hdr1ov = "<big>Destination Categories in overtime</big>";
                            $hds3   = "ACCESS: 'whitelist' - always pass; 'deny' - block; 'allow' - pass, if not blocked.";
                            if ($enable_overtime) {
                                $thdr .= "$hds3";
                                $thdr .= "$hdr1up$hdr1ov";
                                $thdr .= "If **'Time'** not defined, this is column will be ignored.";
                                # formatting
                    ######### $thdr .= "";
                            }
                            else {
                                $thdr .= "$hds3
                    
                    * * *
                    
                    ";
                                $thdr .= "$hdr1up";
                                # formatting
                    ######### $thdr .= "";
                            }
                    
                            $res .= " $thdr $tbl 
                    
                    ";
                    
                            $rstyle = "";
                            $ha = "" .
                                  "" .
                                  "<big>Destination Categories (click)</big> " .
                                  "![](./themes/{$g[ "Show rules") " .
                                  "" .
                                   "" .
                                  "![](./themes/{$g[ "Hide rules")" .
                                  "" .
                                  "";
                            $res = "
                    
                    * * *
                    
                    $ha$res";
                    
                        }
                        return $res;
                    } 
                    ``` ![pfsense-squidguard-acl.jpg](/public/_imported_attachments_/1/pfsense-squidguard-acl.jpg)
                    ![pfsense-squidguard-acl.jpg_thumb](/public/_imported_attachments_/1/pfsense-squidguard-acl.jpg_thumb)
                    1 Reply Last reply Reply Quote 0
                    • D
                      dvserg
                      last edited by

                      Ну это конечно на вкус и цвет. Мне больше нравятся "корпоративные" цвета.

                      SquidGuardDoc EN  RU Tutorial
                      Localization ru_PFSense

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

                        В общем то без разницы какие цвета, если они не режут глаз и не мешают восприятию информации. В данном случае читабельность улучшилась за счет выделения  строки и перемены мест колонок. В серединке пустая колонка тоже удачно разделяет.

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

                          @StanislawK:

                          В общем то без разницы какие цвета, если они не режут глаз и не мешают восприятию информации. В данном случае читабельность улучшилась за счет выделения  строки и перемены мест колонок. В серединке пустая колонка тоже удачно разделяет.

                          В идеале хотелось-бы иметь вместо скрытой таблички табличку в скроллбоксе строк так на 5-7.

                          SquidGuardDoc EN  RU Tutorial
                          Localization ru_PFSense

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

                            @dvserg:

                            @StanislawK:

                            @dvserg:

                            В LS есть кнопка обновить. Что с ним за проблемы? Первоначальную настройку сделали?

                            Кнопка есть, но нажимай ты её не нажимай, ручками ли запускаем lightparser.pl результат один:

                            LigthSquid diagnostic.
                            Error : report folder '/var/lightsquid/report' not contain any valid data!

                            Это для 2.0-BETA5 (i386)  в 4 бете тоже самое.

                            Проверьте разрешения на файл /var/squid/log/access.log. У меня 640/proxy

                            Да. права правильные. Я его удалял по ssh. Squid сам и создавал со своими правами.

                            -rw-r–---  1 proxy  proxy    0B Jan 26 00:00 access.log

                            @dvserg:

                            @StanislawK:

                            К squidGuard претенизий нет, есть пожелание в штатной установке сразу иметь пресеты Destination. Чтобы не забивать руками.

                            Какие именно? С ним идет уже sample база 2002 года давности. Можно скачать и установить http://www.shallalist.de/Downloads/shallalist.tar.gz базу.

                            Не так. Допустим пресеты там есть. Только почему их не видно на "табе"  Destination ?
                            Я увидел что там пусто, скачал и установил один набор, опять пусто. Скачал установил другой набор - пусто. и так 5 раз. только заглянув в логи увидел что оно качает и устанавливает. а так - полное впечатление что нихренчего не работает.
                            Это только случайность, что я в ACL попробовал создать ACL и увидел там в Destination в свернутом виде.
                            А поредактировать их? я может быть свой один любимый прон сайт исключить хочу?

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

                              Да. squid/log/access.log пустой.    не смотря на галочку transparent proxy  запросы идут мимо сквида.
                              в Firewall нет ничего похожего на правило, по редиректу запросов на 80 порт в squid.

                              Руками из вебморды не создается.

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

                                Destinations - это user-defined списки. Подредактировать/сохранить блэклисты через Гуй не получится, т.к. гонять файлы в 14 метров смысла нет. Для любимых порносайтов создаем в Destinations новую категорию с нашим сайтом, а в ACL выбираем для него access='white'. Это будет разрешать категорию ДО любого запрета.

                                Что касается загрузки блэклистов - да, есть такое неудобство. Думаю, как только будет решен вопрос с совместимости кода с 2.0 и с 1.2.3, появится немного переработанный вариант управления загрузкой (прогресс, логи обработки).

                                @StanislawK:

                                Да. squid/log/access.log пустой.    не смотря на галочку transparent proxy  запросы идут мимо сквида.
                                в Firewall нет ничего похожего на правило, по редиректу запросов на 80 порт в squid.

                                Руками из вебморды не создается.

                                Прямое указание браузеру использовать прокси эффекта не дает тоже?

                                SquidGuardDoc EN  RU Tutorial
                                Localization ru_PFSense

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

                                  @dvserg:

                                  Destinations - это user-defined списки. Подредактировать/сохранить блэклисты через Гуй не получится, т.к. гонять файлы в 14 метров смысла нет. Для любимых порносайтов создаем в Destinations новую категорию с нашим сайтом, а в ACL выбираем для него access='white'. Это будет разрешать категорию ДО любого запрета.

                                  Что касается загрузки блэклистов - да, есть такое неудобство. Думаю, как только будет решен вопрос с совместимости кода с 2.0 и с 1.2.3, появится немного переработанный вариант управления загрузкой (прогресс, логи обработки).

                                  В свежем один на 18 метров с проном, один на 1 метр, и все. Остальные смешного объема. Можно вполне придумать редактор, с постраничным (килобайт по 100-300 \ или строк по 100-300) листанием.

                                  @dvserg:

                                  @StanislawK:

                                  Да. squid/log/access.log пустой.    не смотря на галочку transparent proxy  запросы идут мимо сквида.
                                  в Firewall нет ничего похожего на правило, по редиректу запросов на 80 порт в squid.
                                  Руками из вебморды не создается.

                                  Прямое указание браузеру использовать прокси эффекта не дает тоже?

                                  Прямое дает.

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

                                    На 2.0 должны быть файлы в /tmp вида pkg чего-то-там rules, в которых правила для указанного пакета (если они формируются). И что еще говорится в syslog ?

                                    SquidGuardDoc EN  RU Tutorial
                                    Localization ru_PFSense

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

                                      pFsense 2.0 beta 5 + SQUID 2.7.9_4

                                      Достаточно ли в веб конфигураторе установить кыржик "Transparent proxy    v"
                                      или необходимо произвести еще и некие нелепые телодвижения?

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

                                        @dvserg:

                                        На 2.0 должны быть файлы в /tmp вида pkg чего-то-там rules, в которых правила для указанного пакета (если они формируются).

                                        имеется в виду rules.debug с активными правилами pf ?
                                        там только одно упоминание порта 80 (оно же единственное и для HTTP)

                                        pass  out  proto tcp  from any to any port 80  queue (qOthersDefault,qACK)  label "USER_RULE: m_Other HTTP outbound"

                                        @dvserg:

                                        И что еще говорится в syslog ?

                                        Jan 26 12:43:36 pfsense avahi-daemon[47806]: Server startup complete. Host name is pfsense.mrc.local. Local service cookie is 2343502676.
                                        Jan 26 12:43:37 pfsense avahi-daemon[47806]: Service "pfsense" (/usr/local/etc/avahi/services/ssh.service) successfully established.
                                        Jan 26 12:43:37 pfsense avahi-daemon[47806]: Service "SFTP File Transfer on pfsense" (/usr/local/etc/avahi/services/sftp-ssh.service) successfully established.
                                        Jan 26 12:43:39 pfsense Squid_Alarm[12410]: Squid has exited.  Reconfiguring filter.
                                        Jan 26 12:43:39 pfsense Squid_Alarm[12899]: Attempting restart…
                                        Jan 26 12:43:39 pfsense squid[14126]: Squid Parent: child process 14673 started
                                        Jan 26 12:43:42 pfsense Squid_Alarm[15704]: Reconfiguring filter…
                                        Jan 26 12:43:43 pfsense Squid_Alarm[30982]: Squid has resumed. Reconfiguring filter.
                                        Jan 26 12:50:07 pfsense php: /pkg_edit.php: Reloading Squid for configuration sync
                                        Jan 26 12:50:07 pfsense check_reload_status: reloading filter
                                        Jan 26 12:50:08 pfsense check_reload_status: syncing firewall
                                        Jan 26 12:50:08 pfsense check_reload_status: reloading filter
                                        Jan 26 12:50:09 pfsense php: /pkg_edit.php: Reloading Squid for configuration sync
                                        Jan 26 12:50:09 pfsense check_reload_status: reloading filter

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

                                          @StanislawK:

                                          pFsense 2.0 beta 5 + SQUID 2.7.9_4

                                          Достаточно ли в веб конфигураторе установить кыржик "Transparent proxy    v"
                                          или необходимо произвести еще и некие нелепые телодвижения?

                                          Должно быть достаточно.

                                          Правило вида
                                          rdr on $iface proto tcp from any to !($iface) port 80 -> 127.0.0.1 port 80

                                          SquidGuardDoc EN  RU Tutorial
                                          Localization ru_PFSense

                                          1 Reply Last reply Reply Quote 0
                                          • Tim2000T
                                            Tim2000
                                            last edited by

                                            Друзья, а не научились ещё пфСенсе запихивать на железки?
                                            Счас стоит системник старый, неплохо было бы на какой-нибудь роутер залить пфСенсе.. И стоял бы он как модем, малюсенький :)

                                            ¡ʁɔvʎнdǝʚǝdǝu dиw

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