LINUX.ORG.RU
решено ФорумAdmin

Подсчет трфика, netflow

 


0

1

Порыскал по инету, по данному форуму. Тольком ничего не нашел. Настроил ipt_NETFLOW (на шлюзе) на отправку отчетов на адрес 192.168.42.4. В iptables FORWARD = DROP:

iptables -A FORWARD -j NETFLOW

Расположен в самом верху, далее идут правила которые разрешают тот или иной порт для локальной сети. На коллекторе flow-capture принимает данные:

-rw-r--r-- 1 flow-tools flow-tools 9,1K Окт  7 20:00 ft-v05.2012-10-07.194946+0400
-rw-r--r-- 1 flow-tools flow-tools  34K Окт  7 20:15 ft-v05.2012-10-07.200001+0400
-rw-r--r-- 1 flow-tools flow-tools  17K Окт  7 20:30 ft-v05.2012-10-07.201501+0400
-rw-r--r-- 1 flow-tools flow-tools  26K Окт  7 20:45 ft-v05.2012-10-07.203001+0400
-rw-r--r-- 1 flow-tools flow-tools  29K Окт  7 21:00 ft-v05.2012-10-07.204501+0400
-rw-r--r-- 1 flow-tools flow-tools 6,3K Окт  7 21:03 ft-v05.2012-10-07.210001+0400
-rw-r--r-- 1 flow-tools flow-tools  22K Окт  7 22:45 ft-v05.2012-10-07.223534+0400
-rw-r--r-- 1 flow-tools flow-tools  36K Окт  7 23:00 ft-v05.2012-10-07.224501+0400
-rw-r--r-- 1 flow-tools flow-tools  29K Окт  7 23:15 ft-v05.2012-10-07.230001+0400
-rw-r--r-- 1 flow-tools flow-tools  100 Окт  7 23:15 tmp-v05.2012-10-07.231501+0400

flow.alc

ip access-list standard admin permit host 192.168.40.153
ip access-list standard officenet permit 192.168.40.0 0.0.3.255

Получаю данные по одному хосту:

