Есть ли способ сохранить UFW выход из dmesg?

23

В этом /etc/rsyslog.d/20-ufw.confфайле есть комментарии, которые дают вам возможность предотвратить запись событий UFW в ядро ​​и журналы сообщений, что я и сделал.

Я бы тоже хотел получить UFW-события dmesg, но как этого добиться?

3dinfluence
источник
4
В качестве временного решения я просто связал dmesg с dmesg | grep -v UFW.
3dinfluence
Связанные ошибки на панели запуска : 1264621 и 1475676 .
Пабло Бьянки

Ответы:

21

Вы можете отключить ведение журнала UFW с помощью следующей команды из оболочки:

sudo ufw logging off

Уровень логирования по умолчанию низкий . Из справочной страницы UFW :

  • выкл отключает ведение журнала UFW
  • low регистрирует все заблокированные пакеты, не соответствующие политике по умолчанию (с ограничением скорости), а также пакеты, соответствующие зарегистрированным правилам
  • средний уровень журнала низкий, плюс все разрешенные пакеты, не соответствующие политике по умолчанию, все пакеты INVALID и все новые подключения. Все записи ведутся с ограничением скорости.
  • среда с высоким уровнем регистрации (без ограничения скорости), плюс все пакеты с ограничением скорости
  • полный высокий уровень журнала без ограничения скорости

Вы можете получить текущий уровень журнала с sudo ufw status verbose.

Мика Ватанен
источник
7

Я провел некоторое исследование по этому вопросу.

Я не верю, что есть способ обойти это.

Команда dmesgнапрямую печатает содержимое кольцевого буфера ядра. Он содержит все записи журнала UFW, которые вы видите.

/etc/rsyslog.d/20-ufw.confФайл говорит Rsyslog какой из UFW записей в кольцевом буфере ядра для входа в либо /var/log/ufw.logили /var/log/kern.log.

Вы можете предотвратить запись записей в ufw /var/log/kern.log(для удаления дублирования), раскомментировав строку /etc/rsyslog.d/20-ufw.conf, содержащуюся в них & ~.

К сожалению, нет способа предотвратить dmesgотображение этих сообщений командой. Ваша работа - лучшее, что я могу придумать.

Крис Вуллард
источник
Крис, спасибо, что изучил это. +1 за усилие. Я пока оставлю вопрос без ответа, чтобы посмотреть, есть ли у кого-нибудь еще идеи. Возможно, нет решения этой проблемы, и я сообщу об ошибке на панели запуска, так как я уверен, что есть другие, которые любят следить за dmesg, чтобы убедиться, что с их сервером не происходит проблем с оборудованием, и не хотят видеть записи UFW.
3dinfluence
Просто чтобы уточнить упоминания об ошибках: (в архиве) ошибка Debian # 664748 и ошибка Launchpad # 555852 теперь, кажется, отслеживают эту проблему.
Яни Ууситало
4

Для людей, которые хотели бы более точно настроить уровень журнала, я предлагаю использовать 'log' или отклонить / отклонить правила (подробности см. На ufwстранице man ). Например, вы можете использовать «выход из системы», а затем вставить явные правила ведения журнала для того, что вы хотите регистрировать. В качестве альтернативы, вы можете использовать 'logging low', а затем вставить явные правила запрета / отклонения, чтобы спокойно запретить совпадения, которые в противном случае были бы зарегистрированы.

Anuser
источник
1

Вы также можете просто использовать grep для фильтрации сообщений UFW. Например,

dmesg | grep -v UFW

Таким образом, вы также можете сохранить журнал для просмотра.

carmichel
источник
Это вряд ли полезно, потому что на любом реальном сервере, подключенном к Интернету, в журналах нет ничего, кроме сообщений UFW.
Антти Хаапала
1

Приведенный выше ответ является единственным способом:

    dmesg | grep -v UFW

Но вы можете использовать это более просто, установив псевдоним как это:

    alias dmesg='dmesg | grep -v UFW'

Это будет выполнено, dmesg | grep -v UFWесли вы введетеdmesg .

Если вы хотите сохранить красочную версию dmesg, вы можете использовать следующую команду:

    alias dmesg='dmesg --color=always | grep -v UFW --color=always'

Таким образом, dmesgиспользуйте цвета поверх трубы.

ПРЕДУПРЕЖДЕНИЕ! Используйте этот метод только при просмотре журналов и поиске чего-либо, потому что это может нарушить работу некоторых сторонних сценариев в этом сеансе.

Мэтью Пятница
источник