ИНСТРУКЦИЯ - Статистика трафика (ipcad+lightsquid, без squid)
-
:D https://forum.pfsense.org/index.php?topic=117432.0 — упрощенная английская версия.
-
2. Установка Squid и Lightsquid
Здесь всё просто: переходим в "System" —› "Package Manager" —› вкладка "Available Packages" —› находим "squid" —› и "Install";
Аналогично для "Lightsquid", "Cron" и "Shellcmd".Shellcmd не нужен.
4. Установка ipcad
Возможно есть другие способы, но для меня подошел именно этот:я просто делал pkg install ipcad.
8. В разделе "Services" —› "Shellcmd" создаём новую команду типа shellcmd:
/usr/local/bin/ipcad -rds
Это запуск ipcad при старте системы.это тоже не нужно - пакет при установке создаёт скрипт запуска в /usr/local/etc/rc.d/ipcad - переименовываем его в .sh и пишем туда ipcad_enable="YES".
кстати твой скрипт tolog у меня работал раз в 10 медленнее скрипта из оригинальной статьи - постоянно писал в консоль "[:missed]" или что-то вроде того - не в курсе что это может быть? такая фигня началась после установки bind-tools, до этого он айпишники в лог клал молча.
10. Перезагружаем pfSense, ждем 10 минут (логи обрабатываются каждые 10 минут)
это ты с чего взял вообще? у меня например каждые 2ч, так что не нужно ничего ждать:
/usr/bin/perl /usr/pbi/lightsquid-amd64/local/www/lightsquid/lightparser.pl today
максимум минуту - если влом статистику самому в лог скинуть.
-
2. Установка Squid и Lightsquid
Здесь всё просто: переходим в "System" —› "Package Manager" —› вкладка "Available Packages" —› находим "squid" —› и "Install";
Аналогично для "Lightsquid", "Cron" и "Shellcmd".Shellcmd не нужен.
4. Установка ipcad
Возможно есть другие способы, но для меня подошел именно этот:я просто делал pkg install ipcad.
8. В разделе "Services" —› "Shellcmd" создаём новую команду типа shellcmd:
/usr/local/bin/ipcad -rds
Это запуск ipcad при старте системы.это тоже не нужно - пакет при установке создаёт скрипт запуска в /usr/local/etc/rc.d/ipcad - переименовываем его в .sh и пишем туда ipcad_enable="YES".
1, 3) Да, можно и так запускать, но по инструкции было описан запуск через Shellcmd.
2) IPCAD устанавливал так, потому, что на версии 2.3.2 RELEASE этот пакет у меня не доступен (выдает: "pkg: No packages available to install matching 'ipcad' have been found in the repositories"), по не известным мне причинам.кстати твой скрипт tolog у меня работал раз в 10 медленнее скрипта из оригинальной статьи - постоянно писал в консоль "[:missed]" или что-то вроде того - не в курсе что это может быть? такая фигня началась после установки bind-tools, до этого он айпишники в лог клал молча.
Медленней он, может быть потому, что скрип, в отличии от описанного в инструкции Rubic'а, пытается преобразовывать айпи адреса в человеку понятные домены. А может дело в "127.0.0.1" вместо "localhost".
10. Перезагружаем pfSense, ждем 10 минут (логи обрабатываются каждые 10 минут)
это ты с чего взял вообще? у меня например каждые 2ч, так что не нужно ничего ждать:
/usr/bin/perl /usr/pbi/lightsquid-amd64/local/www/lightsquid/lightparser.pl today
максимум минуту - если влом статистику самому в лог скинуть.
Из 11 пункта: "Status"—› "Squid Proxy Reports" —› "Refresh Scheduler", у меня была указанна обработка каждые 10 минут (макс.значение), поэтому и 10 минут ожидание.
-
1, 3) Да, можно и так запускать, но по инструкции было описан запуск через Shellcmd.
видимо во времена написания инструкции пакет ipcad не прописывал себя в автостарт.
кстати твой скрипт tolog у меня работал раз в 10 медленнее скрипта из оригинальной статьи - постоянно писал в консоль "[:missed]" или что-то вроде того - не в курсе что это может быть? такая фигня началась после установки bind-tools, до этого он айпишники в лог клал молча.
Медленней он, может быть потому, что скрип, в отличии от описанного в инструкции Rubic'а, пытается преобразовывать айпи адреса в человеку понятные домены. А может дело в "127.0.0.1" вместо "localhost".
он в консоль писал примерно 2 раза в секунду - не может же так медленно nslookup работать?
-
Все недоумевал почему в топике "без squid", а по факту он установлен. Исключил shellcmd и squid. Все прекрасно работает. Автору сей темы респект.
-
А подскажите как тоже самое сделать только на два Lan интерфейса?
-
Ссылки на RSH мёртвые. Кто-то может перезалить?
-
amd64
-
Автор, респект. Только 1й пост или шапку отредактируй, ибо не ясно, нужен или нет сквид.
P.s. я так и не понял как без сквида лог собирать, если сквид его создает, а ipcad его только дополняет. Разъясните, что я упустил. -
Ссылки на RSH мёртвые. Кто-то может перезалить?
Для i386 - https://yadi.sk/d/ic8yiQKe3GSvRd
(выше дали для amd64, нужно только залогиниться на форуме [это так, для будущих поколений, а то могут не увидеть :)]) -
Здравствуйте! спасибо за инструкцию.
Делал многое по первому посту и все как бы-завелось с первого раза, но костылей наловил и не могу разобраться по сей день.
Прошу помощи.
Имею
2.3.3-RELEASE-p1 (amd64)
built on Thu Mar 09 07:17:41 CST 2017
FreeBSD 10.3-RELEASE-p17установлены пакеты
squid www 0.4.36_2
Lightsquid www 3.0.6_2
Cron sysutils 0.3.7_1
Shellcmd sysutils 1.0.2_3
openvpn-client-export security 1.4.2_1"Костыли!" (они же проблемы)
Каждй день падете СКВИД в одно и тоже время 0:00Apr 11 00:00:00 (squid-1) Cannot open stdio:/var/squid/logs/access.log: (13) Permission denied
Apr 11 00:00:03 (squid-1) Cannot open '/var/squid/logs/access.log' for writing. The parent directory must be writeable by the user 'squid', which is the cache_effective_user set in squid.conf.
Apr 11 00:00:06 (squid-1) Cannot open '/var/squid/logs/access.log' for writing. The parent directory must be writeable by the user 'squid', which is the cache_effective_user set in squid.conf.
Apr 11 00:00:09 (squid-1) Cannot open '/var/squid/logs/access.log' for writing. The parent directory must be writeable by the user 'squid', which is the cache_effective_user set in squid.conf.
Apr 11 00:00:12 (squid-1) Cannot open '/var/squid/logs/access.log' for writing. The parent directory must be writeable by the user 'squid', which is the cache_effective_user set in squid.conf.
Apr 11 00:00:15 (squid-1) Cannot open '/var/squid/logs/access.log' for writing. The parent directory must be writeable by the user 'squid', which is the cache_effective_user set in squid.conf.
Apr 11 00:00:48 Squid_Alarm 84671 Squid has exited. Reconfiguring filter.
Apr 11 00:00:48 Squid_Alarm 84909 Attempting restart…
Apr 11 00:00:51 Squid_Alarm 94391 Reconfiguring filter...
Apr 11 00:00:51 check_reload_status Reloading filter
Apr 11 00:00:52 php-fpm 86358 /rc.filter_configure_sync: [squid] Installed but not started. Not installing 'nat' rules.
Apr 11 00:00:52 php-fpm 86358 /rc.filter_configure_sync: [squid] Installed but not started. Not installing 'pfearly' rules.
Apr 11 00:00:52 php-fpm 86358 /rc.filter_configure_sync: [squid] Installed but not started. Not installing 'filter' rulesп.с. задачи CRONA
1,31 0-5 * * * root /usr/bin/nice -n20 adjkerntz -a
1 3 1 * * root /usr/bin/nice -n20 /etc/rc.update_bogons.sh
*/60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 sshlockout
*/60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 webConfiguratorlockout
1 1 * * * root /usr/bin/nice -n20 /etc/rc.dyndns.update
*/60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 virusprot
30 12 * * * root /usr/bin/nice -n20 /etc/rc.update_urltables
*/1 * * * * root /usr/local/sbin/tolog.sh
0 0 * * * root /usr/local/sbin/squid -k rotate -f /usr/local/etc/squid/squid.conf
15 0 * * * root /usr/local/pkg/swapstate_check.php
*/10 * * * * root /usr/local/bin/perl /usr/local/www/lightsquid/lightparser.pl today
15 0 * * * root /usr/local/bin/perl /usr/local/www/lightsquid/lightparser.pl yesterdayХелп Хелп
-
в файле "/usr/local/sbin/tolog.sh исправь так
chown squid:proxy /var/squid/logs/access.log
у меня заработала, но после были обновления на прокси
и так все заработала.. -
в файле "/usr/local/sbin/tolog.sh исправь так
chown squid:proxy /var/squid/logs/access.log
у меня заработала, но после были обновления на прокси
и так все заработала..Хм… у меня владелец было proxy заменил на root все заработало
п.с.
не подскажите где находится файл .htaccess парсера lightsquid
хотел и сделать авторизацию по ip
1) поменять пароль admin, a точнее его убрать вовсе
2) хотелось бы что бы открывалась страничка статистики по ip
ну например пользователь ip 192.168.0.12 открывает в браузере страницу https://192.168.0.1:7445/user_detail.cgi?user=192.168.0.12 статистики lightsquid
3) ну или хотя бы что бы что бы авторизация была по ip из диапазона сетип.с. У меня прозрачный прокси, но я не вижу в отчете статистике по youtube и т.п. ???
может из-за того, что в настройках Proxy Server: General Settings/General
не включено
HTTPS/SSL Interception Enable SSL filtering. -
А подскажите как тоже самое сделать только на два Lan интерфейса?
#!/bin/sh
rez2=""
#REZ="q"
iptoname ()
{
rez2=$1
REZ=$(/usr/local/bin/dig @171.1.0.20 -x $1 +short)dig @ use your DNS server
echo "REZ - $REZ - $1"
if [ -z $REZ]
then
{echo
}
else
{
rez2=$REZ
}
fi
}net="192.168.0"
net1="192.168.2"
net2="11.10.10"
net3="11.10.2"
net4="11.10.3"
net5="11.10.4"
net6="11.10.11"
net7="11.10.12"
net8="11.10.13"
net9="1.110.14"
net10="11.11.2"#net = your local net
ttime=/usr/bin/rsh 127.0.0.1 sh ip acco | /usr/bin/grep 'Accounting data saved' | /usr/bin/awk '{print ($4)}'
/usr/bin/rsh 127.0.0.1 clear ip accounting
/usr/bin/rsh 127.0.0.1 show ip accounting checkpoint | /usr/bin/grep -e $net -e $net1 -e $net2 -e $net3 -e $net4 -e $net5 -e $net6 -e $net7 -e $net8 -e $net9 -e $net10 > /root/tolog.txtwhile read p1 p2 p3 p4 p5 p6 p7 p8
doif [ "$p5" != "0" ]
then
rez2=""
iptoname "$p1"
echo "$ttime.000" 1 $p2 "TCP_MISS/200" $p4 "CONNECT" $rez2:"$p5 "-" "DIRECT/"$p1" -"" >>/var/squid/logs/access.logecho "$vtime.000" 1 $p2 "TCP_MISS/200" $p4 "CONNECT" $rez2:"$p5 "-" "DIRECT/"$p1" -"" >>/var/squid/logs/access.log
else
fi
done < /root/tolog.txt
chown proxy:proxy /var/squid/logs/access.logexit 0
-
Коллеги, а как вы боретесь с тем, что в лог ipcad попадает не полная информация?
Например, пользователь посетил страницу www.vesti.ru/doc.html?id=2742518 , а в логе видно только ip адрес и порт 80.Можно как-то что-то настроить, чтобы в лог писались полные адреса?
-
где найти RSH для 64
-
@gwyw
Попробуйте https://github.com/pfelk/pfelk -
@werter , день добрый, подскажите ссылки актуальные для RSH и ipcad. Использую pfSense 2.7.2.
Чуть выше (2016 год) прочитал, что в shell можно запустить команду pkg install ipcad, но видимо уже в 2024 году такое нельзя делать. -
@komok
Я не автор по связке в заголовке. Пробуйте pfelk.