Logs: Оптимальное логирование Samba

Конфигурирование Файл-сервера (Установка, настройка SAMBA)
Ответить
Аватара пользователя
Роман Торопов
Администратор
Сообщения: 141
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Logs: Оптимальное логирование Samba

Сообщение Роман Торопов » 25 мар 2008, 11:58

Напоминалка.
Что бы не забыть ...

Цитата samba.org
This module is identical with the audit module above except that it sends audit logs to both syslog as well as the smbd log files. The log level for this module is set in the smb.conf file.

Valid settings and the information that will be recorded are shown in the next table.

Table 23.1. Extended Auditing Log Information

Log Level Log Details - File and Directory Operations
0 Make Directory, Remove Directory, Unlink
1 Open Directory, Rename File, Change Permissions/ACLs
2 Open & Close File
10 Maximum Debug Level



Configuration of Auditing
This auditing tool is more felxible than most people readily will recognize. There are a number of ways by which useful logging information can be recorded.

Syslog can be used to record all transaction. This can be disabled by setting in the smb.conf file syslog = 0.

Logging can take place to the default log file (log.smbd) for all loaded VFS modules just by setting in the smb.conf file log level = 0 vfs:x, where x is the log level. This will disable general logging while activating all logging of VFS module activity at the log level specified.

Detailed logging can be obtained per user, per client machine, etc. This requires the above together with the creative use of the log file settings.

An example of detailed per-user and per-machine logging can be obtained by setting log file = /var/log/samba/%U.%m.log.

Auditing information often must be preserved for a long time. So that the log files do not get rotated it is essential that the max log size = 0 be set in the smb.conf file.
Цитата из opennet.ru
smb.conf:

...
log level=0 vfs:1
...
[pub]
comment = Public share
path = /pub
writeable = yes
vfs objects = full_audit
full_audit:success = mkdir rmdir unlink
full_audit:failure = none

Тем не менее в syslog пишутся сообщения о ВСЕХ операциях, а не об указанных. Почему, как для данного модуля указать меньший уровень "логгирования" и уменьшить количество выводимых в лог строк?
ещё тут глянуть http://forum.oszone.net/thread-67723.html
[system]
comment = Public Share
path = /pub
writeable = yes
vfs objects = full_audit
full_audit:prefix=%U|%m
full_audit:success = unlink rmdir mkdir write rename
full_audit:failure = unlink rmdir mkdir write rename

и тогда будут писаться логи по созданию, удалению и переименованию файлов и директорий.
Отдельно уровни логов для VFS-модулей прописываются так: "log level=цифра vfs:цифра". Если все равно пишутся полность все логи, а не только указанные - возможно закралась ошибка при указании операций, которые необходимо писать в лог: по-умолчанию, при наличии ошибки пишутся ВСЕ логи. И не забыть проверить значение опции "syslog".
Лучшие доки к модулям - исходники самих модулей. В частности про модуль full_audit вообще забыли и доки к нему нигде нет.
не плохой примерчик

Код: Выделить всё

[global]
dos charset = 866
unix charset = KOI8-U
workgroup = SGNI
server string = Файловый сервер СГНИ
interfaces = 10.5.9.0/24
security = DOMAIN
auth methods = winbind, ntdomain
obey pam restrictions = Yes

password server = 10.5.9.3
smb passwd file = /etc/samba/smbpasswd
private dir = /etc/samba

passdb backend = tdbsam:/etc/samba/passdb.tdb, smbpasswd:/etc/samba/smbpasswd
unix password sync = Yes
null passwords = yes

log level = 2 vfs:2
log file = /var/log/samba/samba.log
max log size = 1000
announce as = win95
deadtime = 4320
load printers = No
# add user script = /usr/sbin/pw -n %u -g %g
# add group script = /usr/sbin/pw -n %g
# add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u

#     delete user script = /usr/sbin/pw -n %u
# delete group script = /usr/sbin/pw -n %g
# delete user from group script = /usr/sbin/pw -n %u -g %g -r

os level = 8
local master = Yes
preferred master = Yes

dns proxy = No
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind use default domain = Yes
hosts allow = 10.5.9.
case sensitive = No

[otdel]
comment = Файлопомойка для всех...
path = /mnt/hdd1a/
read only = No
acl check permissions = No
acl map full control = No
create mask = 0777
veto files = /quota.*/.snap/
hide files = .snap
map archive = No
fstype = UFS2
vfs objects = recycle extd_audit
recycle:keeptree = yes
recycle:versions = yes
recycle:exclude = *.tmp|~$*
recycle:repository = /var/lost_n_found/hdd1a

[tax]
path = /mnt/hdd1b
admin users = SGNI\d28-panovd, SGNI\d28-kuzmik
read list = @vse
write list = @it, @it_tax
create mask = 0777
directory mask = 0777
veto files = /quota.*/
hide files = .recycle
fstype = UFS
vfs objects = recycle
recycle:keeptree = yes
recycle:versions = yes
recycle:exclude = *.tmp|~$*|*.cd?|*.err|*.log|*.bak|*.vue
recycle:repository = /var/lost_n_found/hdd1b

[Recycle]
comment = Сетевая корзина
path = /var/lost_n_found
invalid users = @vse
admin users = @it
write list = @it
read only = No

[post]
comment = Почта
path = /mnt/hdd2
valid users = @vse, @it
admin users = @it
read only = No
acl group control = Yes
create mask = 0777
directory mask = 0777
hide unreadable = Yes
veto files = /.snap/quota*/
vfs objects = extd_audit

Аватара пользователя
Роман Торопов
Администратор
Сообщения: 141
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Re: Logs: Оптимальное логирование Samba

Сообщение Роман Торопов » 25 мар 2008, 11:58

В [global] Добавляем если нету ...

syslog = 1
log file = /var/log/samba/log.%I
max log size = 5000
max log size = 1000
syslog only = no

Далее для нужной папки (шара) после ее обозначения в конфиге добавляем следующие строчки:

vfs object = full_audit
full_audit:prefix = %u|%I
full_audit:success = rename mkdir rmdir unlink write
full_audit:failure = write rename unlink

Логи Смотри в ...
/var/log/message

Ответить