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

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

    Scheduled Pinned Locked Moved Russian
    222 Posts 39 Posters 167.7k 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.
    • Z
      zar0ku1
      last edited by

      @Broodval:

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

      Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted

      проверь есть ли папка /var/log/ipcad
      если есть проверь, есть ли права на запись и все

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

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

        Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted

        если есть проверь, есть ли права на запись и все

        Спасибо что помогаете!
        Папка есть, права на папку 0777, группа: whell, владелец: root.
        На ipcad.pid и ipcad.dump выставил такие же права (0777), не помогло.
        Пробовал различный варианты, которые были описаны по этой проблеме выше.

        Мои текущие параметры:
        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:    -rwxrwxrwx
        /root/tolog.sh:                -rwxr-xr-x
        /usr/bin/rsh:                    -r-xr-xr-x

        4. ipcad.conf

        #
        # Configuration file for ipcad - Cisco IP accounting simulator daemon.
        # Copyright (c) 2001, 2002, 2003, 2004, 2005
        # 	Lev Walkin <vlm@lionet.info>.
        #
        # Please see ipcad.conf(5) for additional explanations.
        # Please contact me if you have troubles configuring ipcad. My goal is to make
        # initial configuration easier for new users, so your input is valuable.
        #
        
        ##################
        # GLOBAL OPTIONS #
        ##################
        
        #
        # Enable or disable capturing UDP and TCP port numbers, IP protocol and
        # ICMP types for RSH output.
        #
        #     capture-ports {enable|disable} ;
        #
        # Enabling this will BREAK Cisco RSH output format compatibility,
        # increase memory requirements and may slow down traffic processing.
        # This option takes effect IMMEDIATELY, that is, it can be specified
        # multiple times, even between interfaces configuration.
        # This option has NO effect on NetFlow operation (NetFlow always captures
        # port information).
        #
        
        capture-ports enable;
        
        #
        # Buffers to be used for transferring the data from the kernel,
        # if applicable (BPF, ULOG).
        # Using larger buffers may increase the performance but will
        # affect responsiveness.
        #
        # buffers = <number>[{k|m}] ;
        #
        # Reasonable defaults are used if this parameter is not set.
        #
        
        ## buffers = 64k;
        
        #####################
        # INTERFACE OPTIONS #
        #####################
        
        #
        # interface <iface>[ promisc ] [ input-only ]
        #			[ netflow-disable ] [ filter "<pcap_filter>" ] ;
        # OR
        # interface ulog group <group>[, group <group>...]
        #			[ netflow-disabled ];
        # OR
        # interface ipq [ netflow-disabled ];	# man libipq(3)
        # OR
        # interface {divert|tee} port <divert-port># man divert(4)
        #			[ input-only ] [ netflow-disabled ];
        # OR
        # interface file <tcpdump-output.pcap>[ netflow-disabled ];
        #
        # Options meaning:
        #
        # promisc:
        # 	Put interface into promiscuous mode.
        # 	This enables listening for the packets which are not destined for
        # 	this host and thus ipcad will count and display all the traffic within
        # 	the local network. Note that the interface might be in promiscuous mode
        # 	for some other reason.
        #
        # input-only: 
        # 	Use kernel feature of counting only incoming packets.
        #
        # netflow-sampled: 	(DO NOT ENABLE THIS OPTION, unless you have to!)
        # 	If the NetFlow export mechanism is used, this option instructs
        #	the interface to supply only one out of N packets to the NetFlow
        #	accounting code, thus lowering the CPU requirements. The value of N
        #	is configured explicitly in a NetFlow configuration section.
        #	NOTE: This option is NOT used to enable NetFlow on the interface,
        #	it just modifies the NetFlow behavior on this interface.
        #	DO NOT ENABLE THIS OPTION, UNLESS YOU HAVE TO!
        #
        # netflow-disable: 
        #	By default, all interfaces are included into NetFlow accounting.
        #	This option is used to disable NetFlow on a particular interface.
        #
        # filter: 
        # 	Install a custom filter on packets instead of basic
        #	IP protocol filter. Requires libpcap (even if BPF is being used).
        #	May be employed to eliminate CPU overhead on passing unnecessary
        #	data between the kernel and user space (by installing the filter
        #	directly into the kernel).
        #
        # NOTES:
        #  * "input-only" directive must be supported by kernel.
        #    Probably, you were noticed about it during the compilation process
        #    if it was not supported.
        #    FreeBSD 3.x and elder kernels do not support this feature.
        #  * ULOG packet source (interface ulog) is supported under
        #    Linux >= 2.4.18-pre8.
        #    You should configure iptables to dump the packet stream
        #    into the appropriate group, i.e.:
        #        iptables -A OUTPUT -j ULOG --ulog-nlgroup <group>#    Given ULOG groups will be OR'ed together.
        #  * A wildcard (*) may be specified as part of an interface name.
        #
        
        interface bge0 filter "ip and dst net 10.10.200.0/24 and not src net 10.10.200.0/24";
        
        #
        # aggregate <ip>/ <masklen>strip <maskbits>;
        #
        # Aggregate addresses from the specified network (<ip>/<masklen>),
        # by AND'ing with specified mask (<maskbits>).
        #
        #
        
        aggregate 10.10.200.0/24 strip 32; /* Don't aggregate internal range */
        aggregate 0.0.0.0/0 strip 32;	/* Aggregate external networks */
        
        #
        # aggregate <port_range_start>[-<port_range_end>] into <port>;
        #
        # Aggregate port numbers. Meaningful only if capture-ports is enabled.
        #
        
        #aggregate 1024-65535	into 65535;	/* Aggregate wildly */
        #aggregate 3128-3128	into 3128;	/* Protect these ports */
        #aggregate 150-1023	into 1023;	/* General low range */
        aggregate 3128-3128 into 0;
        aggregate 80-80 into 0;
        ##########################
        # NetFlow EXPORT OPTIONS #
        ##########################
        
        #
        # Enable Cisco NetFlow export method.
        # NetFlow uses UDP to feed flow information to the receiver.
        # If the destination is not specified, NetFlow is disabled.
        #
        
        # netflow export destination 127.0.0.1 9996;
        netflow export version 5;	# NetFlow export format version {1|5}
        netflow timeout active 30;	# Timeout when flow is active, in minutes
        netflow timeout inactive 15;	# Flow inactivity timeout, in seconds
        netflow engine-type 73;		# v5 engine_type; 73='I' for "IPCAD"
        netflow engine-id 1;		# Useful to differentiate multiple ipcads.
        
        # The following option is enabled by the "netflow-sampled" interface flag.
        #netflow sampling-mode packet-interval 10;   # 1 out of 10 packets accounted
        # DO NOT ENABLE THIS UNLESS YOU KNOW WHAT ARE YOU DOING.
        
        #
        # NetFlow protocol exports an SNMP id instead of the interface name
        # (i.e., "eth0", "ppp32"). The following statements options define
        # mapping between the interface names and a set of "SNMP identifiers".
        #
        netflow ifclass eth mapto 0-99;		# i.e., "eth1"->1, "eth3"->3
        netflow ifclass fxp mapto 0-99;		# i.e., "fxp4"->4, "fxp0"->0
        netflow ifclass ppp mapto 100-199;	# i.e., "ppp32"->532, "ppp7"->507
        netflow ifclass gre mapto 200-299;
        netflow ifclass tun mapto 300-399;	# i.e., "tun0"->300
        
        ######################
        # RSH SERVER OPTIONS #
        ######################
        
        #
        # Enable RSH Server:
        #
        #   rsh {enable|yes|on|disable|no|off} [at <listen_ip>];
        #
        # If "at <listen_ip>" omitted, rsh server listens on IP address 0.0.0.0,
        # which may be undesirable.
        #
        
        rsh enable at 127.0.0.1;
        
        #
        # RSH access rules:
        #
        # rsh [<user>@] <host_addr>{admin|backup|[default]|view-only|deny} ;
        #
        
        rsh root@127.0.0.1 admin;	/* Can shutdown ipcad */
        rsh root@127.0.0.1 backup;	/* Can dump/restore/import accounting table */
        rsh root@127.0.0.1;		/* Can view and modify accounting tables */
        /* Note the order! */
        #rsh luser@127.0.0.1 deny;	/* Deny this user from even viewing tables */
        rsh 127.0.0.1 view-only;	/* Other users can view current tables */
        
        # Keep IP packet time to live reasonably low to avoid remote attacks.
        # (The rsh client must reside no more than three hops away from the
        # router running ipcad.)
        rsh ttl = 3;
        
        # Set rsh timeout for the same purpose.
        rsh timeout = 30;
        
        #
        # Dump active IP accounting table to this file on exit and read on startup.
        # (read about -s and -r options in ipcad(8) manual page)
        # NOTE: This setting has no effect on NetFlow operation. The flow cache
        #       contents are flushed to the collector upon ipcad termination.
        #
        
        dumpfile = /var/log/ipcad/ipcad.dump;	# The file is inside chroot(), see below...
        
        #################
        # OTHER OPTIONS #
        #################
        
        #
        # Chroot to this directory before processing.
        #
        # Of course, you could disable chroot()'ing by commenting it out,
        # but it is not recommended, so I left this confusing default
        # to encourage you to change it.
        #
        
        chroot = /var/log/ipcad;
        
        #
        # File to keep getpid() in it. ipcad will also hold a lock.
        #
        # WARNING: Pidfile is created AFTER chroot()'ing, so if you're using
        # chroot statement above, make sure the path to the pidfile exists
        # inside chrooted environment.
        #
        
        pidfile = ipcad.pid;
        
        #
        # UID/GID privileges dropping
        # Please note: RSH service will be UNAVAILABLE when uid is not zero.
        # Use it only when you know what are you doing (i.e., NetFlow without RSH).
        #
        # uid = 65534;
        # gid = 65534;
        
        #
        # Few useful settings.
        #
        #
        # Memory usage limit for storing per-stream entries.
        # 
        # memory_limit = <number>[{k|m|e}] ;
        # Where k, m and g are for kilobytes, megabytes or table "entries".
        #
        
        memory_limit = 10m;</number></host_addr></user></listen_ip></listen_ip></port></port_range_end></port_range_start></maskbits></masklen></ip></maskbits></masklen></ip></group></tcpdump-output.pcap></divert-port></group></group></pcap_filter></iface></number></vlm@lionet.info> 
        

        5. tolog.sh

        #!/bin/sh
        net1="10.10.200"
        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 $net1 | awk -v vtime=$ttime '{print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >> /var/squid/log/access.log
        

        6. Вырезка из config.xml с настройками cron:

         <cron><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 
        		 <minute>*/1</minute>
        			<hour>*</hour>
        			<mday>*</mday>
        			<month>*</month>
        			<wday>*</wday>
        			<who>root</who>
        			<command></command>/root/tolog.sh 
        		 <task_name>lightsquid_parser_today</task_name>
        			<minute>*/30</minute>
        			<hour>*</hour>
        			<mday>*</mday>
        			<month>*</month>
        			<wday>*</wday>
        			<who>root</who>
        			<command></command>/usr/bin/perl /usr/local/www/lightsquid/lightparser.pl today 
        		 <task_name>lightsquid_parser_yesterday</task_name>
        			<minute>15</minute>
        			<hour>0</hour>
        			<mday>*</mday>
        			<month>*</month>
        			<wday>*</wday>
        			<who>root</who>
        			<command></command>/usr/bin/perl /usr/local/www/lightsquid/lightparser.pl yesterday</cron> 
        
        

        7. squid mode и к каким интерфесам привязан:
        Transparent, привязан к LAN (bge0 - 10.10.200.10)

        8. system лог на тему squid parent process
        less /var/log/system.log | grep squid: Mar 13 12:06:16 pfSense squid[906]: Squid Parent: child process 909 started

        Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

          А Вы ничего и не считаете:
          #aggregate 1024-65535 into 65535; /* Aggregate wildly /
          #aggregate 3128-3128 into 3128; /
          Protect these ports /
          #aggregate 150-1023 into 1023; /
          General low range */
          aggregate 3128-3128 into 0;
          aggregate 80-80 into 0;

          Добавьте строчку и попробуйте:
          aggregate 443 into 443

          После загрузки системы в консоли наберите top - на моей рабочей конфигурации светится ipcad.

          P.S. На всякий случай перечитайте форум, т.к. когда я лично повторно настраивал счётчик я забыл как это делать и пришлось поднимать инфу на форуме. (первые 3 страницы как минимум)

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

            Строчку добавил. Но мня больше волнует вот это:

            # ipcad
            Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
            Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
            Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
            Aggregate ports 3128..3128 into 0
            Aggregate ports 80..80 into 0
            Aggregate ports 443..443 into 443
            Configured RSH Server listening at 127.0.0.1
            Can't start: another instance running, pid=521
            Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
            Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
            
            

            и то, что Squid ничего не ложит в лог.

            Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

              @Broodval:

              Строчку добавил. Но мня больше волнует вот это:

              # ipcad
              Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
              Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
              Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
              Aggregate ports 3128..3128 into 0
              Aggregate ports 80..80 into 0
              Aggregate ports 443..443 into 443
              Configured RSH Server listening at 127.0.0.1
              Can't start: another instance running, pid=521
              Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
              Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
              
              

              и то, что Squid ничего не ложит в лог.

              Этот лог может означать, что ipcad как раз запущен и выполняется.
              Нужно проверить куда сквид сохраняет логи и сравнить с тем, куда их дописывает tolog.
              ipcad скидывает логи не "на лету", а в зависимости от таймера (я ставил скидывать раз в минуту), так что проверьте периодичность выполнения tolog.sh
              и на всякий случай - в кроне запуск толога должен выглядеть вот так:  /root/tolog.sh

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

                @DasTieRR:

                @Broodval:

                Строчку добавил. Но мня больше волнует вот это:

                # ipcad
                Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
                Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
                Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
                Aggregate ports 3128..3128 into 0
                Aggregate ports 80..80 into 0
                Aggregate ports 443..443 into 443
                Configured RSH Server listening at 127.0.0.1
                Can't start: another instance running, pid=521
                Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                
                

                и то, что Squid ничего не ложит в лог.

                Этот лог может означать, что ipcad как раз запущен и выполняется.
                Нужно проверить куда сквид сохраняет логи и сравнить с тем, куда их дописывает tolog.
                ipcad скидывает логи не "на лету", а в зависимости от таймера (я ставил скидывать раз в минуту), так что проверьте периодичность выполнения tolog.sh
                и на всякий случай - в кроне запуск толога должен выглядеть вот так:  /root/tolog.sh

                Выше была приведена моя текущая конфигурация и там всё выглядит так как Вы сказали.
                Однако, при скачивании файла размером 100Mb с ресурса FTP.BYFLY.BY (как вы уже поняли это FTP-сервер) в логе это отображается во так:

                Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                  @Broodval:

                  @DasTieRR:

                  @Broodval:

                  Строчку добавил. Но мня больше волнует вот это:

                  # ipcad
                  Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
                  Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
                  Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
                  Aggregate ports 3128..3128 into 0
                  Aggregate ports 80..80 into 0
                  Aggregate ports 443..443 into 443
                  Configured RSH Server listening at 127.0.0.1
                  Can't start: another instance running, pid=521
                  Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                  Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                  
                  

                  и то, что Squid ничего не ложит в лог.

                  Этот лог может означать, что ipcad как раз запущен и выполняется.
                  Нужно проверить куда сквид сохраняет логи и сравнить с тем, куда их дописывает tolog.
                  ipcad скидывает логи не "на лету", а в зависимости от таймера (я ставил скидывать раз в минуту), так что проверьте периодичность выполнения tolog.sh
                  и на всякий случай - в кроне запуск толога должен выглядеть вот так:  /root/tolog.sh

                  Выше была приведена моя текущая конфигурация и там всё выглядит так как Вы сказали.
                  Однако, при скачивании файла размером 100Mb с ресурса FTP.BYFLY.BY (как вы уже поняли это FTP-сервер) в логе это отображается во так:

                  В вашем текущем конфиге, который Вы указали выше, ipcad считает только HTTPS (443 порт).
                  Aggregate ports X into X; - под X подставляете все порты, которые ipcad должен подсчитать и сохранить в лог. Одна строчка - один порт, либо пул портов (последовательных)

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

                    @DasTieRR:

                    @Broodval:

                    Строчку добавил. Но мня больше волнует вот это:

                    # ipcad
                    Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
                    Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
                    Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
                    Aggregate ports 3128..3128 into 0
                    Aggregate ports 80..80 into 0
                    Aggregate ports 443..443 into 443
                    Configured RSH Server listening at 127.0.0.1
                    Can't start: another instance running, pid=521
                    Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                    Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                    
                    

                    и то, что Squid ничего не ложит в лог.

                    Этот лог может означать, что ipcad как раз запущен и выполняется.
                    Нужно проверить куда сквид сохраняет логи и сравнить с тем, куда их дописывает tolog.
                    ipcad скидывает логи не "на лету", а в зависимости от таймера (я ставил скидывать раз в минуту), так что проверьте периодичность выполнения tolog.sh
                    и на всякий случай - в кроне запуск толога должен выглядеть вот так:  /root/tolog.sh

                    Выше была приведена моя текущая конфигурация и там всё выглядит так как Вы сказали.
                    Однако, при скачивании файла размером 100Mb с ресурса FTP.BYFLY.BY (как вы уже поняли это FTP-сервер) в логе это отображается во так:

                    В вашем текущем конфиге, который Вы указали выше, ipcad считает только HTTPS (443 порт).
                    Aggregate ports X into X; - под X подставляете все порты, которые ipcad должен подсчитать и сохранить в лог. Одна строчка - один порт, либо пул портов (последовательных)

                    Спасибо за совет, попробую! Однако, как всё же можно объяснить что файл размером 100Mb скачанный с ресурса FTP.BYFLY.BY  в логе это отображается как forum.pfsense.org

                    Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                      Спасибо за совет, попробую! Однако, как всё же можно объяснить что файл размером 100Mb скачанный с ресурса FTP.BYFLY.BY  в логе это отображается как forum.pfsense.org

                      Файл размером 100Mb, скачанный с ресурса FTP.BYFLY.BY, в логе не должен был отобразиться вообще. Если бы ipcad его подсчитал, это выглядело бы как FTP.BYFLY.BY:21, т.е. адрес с указанием порта.

                      Могу посоветовать только посмотреть что есть в access.log сквида на этот счёт.
                      Ещё статистика могла отобразиться, если файл качался через http, но подмену адреса я лично, объяснить не могу.

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

                        @DasTieRR:

                        Спасибо за совет, попробую! Однако, как всё же можно объяснить что файл размером 100Mb скачанный с ресурса FTP.BYFLY.BY  в логе это отображается как forum.pfsense.org

                        Файл размером 100Mb, скачанный с ресурса FTP.BYFLY.BY, в логе не должен был отобразиться вообще. Если бы ipcad его подсчитал, это выглядело бы как FTP.BYFLY.BY:21, т.е. адрес с указанием порта.

                        Могу посоветовать только посмотреть что есть в access.log сквида на этот счёт.
                        Ещё статистика могла отобразиться, если файл качался через http, но подмену адреса я лично, объяснить не могу.

                        Вот вырезка с access.log на этот счёт:

                        1299954060.000 1 10.10.200.14 TCP_MISS/200 1138 CONNECT 86.57.151.3:57684 - DIRECT/86.57.151.3 -
                        1299954060.000 1 10.10.200.14 TCP_MISS/200 133 CONNECT 82.209.213.51:53 - DIRECT/82.209.213.51 -
                        1299954060.000 1 10.10.200.14 TCP_MISS/200 1863 CONNECT 86.57.151.3:50196 - DIRECT/86.57.151.3 -
                        1299954060.000 1 10.10.200.14 TCP_MISS/200 2156 CONNECT 86.57.151.3:21 - DIRECT/86.57.151.3 -
                        

                        IP 86.57.151.3 - это и есть ftp.byfly.by

                        Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                          @DasTieRR:

                          # ipcad
                          Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
                          Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
                          Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
                          Aggregate ports 3128..3128 into 0
                          Aggregate ports 80..80 into 0
                          Aggregate ports 443..443 into 443
                          Configured RSH Server listening at 127.0.0.1
                          Can't start: another instance running, pid=521
                          Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                          Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                          
                          

                          …
                          В вашем текущем конфиге, который Вы указали выше, ipcad считает только HTTPS (443 порт).
                          Aggregate ports X into X; - под X подставляете все порты, которые ipcad должен подсчитать и сохранить в лог. Одна строчка - один порт, либо пул портов (последовательных)

                          Это не так. aggregate ports лишь описывает то, как реальные порты будут выглядеть в логе squid. Можно, например, написать:
                          aggregate ports 8080..8080 into 88 и тогда трафик пришедший с порта 8080 в логах будет выглядеть как пришедший с порта 88. Никакие aggregate ports не запрещают ipcad'у считать и заносить в лог остальные (не описанные в этих aggregate ports) порты. У меня, например, все aggregate ports вообще отключены, чего и всем советую.

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

                            @rubic:

                            @DasTieRR:

                            # ipcad
                            Opening bge0... [LCap] [ERSH] [4096] [bge0/interactive] Initialized as 1
                            Aggregate network 10.10.200.0/255.255.255.0 -> 255.255.255.255
                            Aggregate network 0.0.0.0/0.0.0.0 -> 255.255.255.255
                            Aggregate ports 3128..3128 into 0
                            Aggregate ports 80..80 into 0
                            Aggregate ports 443..443 into 443
                            Configured RSH Server listening at 127.0.0.1
                            Can't start: another instance running, pid=521
                            Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                            Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                            
                            

                            …
                            В вашем текущем конфиге, который Вы указали выше, ipcad считает только HTTPS (443 порт).
                            Aggregate ports X into X; - под X подставляете все порты, которые ipcad должен подсчитать и сохранить в лог. Одна строчка - один порт, либо пул портов (последовательных)

                            Это не так. aggregate ports лишь описывает то, как реальные порты будут выглядеть в логе squid. Можно, например, написать:
                            aggregate ports 8080..8080 into 88 и тогда трафик пришедший с порта 8080 в логах будет выглядеть как пришедший с порта 88. Никакие aggregate ports не запрещают ipcad'у считать и заносить в лог остальные (не описанные в этих aggregate ports) порты. У меня, например, все aggregate ports вообще отключены, чего и всем советую.

                            В принципе это я и имел ввиду (поэтому пользуюсь строчкой aggregate ports 1024..65536 into 65536, чтобы не захламлять статистику)

                            "У меня, например, все aggregate ports вообще отключены, чего и всем советую." - а вот это я не понял, т.е. я вот хочу видеть в логах аську - я добавил строчку для её порта aggregate ports 5190 into 5190 и сейчас она в логах есть, но ведь если я её закомменитрую разве она не перестанет отображаться в статистике?

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

                              @DasTieRR:

                              "У меня, например, все aggregate ports вообще отключены, чего и всем советую." - а вот это я не понял, т.е. я вот хочу видеть в логах аську - я добавил строчку для её порта aggregate ports 5190 into 5190 и сейчас она в логах есть, но ведь если я её закомменитрую разве она не перестанет отображаться в статистике?

                              Перестанет конечно, при том, что у вас стоит aggregate ports 1024..65536 into 65536, и только поэтому. Но у Broodval aggregate ports 1024..65536 into 65536 нет, поэтому на него не подействует. Он может добавлять aggregate ports 5190 into 5190, удалять его или комментировать, и все-равно трафик аськи будет исправно считаться на 5190 порту.

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

                                Так всё таки вот это нормальная ситуация или нет?

                                Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                                Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                                

                                И rubic, если я правильно понял, то при вот таком конфиге:

                                interface em0 filter "ip and dst net 10.10.200.0/24 and not src net 10.10.200.0/24 and not src port 80
                                

                                и полностью закомментированных  "aggregate <port_range_start>[-<port_range_end>]… " я буду видеть в логе Squid'a все соединения
                                идущие мимо 80 порта?
                                P.S. Просто я всё делал вот по этой инструкции http://ru.doc.pfsense.org/index.php/Подсчет_трафика_с_помощью_Squid_и_ipcad_в_pfSense_1.2.3,
                                но в логе была только статистика Squid'a, собственно поэтому я и поднял эту тему.</port_range_end></port_range_start>

                                Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                                  @Broodval:

                                  Так всё таки вот это нормальная ситуация или нет?

                                  Can't initialize pid file /var/log/ipcad/ipcad.pid: Operation not permitted
                                  Make sure you have . under /var/log/ipcad used as new root. man 2 chroot.
                                  

                                  Не нормально, не нормально… Я вам в личку писал, вы читали?

                                  И rubic, если я правильно понял, то при вот таком конфиге:

                                  interface em0 filter "ip and dst net 10.10.200.0/24 and not src net 10.10.200.0/24 and not src port 80
                                  

                                  и полностью закомментированных  "aggregate <port_range_start>[-<port_range_end>]… " я буду видеть в логе Squid'a все соединения
                                  идущие мимо 80 порта?</port_range_end></port_range_start>

                                  да

                                  P.S. Просто я всё делал вот по этой инструкции http://ru.doc.pfsense.org/index.php/Подсчет_трафика_с_помощью_Squid_и_ipcad_в_pfSense_1.2.3,
                                  но в логе была только статистика Squid'a, собственно поэтому я и поднял эту тему.

                                  Причина в другом, не в aggregate ports точно. Проверьте (top | grep ipcad) запущен ли ipcad. Если да, то покажите rsh localhost sh ip acco

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

                                    Всё привёл к первоначальному виду, а именно:

                                    interface bge0 filter "ip and dst net 10.10.200.0/24 and not src net 10.10.200.0/24 and not src port 80";
                                    Закомментировал все записи типа "aggregate <port_range_start>[-<port_range_end>] into <port>"
                                    и запись dumpfile = /var/log/ipad/ipcad.dump привёл к виду dumpfile = ipcad.dump</port></port_range_end></port_range_start> 
                                    

                                    Перезагрузился.
                                    Выполнил команду #top, результат:

                                    last pid:  2403;  load averages:  0.00,  0.09,  0.08    up 0+00:08:29  11:10:55
                                    55 processes:  1 running, 52 sleeping, 2 zombie
                                    CPU:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
                                    Mem: 30M Active, 11M Inact, 58M Wired, 296K Cache, 85M Buf, 893M Free
                                    Swap: 2048M Total, 2048M Free
                                    
                                      PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
                                      468 root        1   4    0 41736K 14816K accept 0   0:00  0.00% php
                                      892 proxy       1   4    0 13220K  8032K kqread 0   0:00  0.00% squid
                                     1234 root        1  44    0  7780K  3272K select 1   0:00  0.00% sshd
                                      698 root        1   8   20  3492K  1416K wait   0   0:00  0.00% sh
                                      991 root        1  44    0  7780K  3292K select 1   0:00  0.00% sshd
                                      995 root        1  44    0  4952K  2020K select 0   0:00  0.00% sftp-server
                                      452 root        1   8    0 39688K  5280K wait   0   0:00  0.00% php
                                      458 root        1   8    0 39688K  5280K wait   1   0:00  0.00% php
                                     1395 root        1   8   20  3156K   800K nanslp 1   0:00  0.00% check_reload_
                                      508 nobody      1  44    0  3156K  1292K select 1   0:00  0.00% dnsmasq
                                      457 root        1   8    0 39688K  5280K wait   0   0:00  0.00% php
                                      462 root        1   8    0 39688K  5280K wait   1   0:00  0.00% php
                                      323 root        1  44    0  3268K  1144K select 1   0:00  0.00% syslogd
                                     1366 root        1  20    0  3508K  2204K pause  1   0:00  0.00% tcsh
                                     1238 root        1   8    0  3492K  1388K wait   0   0:00  0.00% sh
                                      544 root        1   4    0  5156K  2844K kqread 0   0:00  0.00% lighttpd
                                     2397 root        1  44    0  3524K  1796K CPU0   0   0:00  0.00% top
                                    
                                    

                                    Выполнил команду #rsh localhost sh ip account, результат:

                                       Source           Destination    Packets        Bytes  SrcPt DstPt Proto   IF
                                    
                                    Accounting data age is     0
                                    Accounting data age exact 44
                                    Accounting data saved 1300266824
                                    Interface bge0: received 11122, 5 m average 67 bytes/sec, 0 pkts/sec, dropped 0
                                    Flow entries made: 0
                                    Memory usage: 0% (0 from 10485760)
                                    Free slots for rsh clients: 9
                                    IPCAD uptime is 10 minutes
                                    pfsense.local uptime is 10 minutes
                                    
                                    

                                    Выполнил команду #killall ipcad && killall rsh, результат:

                                    No matching processes were found
                                    
                                    

                                    Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                                      ipcad не стартует, /var/log/ipcad очистили?

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

                                        @rubic:

                                        ipcad не стартует, /var/log/ipcad очистили?

                                        Да, чистил (#rm /var/log/ipcad/ipcad*).
                                        Сейчас в /var/log/ipcad/ находяться:
                                        ipcad.pid

                                        4167
                                        

                                        ipcad.dump

                                           Source           Destination    Packets        Bytes  SrcPt DstPt Proto   IF
                                        
                                        Accounting data age is     0
                                        Accounting data age exact 59
                                        Accounting data saved 1300266899
                                        Interface bge0: received 12195, 5 m average 52 bytes/sec, 0 pkts/sec, dropped 0
                                        Flow entries made: 0
                                        Memory usage: 0% (0 from 10485760)
                                        Free slots for rsh clients: 10
                                        IPCAD uptime is 11 minutes
                                        pfsense.local uptime is 12 minutes
                                        
                                        

                                        Так как же заставить ipcad запускаться?

                                        Я новичок FreeBSD, поэтому если Вас не затруднит, объясняйте мне как первокласснику. Заранее спасибо!

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

                                          @Broodval:

                                          @rubic:

                                          ipcad не стартует, /var/log/ipcad очистили?

                                          Да, чистил (#rm /var/log/ipcad/ipcad*).
                                          Сейчас в /var/log/ipcad/ находяться:
                                          ipcad.pid

                                          4167
                                          

                                          ipcad.dump

                                             Source           Destination    Packets        Bytes  SrcPt DstPt Proto   IF
                                          
                                          Accounting data age is     0
                                          Accounting data age exact 59
                                          Accounting data saved 1300266899
                                          Interface bge0: received 12195, 5 m average 52 bytes/sec, 0 pkts/sec, dropped 0
                                          Flow entries made: 0
                                          Memory usage: 0% (0 from 10485760)
                                          Free slots for rsh clients: 10
                                          IPCAD uptime is 11 minutes
                                          pfsense.local uptime is 12 minutes
                                          
                                          

                                          Так как же заставить ipcad запускаться?

                                          Сравнил Ваш конфиг и свой (с рабочей машины) - отличие только одно (не знаю поможет ли) #chroot = /var/log/ipcad; т.е. у меня эта строчка закомментирована, у Вас нет. (при этой, закомментированной, строчке ipcad скидывает дамп в /var/log/ipcad)

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

                                            2Broodval
                                            Какая версия PFsense у вас? Что получается если попробовать запустить ipcad руками (ipcad -rds)?
                                            На всякий случай:
                                            @zar0ku1:

                                            версия 1.2.2 выдает ошибку

                                            
                                            Can't lock PID file ipcad.pid: Invalid argument
                                            Can't initialize pid file /tmp/ipcad.pid: Operation not permitted
                                            Make sure you have . under /tmp used as new root. man 2 chroot.
                                            
                                            

                                            комментируем строчки

                                            #chroot
                                            #pidfile
                                            

                                            прописываем:

                                            
                                            dumpfile = /var/log/ipcad/ipcad.dump;
                                            
                                            

                                            и создаем его

                                            
                                            mkdir /var/log/ipcad/
                                            touch /var/log/ipcad/ipcad.dump
                                            chmod 600 /var/log/ipcad/ipcad.dump
                                            
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.