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

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

    Scheduled Pinned Locked Moved Russian
    222 Posts 39 Posters 166.3k 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
      sergeyfromkomi
      last edited by

      Спасибо за статью, очень пригодилась… но как посчитать исходящий трафик ipcad-ом в pfsense 2.0-rc-1...? теоретически есть возможность....?

      1 Reply Last reply Reply Quote 0
      • B
        Buch
        last edited by

        @denis-k:

        Скажите, а как можно закрыть статистику, например, паролем?

        Точно не помню где нарыл, может и здесь. Суть в следующем:

        • нужно внести в файл lighty-webConfigurator.conf некоторые изменения, для этого правим файл /etc/inc/system.inc

        делаем так (добавили "mod_auth", ссылку на файл паролей "/.pa.txt" и защищаемый путь):

        
        ...
        ## modules to load
        server.modules              =   (
        									{$captive_portal_module}
        									"mod_access", "mod_accesslog", "mod_expire", "mod_compress", "mod_redirect",
        									"mod_auth", {$module}{$captiveportal}
        								)
        .....
        
        	// Add HTTP to HTTPS redirect
        	if ($captive_portal == false && $config['system']['webgui']['protocol'] == "https" && !isset($config['system']['webgui']['disablehttpredirect'])) {
        		if($lighty_port != "443")
        			$redirectport = ":{$lighty_port}";
        		$lighty_config .= <<<eod<br>\$SERVER["socket"] == ":80" {
        	\$HTTP["host"] =~ "(.*)" {
        		url.redirect = ( "^/(.*)" => "https://%1{$redirectport}/$1" )
        	}
        }
        
        EOD;
        	}
        
        	$lighty_config .= <<<eod<br>auth.backend = "htpasswd"
        auth.backend.htpasswd.userfile = "/.pa.txt"
        auth.require = ( "/lightsquid/" =>
        	(
        		"method"   => "basic",
        		"realm"    => "Statistic",
        		"require"  => "valid-user"
        	)
        )
        
        EOD;
        
        	$fd = fopen("{$filename}", "w");
        ....</eod<br></eod<br> 
        
        • далее создаем файл с паролями /.pa.txt с помощью htpasswd.exe от apache (делал под виндой) и кладем на место

        • перегружаемся и проверяем

        2.2.6-RELEASE  (amd64)  built on Mon Dec 21 14:50:08 CST 2015 FreeBSD 10.1-RELEASE-p25
        AMD Turion™ II Neo N40L Dual-Core Processor Current: 187 MHz, Max: 1497 MHz

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

          Подскажите, где можно скачать rsh, а то по старому пути его нет(((
          и еще не ставиться pkg_add -r compat6x-i386, говорит Error: FTP Unable to get ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/compat6x-i386.tbz: No address record

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

            @strelok:

            Подскажите, где можно скачать rsh, а то по старому пути его нет(((
            и еще не ставиться pkg_add -r compat6x-i386, говорит Error: FTP Unable to get ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/compat6x-i386.tbz: No address record

            1. http://narod.ru/disk/12770498001/rsh.gz.html
            2. Зайти на сайт freebsd найти где там лежат порты, в портах найти путь до compat6x-i386, написать в консоли pkg_add -r и вставить скопирвоанный путь до compat6x-i386, включая имя файла.

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

              Ссылку нашел, но какой путь прописать и название фаила-не пойму ???
              http://www.freebsd.org/cgi/cvsweb.cgi/ports/misc/compat6x/

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

                @strelok:

                Ссылку нашел, но какой путь прописать и название фаила-не пойму ???
                http://www.freebsd.org/cgi/cvsweb.cgi/ports/misc/compat6x/

                не ту ссылку нашёл

                pkg_add -r http://ftp.freebsd.org/pub/FreeBSD/releases/i386/7.3-RELEASE/packages/Latest/compat6x-i386.tbz
                это если pfsense 1.2.3

                P.S. Я в предыдущем посте неверно написал, не порты, а пакеты.

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

                  Установил, спасибо.
                  Все пошло с 4 попытки,когда прочитал формум и понял что надо открыть  агрегацию портов и вуаля!)
                  Только одно НО-разве наормально что в логе есть порты с номером 0,я думал такие вообще не должны отображаться чтобы избежать двойного подсчета

                  1 Reply Last reply Reply Quote 0
                  • A
                    Antip
                    last edited by

                    @Antip:

                    Вопрос снимается, разобрался.

                    Теперь возник другой вопрос, ipcad записывает статистику почты как шттп трафик.
                    Например: скачиваю тундербёрдом письма с gmail.com, mail.ru смотрю как записал это ipcad:
                      rsh localhost show ip accounting

                    
                       Source           Destination    Packets        Bytes  SrcPt DstPt Proto   IF
                    209.85.149.138   192.168.1.1       111       133586      0 64413     6 bge0
                    
                    

                    1. Скачал его я, а не сервер (Destination должен быть 192.168.1.55)
                    2. Порт должен быть 995 или 110 (0 это правило aggregate 3128 into 0)

                    В чём проблема? У меня фрибсд прописан шлюзом, сам проксисервер настроен прозрачно с редиректом pf
                    rdr inet proto tcp from $lan_net to any port www -> 127.0.0.1 port 3128

                    P.S. сейчас ещё заметил, аська по 5190 порту тоже никак не фиксируется, mirc по 6669 порту аналогично.
                    Что фиксируется?! 443 порт, 53, 2041, 5, 9999

                    • up -
                      Подскажите пожалуйста, куда копать? я не могу посчитать и контролировать данный трафик, т.к. если уберу сортировку по порту 3128/80/8080? то трафик будет удваиваться, сквид + ipcad.
                    1 Reply Last reply Reply Quote 0
                    • R
                      rubic
                      last edited by

                      Всем, кто использует данное решение подсчета трафика, необходимо отредактировать файл tolog.sh
                      Причина: при ротации логов squid, возможна ситуация когда файл /var/squid/log/access.log уже переименован в access.log.0, а новый файл access.log еще не создан. Если в это время сработает tolog.sh (а он таки срабатывает в 00:00, как и ротация), то новый файл access.log будет создан самим tolog.sh с владельцем root. В результате squid не сможет писать в него и остановится. Если установлен SquidGuard, то остановится и он. Пользователи не смогут открывать странички.
                      Новый файл tolog.sh (добавлена проверка существования access.log):

                      #!/bin/sh
                      
                      if [ -f "/var/squid/log/access.log" ]
                      then
                      net="192.168.0"
                      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
                      fi
                      
                      
                      1 Reply Last reply Reply Quote 0
                      • Z
                        zar0ku1
                        last edited by

                        сделай чтобы ротация лога сквида проходила в 00:05 и всего делов

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

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

                          Подозреваю (но не уверен, кто бы подсказал?), что при ротации LightSquid'ом новый access.log вообще не создается. А создается он только в момент первой записи в него. Тут уж кто раньше встал - того и тапки. Squid или tolog.sh

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

                            @rubic:

                            Подозреваю (но не уверен, кто бы подсказал?), что при ротации LightSquid'ом новый access.log вообще не создается. А создается он только в момент первой записи в него. Тут уж кто раньше встал - того и тапки. Squid или tolog.sh

                            создается при ротации

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

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

                              Поторопился с определением причины такого поведения. Сегодня сбойнуло уже утром, далеко-далеко от ротации. У access.log владелец root, группа - proxy, и никакие проверки на существование файла естественно не помогают. Сам файл под 2 мега. Жаль не посмотрел содержимое, кто последний в него писал((
                              chown что ли в tolog.sh еще ставить?

                              1 Reply Last reply Reply Quote 0
                              • N
                                NegoroX
                                last edited by

                                а не хард ли подсбаивает перед гибелью? смарт посмотреть (вот только чем его глянуть?

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

                                  @rubic:

                                  Поторопился с определением причины такого поведения. Сегодня сбойнуло уже утром, далеко-далеко от ротации. У access.log владелец root, группа - proxy, и никакие проверки на существование файла естественно не помогают. Сам файл под 2 мега. Жаль не посмотрел содержимое, кто последний в него писал((
                                  chown что ли в tolog.sh еще ставить?

                                  я так и сделал, в конце tolog.sh chown добавил, потому как два раза за полгода файл сменил владельца и сквид встал колом

                                  1 Reply Last reply Reply Quote 0
                                  • I
                                    Ilyuha
                                    last edited by

                                    Чего-то на свеже установленном релизе 2.0 не могу наладить работу ipcad. Делал по инструкции с новым rsh. В access.log нет записей от ipcad. На бетах и РЦ работало. RSH в памяти висит, ipcad в установленных пакетах есть. Помогите ПЖЛ.

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

                                      @Ilyuha:

                                      Чего-то на свеже установленном релизе 2.0 не могу наладить работу ipcad. Делал по инструкции с новым rsh. В access.log нет записей от ipcad. На бетах и РЦ работало. RSH в памяти висит, ipcad в установленных пакетах есть. Помогите ПЖЛ.

                                      а что показывает rsh localhost show ip accounting ?

                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        Ilyuha
                                        last edited by

                                        После 30 сек ожидания

                                        localhost: Operation timed out
                                        
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          rubic
                                          last edited by

                                          top | grep ipcad

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            Ilyuha
                                            last edited by

                                            top | grep ipcad
                                            

                                            нет его
                                            в /cf/conf/config.xml запись есть```
                                            <shellcmd>/usr/local/bin/ipcad -rds</shellcmd>

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