Для фаервола PF, есть удобный инструмент для создания графиков нагрузки на интерфейсы, pfstat. Он доступен в *bsd.
Для установки данной утилиты потребуется совсем немного времени.
Установка:
cd /usr/ports/sysutils/pfstat && make install
после установки нужно создать конфиг для программы:
ee /etc/pfstat.conf
со следующим содержанием:
## Bytes in and out plus states
#
collect 1 = interface «ae0» pass bytes in ipv4 diff
collect 2 = interface «ae0» pass bytes out ipv4 diff
collect 3 = global states entries
image "/usr/local/www/nginx/pfstat_day.jpg" {
from 1 days to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
image "/usr/local/www/nginx/pfstat_week.jpg" {
from 1 weeks to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
image "/usr/local/www/nginx/pfstat_month.jpg" {
from 1 months to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
Описывать конфиг не буду, тут все примитивно понятно, нужно задать интерфейс с котрого снимается статистика,
пач куда складыват готовые изображения ну и соответственно цвета собираемой информации.
Далее после сохранения конфига, необходим веб сервер для отображения информации, я использовал nginx
cd /usr/ports/www/nginx && make install
после установки запускаем nginx
/usr/local/etc/rc.d/nginx start
Далее добавляем в крон следующее:
* * * * * root /usr/local/bin/pfstat -q -d /var/db/pfstat.db -c /etc/pfstat.conf
*/5 * * * * root /usr/local/bin/pfstat -p -d /var/db/pfstat.db -c /etc/pfstat.conf
25 3 * * * root /usr/local/bin/pfstat -t 30 -d /var/db/pfstat.db -c /etc/pfstat.conf
данные записи означают, собирать статистику каждую минуту, генерировать изображение каждые 5 минут,
очищать статистику раз в месяц.
Образец представления статистики:

Для установки данной утилиты потребуется совсем немного времени.
Установка:
cd /usr/ports/sysutils/pfstat && make install
после установки нужно создать конфиг для программы:
ee /etc/pfstat.conf
со следующим содержанием:
## Bytes in and out plus states
#
collect 1 = interface «ae0» pass bytes in ipv4 diff
collect 2 = interface «ae0» pass bytes out ipv4 diff
collect 3 = global states entries
image "/usr/local/www/nginx/pfstat_day.jpg" {
from 1 days to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
image "/usr/local/www/nginx/pfstat_week.jpg" {
from 1 weeks to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
image "/usr/local/www/nginx/pfstat_month.jpg" {
from 1 months to now
width 980 height 200
left
graph 1 «in» «bytes/s» color 0 192 0 filled,
graph 2 «out» «bytes/s» color 0 0 255
right
graph 3 «states» «entries» color 192 192 0
}
Описывать конфиг не буду, тут все примитивно понятно, нужно задать интерфейс с котрого снимается статистика,
пач куда складыват готовые изображения ну и соответственно цвета собираемой информации.
Далее после сохранения конфига, необходим веб сервер для отображения информации, я использовал nginx
cd /usr/ports/www/nginx && make install
после установки запускаем nginx
/usr/local/etc/rc.d/nginx start
Далее добавляем в крон следующее:
* * * * * root /usr/local/bin/pfstat -q -d /var/db/pfstat.db -c /etc/pfstat.conf
*/5 * * * * root /usr/local/bin/pfstat -p -d /var/db/pfstat.db -c /etc/pfstat.conf
25 3 * * * root /usr/local/bin/pfstat -t 30 -d /var/db/pfstat.db -c /etc/pfstat.conf
данные записи означают, собирать статистику каждую минуту, генерировать изображение каждые 5 минут,
очищать статистику раз в месяц.
Образец представления статистики:
