пятница, 3 апреля 2009 г.

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

Ввиду частого выхода в сеть через сотового оператора встал вопрос подсчета трафика. Просмотрев несколько утилит типа darksatat или ntop нашел их уж больно монстроидальными для моего случая. Для такой цели идеально подойдет маленькая консольная утилита vnstat. Она не имеет делать красивых отчетов, не пользуется web-сервером для показа статистики, не может показывать детальную статистику. Все просто и лаконично. В общем то, что мне и нужно.Утилита находится в репозитории Ubuntu, поэтому установка не представляет проблем.
# sudo aptitude install vnstat
Теперь необходимо ее настроить. Статистику нам необходимо считать на интерфейсе ppp0, поэтому команда для настройки будет следующей:
$ vnstat -u -i ppp0
Эта команда создаст новую базу данных для указанного интерфейса. На этом настройка закончена.
Для того, чтобы посмотреть статистику, необходимо просто ввести команду:
$ vnstat
Database updated: Fri Aug 1 12:50:01 2008
ppp0
received: 917 kB (nan%)
transmitted: 620 kB (nan%)
total: 1.50 MB
rx tx total
-----------------------+------------+-----------
today 917 kB 620 kB 1.50 MB
-----------------------+------------+-----------
estimated -- -- --
Если в настройках задан только один интерфейс, то в командах его можно не задавать. Если же несколько, то для каждой команды необходимо указывать интерфейс.
Статистику можно вывести по месяцам, неделям, дням, часам. О других возможностях читайте man.

четверг, 2 апреля 2009 г.

Debian - Iptables

Настраиваем iptables в Debian, выжимка из этого документа.

~# cat > /etc/iptables.up.rules
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -i ! lo -j DROP
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m multiport --dports 22,53,80,20,21,443 -j ACCEPT
-A INPUT -p udp -m multiport --dports 22,53 -j ACCEPT
COMMIT

~# mkdir -p /etc/network/if-pre-up.d/

~# cat > /etc/network/if-pre-up.d/iptables
#!/bin/bash
/sbin/iptables-restore < /etc/iptables.up.rules

~# chmod +x /etc/network/if-pre-up.d/iptables
~# /etc/network/if-pre-up.d/iptables