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

    Еще раз о ipcad+squid+lightsquid

    Scheduled Pinned Locked Moved Russian
    222 Posts 39 Posters 166.6k 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.
    • X
      Xammsa
      last edited by

      давайте все сначала
      1. Версия pfSense
      1.2.3-release

      2. Лог загрузки системы в части касающейся ipcad и rsh
      less /var/log/dmesg.boot | grep ipcad
      less /var/log/dmesg.boot | grep rsh
      Ничего не выводят.

      3. Права на ipcad.dump, ipcad.pid, rsh, tolog.sh
      /var/log/ipcad/ipcad.dump: -rw–-----
      /var/log/ipcad/ipcad.pid:    -rw-r--r--
      /root/tolog.sh:                -r-xr-xr-x
      /usr/bin/rsh:                    -r-xr-xr-x

      4. ipcad.conf, tolog.sh, настройки cron дословно

      /usr/local/etc/ipcad.conf:
      capture-ports enable;
      interface de0 filter "ip and dst net 192.168.1.0/24 and not src net 192.168.1.0/24";
      aggregate 192.168.1.0/24 strip 32;
      aggregate 0.0.0.0/0 strip 32;

      aggregate 1-19 into 65535;
      aggregate 20-21 into 21;
      aggregate 22-23 into 22;
      aggregate 24 into 65535;
      aggregate 25 into 25;
      aggregate 26-52 into 65535;
      aggregate 53 into 53;
      aggregate 54-68 into 65535;
      aggregate 69 into 69;
      aggregate 80 into 0;
      aggregate 81-86 into 65535;
      aggregate 87 into 87;
      aggregate 88-109 into 65535;
      aggregate 110 into 110;
      aggregate 111-122 into 65535;
      aggregate 123 into 123;
      aggregate 124-442 into 65535;
      aggregate 443 into 443;
      aggregate 444-2699 into 65535;
      aggregate 2700 into 2700;
      aggregate 2701-3127 into 65535;
      aggregate 3128 into 0;
      aggregate 3129-5189 into 65535;
      aggregate 5190 into 5190;
      aggregate 5191-8079 into 65535;
      aggregate 8080-8081 into 8080;
      aggregate 8082-60128 into 65535;
      aggregate 60129 into 60129;
      aggregate 60130-60178 into 65535;
      aggregate 60179 into 60179;
      aggregate 60180-65535 into 65535;

      rsh enable at 127.0.0.1;
      rsh root@127.0.0.1 admin;
      rsh root@127.0.0.1 backup;
      rsh root@127.0.0.1;
      rsh 127.0.0.1 view-only;

      dumpfile=ipcad.dump;

      chroot=/var/log/ipcad;
      pidfile=ipcad.pid;
      memory_limit=10m;

      /root/tolog.sh
      #!/bin/sh
      cp /var/log/ipcad/ipcad.dump /var/log/ipcad/ipcad.dump.bak
      net="192.168"
      ttime=/usr/bin/rsh localhost sh ip acco | grep 'Accounting data saved' | awk '{print ($4)}'
      rsh localhost clear ip accounting
      rsh localhost show ip accounting checkpoint | grep $net | awk -v vtime=$ttime '{if ($5 != 0) print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log

      вырезка из config.xml с настройками cron:
      <cron><minute>/1</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday></wday>
      <who>root</who>
      <command></command>/root/tolog.sh
      <minute>0</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday></wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 newsyslog
      <minute>1,31</minute>
      <hour>0-5</hour>
      <mday>
      </mday>
      <month></month>
      <wday>
      </wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 adjkerntz -a
      <minute>1</minute>
      <hour>3</hour>
      <mday>1</mday>
      <month></month>
      <wday>
      </wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 /etc/rc.update_bogons.sh
      <minute>/60</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday></wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 sshlockout
      <minute>1</minute>
      <hour>1</hour>
      <mday>
      </mday>
      <month></month>
      <wday>
      </wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 /etc/rc.dyndns.update
      <minute>/60</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday></wday>
      <who>root</who>
      <command></command>/usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 virusprot
      <minute>
      /5</minute>
      <hour></hour>
      <mday>
      </mday>
      <month></month>
      <wday>
      </wday>
      <who>root</who>
      <command></command>/usr/local/bin/checkreload.sh
      <minute>/5</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday></wday>
      <who>root</who>
      <command></command>/etc/ping_hosts.sh
      <minute>
      /140</minute>
      <hour></hour>
      <mday>
      </mday>
      <month></month>
      <wday>
      </wday>
      <who>root</who>
      <command></command>/usr/local/sbin/reset_slbd.sh
      <task_name>lightsquid_parser</task_name>
      <minute>/10</minute>
      <hour>
      </hour>
      <mday></mday>
      <month>
      </month>
      <wday>*</wday>
      <who>root</who>
      <command></command>/usr/bin/perl /usr/local/www/lightsquid/lightparser.pl today</cron>

      5. squid mode и к каким интерфесам привязан
      Transparent, привязан к LAN (de0 - 192.168.1.10)

      6. system лог на тему squid parent process
      less /var/log/system.log | grep squid:  pfSense squid[914]: Squid Parent: child process 916 started
      это все что там есть (после перезагрузки)

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

        @Xammsa:

        /root/tolog.sh
        #!/bin/sh
        cp /var/log/ipcad/ipcad.dump /var/log/ipcad/ipcad.dump.bak
        net="192.168"

        по-моему в разделе net, должно быть 192.168.1

        1 Reply Last reply Reply Quote 0
        • X
          Xammsa
          last edited by

          Не знаю, статитика ipcad прекрасно кладется в access.log и отображается в lightsquid в разрезе локальных ip и показывает трафик по внешним ip и всем портам, кроме 80

          1 Reply Last reply Reply Quote 0
          • R
            rubic
            last edited by

            @DasTieRR:

            net="192.168"

            по-моему в разделе net, должно быть 192.168.1

            это не важно в данном случае,
            net="192.168" будет отлавливать и 192.168.1.0/24 в том числе

            2Xammsa
            ipcad, судя по всему, настроен правильно и работает, дело в squid
            по какой-то причине он у вас не пишет в лог
            собственно, между ipcad и squid связи никакой нет вообще и вырубить squid ipcad не мог
            связь идет только через tolog.sh
            зачем, кстати, там cp /var/log/ipcad/ipcad.dump /var/log/ipcad/ipcad.dump.bak?

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

              @rubic:

              @DasTieRR:

              net="192.168"

              по-моему в разделе net, должно быть 192.168.1

              это не важно в данном случае,
              net="192.168" будет отлавливать и 192.168.1.0/24 в том числе

              Я не знаю важно или нет, но когда я настраивал счётчик, то у меня ничего не считал, пока не выставил подсеть как написал выше.

              1 Reply Last reply Reply Quote 0
              • X
                Xammsa
                last edited by

                @rubic:

                зачем, кстати, там cp /var/log/ipcad/ipcad.dump /var/log/ipcad/ipcad.dump.bak?

                Да так, уже не помню зачем. Видимо хотел посмотреть, появляется в ipcad что-то новое, или все одни и теже значения.

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

                  Ребят подскажите пожалуйста.
                  Сделал все по мануалу в первом посте все нормально завелось, статистику считает на отлично по лану.
                  У меня была другая задача по мимо лана нужно считать статистику по дмз (реальная подсеточка)

                  подправил конфиг ipcad и написал скрипт на подобие tolog.sh, назвал его dmz.sh права 555 \root\dmz.sh , в исходном скрипте убрал "if ($5 != 0)" так как прокси на реальной подсетке не нужен.

                  #!/bin/sh
                  net="77.103.55"
                  ttime=/usr/bin/rsh localhost sh ip acco | grep 'Accounting data saved' | awk '{print ($4)}'
                  rsh localhost clear ip accounting
                  rsh localhost show ip accounting checkpoint | grep $net | awk -v vtime=$ttime '{print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log

                  дабавил его в хрон тем же методом что и указана в первом посте путем востановления подправленного конфига.

                  Не пойму в чем проблема, ручками запускаю  dmz.sh и все нормально складывается в access.log squid, но почему автоматически из хрона этого не происходит, хотя в хроне есть запись аналогичная для tolog.sh.

                  Не знаю в какую сторону копать(

                  И Вопрос такой будет ли правильно работать скрипт такой:

                  #!/bin/sh
                  net="192.168.1"
                  ttime=/usr/bin/rsh localhost sh ip acco | grep 'Accounting data saved' | awk '{print ($4)}'
                  rsh localhost clear ip accounting
                  rsh localhost show ip accounting checkpoint | grep $net | awk -v vtime=$ttime '{if ($5 != 0) print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log
                  net="77.103.55"
                  ttime=/usr/bin/rsh localhost sh ip acco | grep 'Accounting data saved' | awk '{print ($4)}'
                  rsh localhost clear ip accounting
                  rsh localhost show ip accounting checkpoint | grep $net | awk -v vtime=$ttime '{print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log

                  Если я объединю два скрипта в 1.

                  1 Reply Last reply Reply Quote 0
                  • R
                    rubic
                    last edited by

                    #!/bin/sh
                    net="192.168.1"
                    dmz="77.103.55"
                    ttime=/usr/bin/rsh localhost sh ip acco | grep 'Accounting data saved' | awk '{print ($4)}'
                    rsh localhost clear ip accounting
                    rsh localhost show ip accounting checkpoint | grep $net | awk -v vtime=$ttime '{if ($5 != 0) print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log
                    rsh localhost show ip accounting checkpoint | grep $dmz | awk -v vtime=$ttime '{print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log

                    попробуй так, хотя не уверен, надо читать ман по ipcad

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

                      Спасибо, скрипт работает)

                      1 Reply Last reply Reply Quote 0
                      • X
                        Xammsa
                        last edited by

                        Не могу запустить tolog.sh. Пишет "Command not found"
                        Права на файл: -r-xr-xr-x.
                        ipcad запускается.

                        1 Reply Last reply Reply Quote 0
                        • Z
                          zar0ku1
                          last edited by

                          @Xammsa:

                          Не могу запустить tolog.sh. Пишет "Command not found"
                          Права на файл: -r-xr-xr-x.
                          ipcad запускается.

                          как ты его запускаешь? где он лежит?

                          закрывайте темы, если ответ на ваш вопрос полон.
                          если схема сложная - не поленитесь ее нарисовать

                          1 Reply Last reply Reply Quote 0
                          • X
                            Xammsa
                            last edited by

                            в /root.
                            запускаю /root/tolog.sh
                            Это второй роутер, первый настроил и успешно запускается по крону. Тут непонятно. Разницы в настройках роутеров не вижу.

                            1 Reply Last reply Reply Quote 0
                            • Z
                              zar0ku1
                              last edited by

                              @Xammsa:

                              в /root.
                              запускаю /root/tolog.sh
                              Это второй роутер, первый настроил и успешно запускается по крону. Тут непонятно. Разницы в настройках роутеров не вижу.

                              chmod +x /root/tolog.sh

                              закрывайте темы, если ответ на ваш вопрос полон.
                              если схема сложная - не поленитесь ее нарисовать

                              1 Reply Last reply Reply Quote 0
                              • X
                                Xammsa
                                last edited by

                                все по-прежнему

                                1 Reply Last reply Reply Quote 0
                                • Z
                                  zar0ku1
                                  last edited by

                                  @Xammsa:

                                  все по-прежнему

                                  cd /root/
                                  ./tolog.sh

                                  закрывайте темы, если ответ на ваш вопрос полон.
                                  если схема сложная - не поленитесь ее нарисовать

                                  1 Reply Last reply Reply Quote 0
                                  • X
                                    Xammsa
                                    last edited by

                                    Все по-прежнему

                                    1 Reply Last reply Reply Quote 0
                                    • Z
                                      zar0ku1
                                      last edited by

                                      @Xammsa:

                                      Все по-прежнему

                                      скриншот покажи консоли как ты вводишь команды и что выводится

                                      закрывайте темы, если ответ на ваш вопрос полон.
                                      если схема сложная - не поленитесь ее нарисовать

                                      1 Reply Last reply Reply Quote 0
                                      • X
                                        Xammsa
                                        last edited by

                                        Вот:

                                        tolog.jpg
                                        tolog.jpg_thumb

                                        1 Reply Last reply Reply Quote 0
                                        • F
                                          falcon39
                                          last edited by

                                          @Xammsa:

                                          Не знаю, статитика ipcad прекрасно кладется в access.log и отображается в lightsquid в разрезе локальных ip и показывает трафик по внешним ip и всем портам, кроме 80

                                          У меня та же проблема, такое чувство что файл остается открытым и squid не может туда ничего записать. Хотя могу ошибаться так как с freebsd недавно начал разбираться.

                                          1 Reply Last reply Reply Quote 0
                                          • Z
                                            zar0ku1
                                            last edited by

                                            @falcon39:

                                            У меня та же проблема, такое чувство что файл остается открытым и squid не может туда ничего записать. Хотя могу ошибаться так как с freebsd недавно начал разбираться.

                                            ошибаешься

                                            закрывайте темы, если ответ на ваш вопрос полон.
                                            если схема сложная - не поленитесь ее нарисовать

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