LightSquid — это миниатюрная программа для удобного парсинга логав прокси-сервера Squid. Программа позволяет быстро проводить анализ логов, так как исходики логов Squid трудно читаемы.
Необходимое программное обеспечение:
- Perl
- http сервер (Apache, lighthttpd, и др.)
- Squid
- Cron
Будем считать, что эти программные обеспечения уже у вас установлены.
- Устанавливаем Apache, PHP и ставим все это в автозагрузку и запускаем.
yum install httpd.x86_64 php-mysqlnd.x86_64 libdbd-mysql-perl php-gd.x86_64 systemctl enable httpd systemctl start httpd
2. Устанавливаем perl с пакетом GD (perl-GD необходим для построения графиков)
yum install perl-GD perl-CGI
3. Скачиваем и устанавливаем Lightsquid.
mkdir /var/www/html/lightsquid cd /var/www/html/lightsquid wget https://github.com/finisky/lightsquid-1.8.1/archive/refs/heads/master.zip unzip -zxvf master.zip mv master/ ./lightsquid cd lightsquid/
4. Настраиваем Lightsquid
Редактируем конфигурационный файл /var/www/html/lightsquid/lightsquid.cfg
Прописываем пути для переменных cfgpath, tplpath, langpath, reportpath, logpath, ip2namepath в соответвии с которыми будет работать LightSquid, где они физически находятся.
cd /var/www/html/lightsquid/ mcedit /var/www/html/lightsquid/lightsquid.cfg

5. Назначаем права на запуск
cd /var/www/html/lightsquid/ chmod +x *.cgi chmod +x *.pl
6. Назначаем права на каталог лог файлов сквид, что бы парсер мог прочитать access.log
chown -HR squid:squid /var/log/squid
7. Проверяем конфигурацию lightsquid в /var/www/html/lightsquid/
perl check-setup.pl

8. Переходим в директорию /etc/httpd/conf.d/
Удаляем конфиг welcome.conf, который который подгружает стартовую страницу CentOs. И создаем файл lightsquid.conf c нашими настройками. Файл httpd не трогам.
rm /etc/httpd/conf.d/welcome.conf touch /etc/httpd/conf.d/lightsquid.conf mcedit /etc/httpd/conf.d/lightsquid.conf
Добавляем вот такие параметры в файл:
<Directory “/var/www/html/lightsquid”>
AddHandler cgi-script .cgi
AllowOverride All
</Directory>
9. Запускаем скрипт для генерации отчета lightsquid
/var/www/html/lightsquid/lightparser.pl
10. Перезапускаем apache
systemctl restart httpd
11. Создаем задание в cron для lightsquid, в данном случаи каждые 30 минут что бы перечитывал логи.
crontab -e */30 * * * * /var/www/html/lightsquid/lightparser.pl today
12. Проверьте работу панели в браузере, указав вместо ip_server действительный IP адрес сервера http://ip_server/lightsquid