shell> flow-cat /var/local/flow/2012-10/2012-10-07/* | flow-filter -S admin | flow-stat

Результат

Total Flows                     : 306
Total Octets                    : 17052
Total Packets                   : 336
Total Time (1/1000 secs) (flows): 94512
Duration of data  (realtime)    : 12287
Duration of data (1/1000 secs)  : 12300657
Average flow time (1/1000 secs) : 308.8627
Average packet size (octets)    : 50.7500
Average flow size (octets)      : 55.7255
Average packets per flow        : 1.0980
Average flows / second (flow)   : 0.0249
Average flows / second (real)   : 0.0249
Average Kbits / second (flow)   : 0.0111
Average Kbits / second (real)   : 0.0111

Вот так мало это комп не мог наесть. Специально качал файл весом 20/30Мб. Что не так??? Может я неверное использую правило в iptables и не все пакеты попадают ко мне на коллектор?



Последнее исправление: modjo (всего исправлений: 1)

Настроил ipt_NETFLOW (на шлюзе) на отправку отчетов на адрес 192.168.42.4

(libastral.so: state forsed to UP!) Ты уверен, что iptables проводит траффик через твоё правило?

vahtu
()
Ответ на: комментарий от vahtu
shell> ll
итого 308K
drwxr-xr-x 2 flow-tools flow-tools 4,0K Окт  8 00:00 ./
drwxr-xr-x 4 flow-tools flow-tools 4,0K Окт  8 00:00 ../
-rw-r--r-- 1 flow-tools flow-tools 9,1K Окт  7 20:00 ft-v05.2012-10-07.194946+0400
-rw-r--r-- 1 flow-tools flow-tools  34K Окт  7 20:15 ft-v05.2012-10-07.200001+0400
-rw-r--r-- 1 flow-tools flow-tools  17K Окт  7 20:30 ft-v05.2012-10-07.201501+0400
-rw-r--r-- 1 flow-tools flow-tools  26K Окт  7 20:45 ft-v05.2012-10-07.203001+0400
-rw-r--r-- 1 flow-tools flow-tools  29K Окт  7 21:00 ft-v05.2012-10-07.204501+0400
-rw-r--r-- 1 flow-tools flow-tools 6,3K Окт  7 21:03 ft-v05.2012-10-07.210001+0400
-rw-r--r-- 1 flow-tools flow-tools  22K Окт  7 22:45 ft-v05.2012-10-07.223534+0400
-rw-r--r-- 1 flow-tools flow-tools  36K Окт  7 23:00 ft-v05.2012-10-07.224501+0400
-rw-r--r-- 1 flow-tools flow-tools  29K Окт  7 23:15 ft-v05.2012-10-07.230001+0400
-rw-r--r-- 1 flow-tools flow-tools  16K Окт  7 23:30 ft-v05.2012-10-07.231501+0400
-rw-r--r-- 1 flow-tools flow-tools  21K Окт  7 23:45 ft-v05.2012-10-07.233001+0400
-rw-r--r-- 1 flow-tools flow-tools  29K Окт  8 00:00 ft-v05.2012-10-07.234501+0400
shell> flow-cat * | flow-print | head
srcIP            dstIP            prot  srcPort  dstPort  octets      packets
192.168.40.31    94.100.184.104   6     1475     80       48          1         
192.168.40.31    94.100.191.243   6     1477     80       48          1         
192.168.40.23    74.125.143.108   6     4171     995      48          1         
192.168.40.4     217.69.138.107   6     62539    2042     152         3         
192.168.40.105   74.125.143.91    6     53836    443      52          1
modjo
() автор топика
Ответ на: комментарий от vahtu

Да-да, про libastral.so понятно... Можете пинать дальше, но не понимаю что добавить к -j LOG чтоб увидеть, что на netflow что-то сыпется. Можно конечно добавить такое:

-A FORWARD -j LOG --log-prefix "forward: " --log-level 4
Oct  8 09:42:50 temp kernel: forward: IN=eth0 OUT=eth1 SRC=192.168.40.153 DST=81.19.77.10 LEN=52 TOS=0x00 PREC=0x00 TTL=126 ID=24740 DF PROTO=TCP SPT=9950 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0
Oct  8 09:42:50 temp kernel: forward: IN=eth0 OUT=eth1 SRC=192.168.40.153 DST=81.19.93.10 LEN=52 TOS=0x00 PREC=0x00 TTL=126 ID=24744 DF PROTO=TCP SPT=9951 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0

Что это даст?

modjo
() автор топика
Ответ на: комментарий от modjo

Да-да, про libastral.so понятно...

чего тебе понятно?
если не выложишь полное описание правил и схемы сети, никто не будет гадать на кофейной гуще о твоих настройках

anonymous
()
Ответ на: комментарий от anonymous

Ну яж сказал что ничего особенно, правило NETFLOW сверху, все остальные правила разрешают только некоторые порты на выход. Все пользователи настроены на внутренний роутер 192.168.42.254 (свич с функцией L3). Там разрулены некоторые сети. Все что неизвестно отправляется на шлюз 192.168.42.5. На этом роутере вот такие правила:

ipt="/sbin/iptables"
lan="eth0"                      # lan
wan="eth1"                      # wan
ippp="ppp+"                     # interface for pptp
subnet="192.168.40.0/22"        # local subnet
vpnnet="172.16.0.0/16"          # vpn clients
$ipt -F
$ipt -X
$ipt -t nat -F
$ipt -t nat -X
$ipt -P INPUT DROP
$ipt -P OUTPUT ACCEPT
$ipt -P FORWARD DROP
$ipt -A FORWARD -j NETFLOW
$ipt -A INPUT -i lo -j ACCEPT
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -A INPUT --source 95.xx.xx.41 --proto tcp --dport ssh -j ACCEPT
$ipt -A INPUT -i $lan --proto tcp --dport ssh -j ACCEPT
$ipt -A INPUT -i $lan -p tcp --dport 10050 -j ACCEPT
$ipt -A INPUT -i $wan -m tcp -p tcp --dport pptp -j ACCEPT
$ipt -A INPUT -s $vpnnet -j ACCEPT
$ipt -t filter -A FORWARD -s $vpnnet -j ACCEPT
$ipt -t filter -A FORWARD -s $subnet -d $vpnnet -j ACCEPT
$ipt -A INPUT -i $wan --proto udp --dport 1194 --jump ACCEPT
$ipt -t filter -A FORWARD -s $subnet -p tcp -m multiport --dport http,https,ftp,smtp,pop3,aol,ssh,5222,5555 -j ACCEPT
$ipt -t filter -A FORWARD -s $subnet -p tcp -m multiport --dport domain,995,587,465,pptp,imaps,ntp,8080 -j ACCEPT
$ipt -t filter -A FORWARD -s $subnet -p tcp -m multiport --dport 9091,54331 -j ACCEPT   # for ibank client (nomos)
$ipt -t filter -A FORWARD -s $subnet -p tcp -m multiport --dport 4892,4893 -j ACCEPT    # radmin
$ipt -t filter -A FORWARD -s $subnet -p udp -m multiport --dport domain -j ACCEPT
$ipt -t filter -A FORWARD -s 192.168.42.168 -j ACCEPT
$ipt -t filter -A FORWARD -s 192.168.42.169 -j ACCEPT
$ipt -t filter -A FORWARD -s 192.168.42.170 -j ACCEPT
$ipt -t filter -A FORWARD -s 192.168.42.171 -j ACCEPT
$ipt -t filter -A FORWARD -p icmp -j ACCEPT
$ipt -t filter -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -t nat -A POSTROUTING -o $wan -j MASQUERADE
$ipt -t filter -A FORWARD -i $wan -p tcp --dport 3389 -j ACCEPT
$ipt -t nat -A PREROUTING -p tcp -i $wan -s 94.xx.xx.241 --dport 3389 -j DNAT --to-destination 192.168.42.15
$ipt -t filter -A FORWARD -i $wan -p tcp --dport 7023 -j ACCEPT
$ipt -t nat -A PREROUTING -p tcp -i $wan --dport 7023 -j DNAT --to-destination 192.168.42.7
$ipt -t filter -A FORWARD -i $wan -p tcp --dport 2221 -j ACCEPT
$ipt -t nat -A PREROUTING -p tcp -i $wan --dport 2221 -j DNAT --to-destination 192.168.42.7
modjo
() автор топика
Ответ на: комментарий от modjo

И вот как это выглядит в результате

Chain FORWARD (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
NETFLOW    all  --  0.0.0.0/0            0.0.0.0/0           NETFLOW
ACCEPT     all  --  172.16.0.0/16        0.0.0.0/0
ACCEPT     all  --  192.168.40.0/22      172.16.0.0/16
ACCEPT     tcp  --  192.168.40.0/22      0.0.0.0/0           multiport dports 80,443,21,25,110,5190,22,5222,5555
ACCEPT     tcp  --  192.168.40.0/22      0.0.0.0/0           multiport dports 53,995,587,465,1723,993,123,8080
ACCEPT     tcp  --  192.168.40.0/22      0.0.0.0/0           multiport dports 9091,54331
ACCEPT     tcp  --  192.168.40.0/22      0.0.0.0/0           multiport dports 4892,4893
ACCEPT     udp  --  192.168.40.0/22      0.0.0.0/0           multiport dports 53
ACCEPT     all  --  192.168.42.168       0.0.0.0/0
ACCEPT     all  --  192.168.42.169       0.0.0.0/0
ACCEPT     all  --  192.168.42.170       0.0.0.0/0
ACCEPT     all  --  192.168.42.171       0.0.0.0/0
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3389
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:7023
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:2221
modjo
() автор топика

flow-filter -S admin
Вот так мало это комп не мог наесть

может это так мало комп родил (-S), а не наел (-D)?

anonymous
()
Ответ на: комментарий от modjo
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
NETFLOW    all  --  0.0.0.0/0            0.0.0.0/0           NETFLOW

гы-гы
у тебя в нетфлоу попадают только syn/fin пакеты

"...в самом верху, в самом верху" — тьфу :)

anonymous
()
Ответ на: комментарий от anonymous

тьфу :) добавил через

-I CHAIN N

порядок выставления привила. Посмотрю что будет. Да и я видел, что по одному пакету соединение, но не мог понять почему..

PS В скрипте NETFLOW идет первый, а при выводе не обращал на это внимание.

modjo
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.