Централизованный сбор, хранение и просмотр логов
- Задачи
Централизованный сбор, хранение и просмотр логов
Хранение данных в SQL (PostgreSQL)
Сбор с *nix, windows, сетевого оборудования
Просмотр при помощи веб-интерфейса
- Установка
PostgreSQL Обновления выходят регулярно, версии 8.4.* вполне подходят
# sudo apt-get install postgresql postgresql-contrib
Изменяем пароль администратора БД по-умолчанию на что-нибудь более безопасное:
$ sudo su postgres -c psql template1 template1=# ALTER USER postgres WITH PASSWORD 'your-password-here'; template1=# \q
Изменяем пароль пользователя, под которым запускается PostgreSQL:
$ sudo passwd -d postgres $ sudo su postgres -c passwd
- Устанавливаем так называемый «admin pack», который включает логирование и мониторинг для сервера:
$ sudo su postgres -c psql < /usr/share/postgresql/8.4/contrib/adminpack.sql
Если нужно иметь возможность доступа к PostgreSQL снаружи, редактируем файл /etc/postgresql/8.4/main/postgresql.conf
Меняем
#listen_addresses = 'localhost' на listen_addresses = '*'
и включаем шифрование пароля:
password_encryption = on
Для нормальной работы лучше поступить классически, а именно завести двух пользователей: syslog и logwriter. Пользователь syslog будет администратором базы syslog, а пользователь logwriter будет только добавлять данные.
Таблицы в нашу базу syslog-ng добавит автоматически.
$ sudo su postgres -c psql postgres=# CREATE ROLE syslog WITH LOGIN; postgres=# CREATE ROLE logwriter WITH LOGIN; postgres=# \password syslog # Использование функции \password безопаснее, postgres=# \password logwriter # так как пароль не сохранится в истории. postgres=# CREATE DATABASE syslog OWNER syslog; postgres=# \q
- Добавляем в файл /etc/postgresql/8.4/main/pg_hba.conf разрешение для этих двух пользователей (чтобы они могли подключиться к PostgreSQL.
# TYPE DATABASE USER CIDR-ADDRESS METHOD host syslog logwriter 192.168.0.1/24 md5 host syslog syslog 192.168.0.10/32 md5
- При необходимости прописываем всех пользователей, кто может подключаться к серверу.
- Перезапускаем демона:
$ sudo service postgresql-8.4 restart
- Syslog-ng
Ubuntu 10.04.4 LTS
# aptitude show syslog-ng | grep Version Version: 2.0.9-4.2
А текущая актуальная версия уже 3.4.
Поэтому ищем PPA поновее.
Можно использовать http://asylum.madhouse-project.org/projects/debian/
# sudo echo " " >> /etc/apt/sources.list # sudo echo "## Syslog-ng repository" >> /etc/apt/sources.list # sudo echo "deb http://packages.madhouse-project.org/ubuntu lucid syslog-ng" >> /etc/apt/sources.list # sudo echo "deb-src http://packages.madhouse-project.org/ubuntu lucid syslog-ng" >> /etc/apt/sources.list # # wget http://packages.madhouse-project.org/debian/archive-key.txt | sudo apt-key add - # # sudo apt-get update # sudo apt-get install syslog-ng syslog-ng-mod-sql
ИСТОЧНИКИ:
- [В процессе Централизованный сбор, хранение и просмотр логов]
- Настройка syslog-ng для централизованного сбора логов