Я управляю Сервер Ubuntu 14.04 система с Shorewall брандмауэр. Shorewall - это, по сути, интерфейс для iptables, и это iptables, который ведет журнал через Netfilter (насколько я понимаю).
Моя проблема в том, что я не могу понять Shorewall документы о ведении журнала в другое место. Вот как далеко я зашел:
ulogd
/etc/shorewall/params
: LOG=NFLOG
info
к $LOG
в /etc/shorewall/shorewall.conf
/etc/shorewall/shorewall.conf
: LOGFILE=/var/log/shorewall
Предположительно это выполняет следующее: Netfilter регистрирует в NFLOG
(преемник ULOG
) назначение, что означает, что сообщения журнала Netfilter обрабатываются ulogd2
.
Я не знаю, как я могу сказать ulogd2
записывать все сообщения Shorewall в желаемый файл журнала /var/log/shorewall
.
Документация по этому поводу довольно неясна, так как эта ветка форума свидетельствует. это Сообщение блога Я нашел столь же расплывчато относительно ulogd2
перенаправление журнала.
ulogd2
правильно вообще?ulogd2
перенаправить сообщения shorewall на /var/log/shorewall
?PS: Я не задаю этот вопрос на AskUbuntu, потому что он в равной степени актуален и для других дистрибутивов Linux.
Ubuntu использует rsyslog, поэтому вы можете настроить его для фильтрации сообщений и записи их в произвольные файлы журналов, например, создать файл /etc/rsyslog.d/shorewall.conf
:msg, contains, "Shorewall:" /var/log/shorewall
& ~
Или если вы хотите еще немного разделить
:msg, contains, "Shorewall:cust2net:ACCEPT:" /var/log/shorewallc2na.log
& ~
:msg, contains, "Shorewall:" /var/log/shorewall
& ~
При этом все сообщения, содержащие «Shorewall: cust2net: ACCEPT:», помещаются в один файл журнала, а любые другие сообщения, содержащие «Shorewall», - в другой файл журнала.
Вам необходимо перезапустить rsyslogd, чтобы это вступило в силу.
Я думаю, вы забыли обновить policy
файл:
#SOURCE DEST POLICY LOG LEVEL LIMIT:BURST
$FW net ACCEPT
net all DROP $LOG
# The FOLLOWING POLICY MUST BE LAST
all all REJECT $LOG