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

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

    Scheduled Pinned Locked Moved Russian
    222 Posts 39 Posters 169.1k 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.
    • D Offline
      djlexx
      last edited by

      @Xammsa:

      Чертовщина. Сегодня в access.log не попадают данные самого squid'a! Есть только записи ipcad, ни одной со словом GET http.
      Перезагрузил роутер, записи стали появляться, потом снова только ipcad.

      Ага,тоже такое замечал.Или например такая бага,что пишутся в логах только IP,а имена сайтов нет.

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

        Солнышко мое, опять в логах только записи ipcad'a.

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

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

          SquidGuardDoc EN  RU Tutorial
          Localization ru_PFSense

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

            давайте все сначала
            1. Версия pfSense
            2. Лог загрузки системы в части касающейся ipcad и rsh
            3. Права на ipcad.dump, ipcad.pid, rsh, tolog.sh
            4. ipcad.conf, tolog.sh, настройки cron дословно
            5. squid mode и к каким интерфесам привязан
            6. system лог на тему squid parent process

            1 Reply Last reply Reply Quote 0
            • X Offline
              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 Offline
                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 Offline
                  Xammsa
                  last edited by

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

                  1 Reply Last reply Reply Quote 0
                  • R Offline
                    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 Offline
                      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 Offline
                        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 Offline
                          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 Offline
                            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 Offline
                              swat
                              last edited by

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

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

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

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

                                  @Xammsa:

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

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

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

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

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

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

                                      @Xammsa:

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

                                      chmod +x /root/tolog.sh

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

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

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

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

                                          @Xammsa:

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

                                          cd /root/
                                          ./tolog.sh

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

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

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

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