Для контроля за расходом я часто ставлю netams.
http://www.netams.com
Итак как поставить под дебианом 4.0:
- добавляем репозитарий - спасибо Александру Герасёву.
cat /etc/apt/sources.listdeb http://gq.net.ru/debian etch main deb http://security.debian.org/ etch/updates main contrib deb http://mirror.yandex.ru/debian/ etch main contrib
- даем команды:
aptitude update
aptitude install gq-keyring netams - правим конфиг:
cat /etc/netams/netams.cfg#NeTAMS version 3.1(1205.408) compiled by root@avm #configuration built Thu Aug 8 09:03:53 2002 #begin #global variables configuration debug none language en user name admin real-name Admin password aaa email root@localhost permit all #services configuration service server 0 login local listen 20001 max-conn 6 service processor 0 lookup-delay 60 flow-lifetime 180 policy name ip target proto ip policy name www target proto tcp ports 80 81 8080 3128 policy name mail target proto tcp ports 25 110 restrict all pass local pass unit group name CLIENTS acct-policy ip www mail unit host name router ip 192.168.0.1 acct-policy ip www mail unit user name comp ip 192.168.0.3 parent CLIENTS acct-policy ip www mail # клиенты unit user name nout ip 192.168.0.2 parent CLIENTS acct-policy ip www mail unit net name LAN ip 192.168.0.0/24 acct-policy ip www mail service storage 1 type mysql accept all user netams password your_pass service data-source 1 type libpcap source eth1 # интерфейс смотрящий в локальную сеть rule 11 "ip" service quota 0 policy ip notify soft {owner} notify hard {owner} admin notify return {owner} storage 1 service alerter 0 report oid 06100 name rep1 type traffic period day detail simple smtp-server localhost service html 0 path /var/lib/netams/stat run 5min htaccess yes client-pages all url http://localhost/netams-adm/ # $Id: netams.cfg,v 1.11.4.1 2006/06/02 17:27:10 anton Exp $ #end
- добавляем базу в мускул:
mysql -u root -p
Выполняем следующие команды:
mysql>create database netams;
mysql>GRANT ALL ON netams.* TO netams@localhost IDENTIFIED BY 'your_pass';
mysql>flush privileges;
mysql>exit; - правим в дефолте:
cat /etc/default/netams# Defaults for netams initscript # sourced by /etc/init.d/netams # installed at /etc/default/netams by the maintainer scripts # # This is a POSIX shell fragment # # Should we start? Configure netams and set DAEMON_START to 1 DAEMON_START=1 # Additional options that are passed to the Daemon. DAEMON_OPTS="-l -q"
- стартуем сервис:
/etc/init.d/netams start - контролируем работу:
tail -f /var/log/netams.log
и минут через 5 смотрим статистику на http://router/netams/
На этом предварительную настройку учета трафика можно считать законченой. Все что выше того - квоты, управление через NAWT, через командную строку - можно найти на http://netams.com/doc/index.html ...
---------------------------------------------------------
Tips:
- man netamsctl
- cat reload_dhcp_hosts_options
#! /bin/bash ## dhcp script v.1.0 (l) Sanych 30.11.2007 ## ## make /etc/hosts cat /root/hosts > /etc/hosts # don`t change cat /var/lib/misc/dnsmasq.leases |awk '{print $3"\t"$4}' >> /etc/hosts ## make /root/dnsmasq.hosts cat /var/lib/misc/dnsmasq.leases |awk '{print "dhcp-host="$4","$3",infinite"}' > /root/dnsmasq.hosts /etc/init.d/dnsmasq restart ## add user to netams netamsctl -s "save" for i in `cat /var/lib/misc/dnsmasq.leases |awk '{print $3}'` ; do if ! grep " $i " /etc/netams/netams.cfg >/dev/null then netamsctl -s `grep $i /var/lib/misc/dnsmasq.leases|awk '{print "service processor && \ unit user name "$4" ip "$3" parent ALL acct-policy ip www mail && exit"}'` fi done
P.S. В репозитарии А.Герасёва появилась новая версия под lenny...