LINUX.ORG.RU

История изменений

Исправление HighwayStar, (текущая версия) :

Остановился на использовании xtables quota2. Для dhcp и dns используется dnsmasq.

zypper in xtables-addons-kmp-dafault xtables-addons dnsmasq

Конкретные конфиги вот /etc/sysconfig/scripts/SuSEfirewall2-custom тут задаются подсети для аккаунтинга и скорости до/после достижения квоты https://gist.github.com/HighwayStar/7363d51707442bc3837c46d25b787d98

Общий конфиг /etc/sysconfig/SuSEfirewall2 https://gist.github.com/HighwayStar/896c93f58b226411d694c373e2b81672

Сразу после строки

iptables -t mangle -A POSTROUTING -m quota2 --quota $QUOTA --name global -j ACCEPT
можно вставить правила для обработки протоколов которые не будут ограничиваться по скорости даже при достижении квоты, например ssh, voip.

Квота устанавливается раз в сутки строчками в /etc/cron.d/inet-quota

01 00 * * * root echo 2147483648 > /proc/net/xt_quota/global
*/5 * * * * root echo 'QUOTA='`cat /proc/net/xt_quota/global` > /etc/inet_counters.conf
Вторая строка каждые 5 минут сохраняет значения счетчика на случай пропадания питания.

Раз в сутки администраторам происходит рассылка текущей статистики с суммарным суточным и месячным расходом по каждой из машин в сети скриптом https://gist.github.com/HighwayStar/5e37faad548d1e5bebb8dc76946f1da6

Скрипт вызывается каждые 10 минут из крона

9-59/10 * * * * root PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin; /usr/bin/perl /root/scripts/bwrpt.pl
Пакеты необходимые для работы скрипта
zypper in perl-File-Tail perl-Text-Trim perl-Net-SSLGlue perl-DateTime-Format-Mail perl-Net-SMTP-SSL perl-Authen-SASL

Исходная версия HighwayStar, :

Остановился на использовании xtables quota2. Для dhcp и dns используется dnsmasq.

zypper in xtables-addons-kmp-dafault xtables-addons dnsmasq

Конкретные конфиги вот /etc/sysconfig/scripts/SuSEfirewall2-custom тут задаются подсети для аккаунтинга и скорости до/после достижения квоты https://gist.github.com/HighwayStar/7363d51707442bc3837c46d25b787d98

Сразу после строки

iptables -t mangle -A POSTROUTING -m quota2 --quota $QUOTA --name global -j ACCEPT
можно вставить правила для обработки протоколов которые не будут ограничиваться по скорости даже при достижении квоты, например ssh, voip.

Квота устанавливается раз в сутки строчками в /etc/cron.d/inet-quota

01 00 * * * root echo 2147483648 > /proc/net/xt_quota/global
*/5 * * * * root echo 'QUOTA='`cat /proc/net/xt_quota/global` > /etc/inet_counters.conf
Вторая строка каждые 5 минут сохраняет значения счетчика на случай пропадания питания.

Раз в сутки администраторам происходит рассылка текущей статистики с суммарным суточным и месячным расходом по каждой из машин в сети скриптом https://gist.github.com/HighwayStar/5e37faad548d1e5bebb8dc76946f1da6

Скрипт вызывается каждые 10 минут из крона

9-59/10 * * * * root PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin; /usr/bin/perl /root/scripts/bwrpt.pl
Пакеты необходимые для работы скрипта
zypper in perl-File-Tail perl-Text-Trim perl-Net-SSLGlue perl-DateTime-Format-Mail perl-Net-SMTP-SSL perl-Authen-SASL