dmesg лавинно рассылается журналами брандмауэра

Что-то вроде этого, не протестировали; это находится в ударе, таким образом, Вам, вероятно, придется преобразовать некоторый синтаксис:

IFS=$'\n'              # so that only newlines separate words, not spaces
set -f                 # disable globbing
FILES=$(find path/to/music/ -name "* 1.*")

for FILE in ${FILES}; do
    if [[ -f "${FILE% 1.*}" ]] ; do
        echo "Matched ${FILE}."
        # rm "${FILE}" # Uncomment me once you have confirmed it would do what you intend.
    fi
done

${FILE% 1.*} разделяет последнее соответствие 1.* синтаксис от конца, [[ -f ... ]] проверки, существовал ли тот файл; поэтому, это удалило бы файлы, для которых будет существовать файл без синтаксиса в конце. Протестируйте перед некомментарием rm, чтобы быть уверенным, это корректно.

8
12.05.2014, 01:19
4 ответа
[119356]Вы можете использовать [119789]NFLOG[119790] целевой, а не [119791]LOG[119792]:

Все, что вам нужно, это [119793]nfnetlink_log[119794] способная протоколировать программу. Сообщения будут поступать туда, и процесс пользовательского пространства будет решать, регистрировать пакет или нет.

netsh interface portproxy add v4tov4 5118 127.0.0.1 8182
netsh interface portproxy add v6tov6 5118 ::1 8182

Другой вещью, которую вы могли бы попробовать, было бы ограничение правила [119795]LOG[119796] до определенного порога:

В среднем, это будет регистрировать 10 пакетов в минуту. Конечно, вы можете настроить это в соответствии с вашими потребностями.[119363]

4
27.01.2020, 20:13

Это может быть связано с уровнем журнала, который вы используете в iptables. Как я понял из документации rsyslog, это уровни логов: "Приоритет - одно из следующих ключевых слов, в порядке возрастания: отладка, информация, уведомление, предупреждение, предупреждение (то же самое, что и предупреждение), ошибка, ошибка (то же самое, что и ошибка), критерий, предупреждение, экстренное, паника (то же самое, что и экстренное)". Как быть с попыткой указать лог-уровень в iptables, используя его имя, т.е. 'notice'. Хорошо подходит для размещения без проверки, так как сейчас я думаю, что это совсем не проблема. Я реализовал схему, похожую на описанную выше, и получаю ту же самую проблему. Моим ядром в centos 7 является v3.10.0 и, видимо, начиная с v3.5, кажется, что протоколирование ядра производится с помощью /dev/kmsg и я предполагаю, что dmesg каким-то образом получает оттуда свой вклад.

.
0
27.01.2020, 20:13

Почему тебя это волнует? dmesg - это низкоуровневый инструмент для печати последних сообщений ядра, и вы просили ядро регистрировать выпавшие пакеты.

Настройте систему системных журналов на запись сообщений iptables в отдельный файл журнала от других сообщений ядра и используйте файлы журнала, которые она записывает вместо dmesg.

-7
27.01.2020, 20:13

Если вы установили уровень журнала на 7 с помощью команды:

-A INPUT -i eth0       -j   LOG  --log-prefix "FW: " --log-level 7

Затем вы можете просто отфильтровать эти сообщения, передав порог уровня в dmesg:

dmesg --level=err,warn
1
27.01.2020, 20:13

Теги

Похожие вопросы