Автоматическое отключение пользователе&
-
c.35-40
open FF," while (<ff>) { ($user,$limit)=split; $tt{$user}{limit}=$limit; } close FF;</ff>
спасибо тебе о великий гуру пфсенса ;)
с этим изменением скрипт запускается
но вроде бы в файл limit всё равно пользователи не добавляются =\ поковыряюсь пока ещё со скриптомтолько не сердитесь, тут велез другой вопрос, который я задавал ранее
о возможности блокировки пользователей по ипу
этой строчкой баняться только учетные записи
_acl bl_users proxy_auth_regex -i '/usr/local/squid/blocked_users'_к сожалению инфы по настройке асл для фряхи я ещё не нашел (но сейчас продолжаю поиск)
или подскажите какой каким параметром заменить proxy_auth_regex, чтобы блокировался ип? -
этой строчкой баняться только учетные записи
_acl bl_users proxy_auth_regex -i '/usr/local/squid/blocked_users'_к сожалению инфы по настройке асл для фряхи я ещё не нашел (но сейчас продолжаю поиск)
или подскажите какой каким параметром заменить proxy_auth_regex, чтобы блокировался ип?url_regex верно?
ипы я прописываю вида 192.168.0.х/32 -
В сквиде есть опция
acl banned_hosts src "/var/squid/acl/banned_hosts.acl"
содержит
10.10.10.10
10.100.2.100Только опция появляется, если что-то было добавлено в Proxy server: Access control > Banned host addresses
Можно в опции настроек ГУИ добавить фиктивный адрес и потом спокойно использовать указанный файл.
-
ух половину проблемы решили) с такой командой все баняться на отличненько ;D
acl bl_users src "/usr/local/squid/blocked_users"
http_access deny bl_usersпойду добивать, почему пользователи не добавляются в файл blocked_users
-
ух половину проблемы решили) с такой командой все баняться на отличненько ;D
acl bl_users src "/usr/local/squid/blocked_users"
http_access deny bl_usersпойду добивать, почему пользователи не добавляются в файл blocked_users
Попробуй сквид погасить - может он держит файл.
-
сейчас отключены хавп, сквид и сквидгуард
результ прежний =(
-
-
пробовал развные, включая 777
-
Если нет необходимости вести лог трафика, а нужно лишь контролировать его лимит, то лучше использовать Captive Portal + Radius.
Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.Вместо CP можно использовать PPPoE или PPTP. Причём лучше второе.
Вариант с радиусом позволяет контролировать весь трафик, а не только тот, который проходит через сквид.
Если кому интересно, напишу подробнее, что нужно править в конфигурационных файлах.
Я реализовывал этот вариант на базе 2.0 RC1, но в промышленную эксплуатацию в нашей компании он не пошёл, так как в этом случае не ведётся логирование, т.е. нельзя узнать кто на что этот трафик потратил.
Можно конечно использовать в дополнение к радиусу что-то типа ntop, но во-первых он у меня не заработал (какие-то там библиотеки кривые), а во-вторых железо слабовато (PF стоит на ALIX). -
Если нет необходимости вести лог трафика, а нужно лишь контролировать его лимит, то лучше использовать Captive Portal + Radius.
Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.Вместо CP можно использовать PPPoE или PPTP. Причём лучше второе.
Такой вариант позволяет контролировать весь трафик, а не только тот, который проходит через сквид.
Если кому интересно, напишу подробнее, что нужно править в конфигурационных файлах.
Я реализовывал этот вариант на базе 2.0 RC1, но в промышленную эксплуатацию в нашей компании он не пошёл, так как в этом случае не ведётся логирование, т.е. нельзя узнать кто на что этот трафик потратил.
Можно конечно использовать что-то типа nmap, но во-первых он у меня не заработал (какие-то там библиотеки кривые), а во-вторых железо слабовато (PF стоит на ALIX).если можно расскажи по подробней плиз очень интересно
-
Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.
Считает вроде без шаманства? что за правки? если не секрет -)
Отредактировано: Считает вроде без шаманства. что за правки? если не секрет -)
-
Отлично всё работает. Как уже говорилось, для блокирования по ip забиваем через гуи фиктивный адрес, а потом используем файл /var/squid/acl/banned_hosts.acl
Нюансы:1. нужно пропускать первые 2 строки в файле .total:
$totaluser=<ff>;chomp $totaluser;$totaluser=~s/^user: //;
$totalsize=<ff>;chomp $totalsize;$totalsize=~s/^size: //;
while (<ff>) {
($user, $size, $hit) = split;
$h{$user}{size}+=$size;
$h{$user}{hit}+=$hit;2. Если пока никто не забанен, то получается пустой файл, поэтому через скрипт прописываем тот же фиктивный ip в файл banned_hosts.acl:
open FF,">","/var/squid/acl/banned_hosts.acl";
print FF ("фиктивный ip\n");
foreach $user (sort {$h{$b}{size}<=>$h{$a}{size}} keys %h) {
print FF ("$user\n") if ($h{$user}{size} > $tt{$user}{limit});3. Так как скрипт пользуется результатами работы скрипта /usr/local/www/lightsquid/lightparser.pl то более логично дописать весь этот функционал именно в него.</ff></ff></ff>