Почему я вижу это [UFW BLOCK] в своих системных журналах?

Вопрос или проблема

Интересно, почему я получаю эту ошибку в своих системных журналах:

[7732763.396193] [UFW BLOCK] IN=eth0 OUT= MAC=02:8b:1a:75:d5:7b:02:8b:1a:40:00:03:08:00 SRC=x.x.x.x DST=x.x.x.x LEN=40 TOS=0x00 PREC=0x00 TTL=64 ID=53703 DF PROTO=TCP SPT=35651 DPT=8443 WINDOW=457 RES=0x00 ACK RST URGP=0 

Я только что включил ufw. Эта ошибка значит, что что-то идет не так?

Ну, это значит, что ufw заблокировал соединение от SRC к DST на TCP порту 8443.
Если вы не хотели, чтобы это соединение было успешным, это не плохо.

Порт 8443 в основном используется веб-сервисами, например, он используется VMware ESXi или некоторыми (HTTPS) серверами приложений, такими как Apache Tomcat, выступая в качестве альтернативы стандартному HTTPS порту 443, когда этот порт недоступен или заблокирован.

Вы можете проверить, работает ли на вашем устройстве что-то на этом порту, выполнив sudo netstat -tulpen | grep 8443 или лучше ss:

sudo ss -tulpen | grep 8443

для TCP, UDP, прослушивающих портов, показать процессы, показать расширенную информацию и в числовом формате (не разрешать).

Если вы выполните:

$ tail -1 /etc/rsyslog.d/20-ufw.conf
#& stop

Эта запись #& stop означает, что вы ведете журнал в syslog.

Тео, как я могу это остановить?

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

sudo sed '/#& stop/s/^#//' -i /etc/rsyslog.d/20-ufw.conf
sudo service rsyslog restart

Эта команда просто удаляет комментарий у первого совпадения шаблона #& stop в файле /etc/rsyslog.d/20-ufw.conf. В данном случае это последняя строка, поэтому мы используем tail -1 для вывода последней строки файла.

Теперь проверьте это:

$ tail -1 /etc/rsyslog.d/20-ufw.conf
& stop

или просто:

tail -f /var/log/syslog

Ответ или решение

Теория:

При использовании системы защиты, такой как Uncomplicated Firewall (UFW), очень важно понимать сообщения, которые она генерирует, чтобы обеспечить правильное поведение и безопасность вашей сети. Сообщение [UFW BLOCK], появляющееся в ваших системных логах, указывает на то, что UFW (брандмауэр) заблокировала попытку соединения, соответствующую определенному правилу или отсутствию разрешающего правила в системе фильтрации пакетов.

Сообщение успешной блокировки содержит несколько полей, каждое из которых предоставляет детальную информацию о заблокированном соединении:

  1. IN, OUT – это интерфейсы, через которые пришел/ушел пакет. В данном случае, IN=eth0 означает, что пакет пришел через интерфейс eth0, а OUT= пусто, значит пакет не был переслан.

  2. MAC – это MAC-адреса отправителя и получателя. Они важны для идентификации уровней канала связи.

  3. SRC и DST – это адреса отправителя и получателя пакета.

  4. PROTO – это протокол, использованный для пакета. В данном примере используется протокол TCP.

  5. SPT и DPT – это исходный и целевой порты, что указывает на использование специфичного приложения или сервиса. В данном случае используется порт 8443.

  6. ACK, RST – это флаги управления TCP, которые сообщают о состоянии передачи данных. Флаг RST указывает на то, что соединение было перезагружено (reset), тогда как ACK используется для подтверждения приема.

Пример:

Ваш лог показывает, что попытка подключения на порт 8443 была заблокирована. Порт 8443 часто используется для веб-сервисов, которые работают по защищенному протоколу HTTPS. Если вы не используете этот порт активно в вашем приложении или на сервере, то его блокировка может быть даже полезной для безопасности, предотвращая неавторизованные или нежелательные подключения.

Применение:

  1. Проверка активных подключений: Чтобы определить, активно ли что-либо на этом порту, можно воспользоваться командой ss для поиска слушающих соединений:

    sudo ss -tulpen | grep 8443

    Эта команда покажет, какие процессы (если таковые есть) слушают на порту 8443.

  2. Настройка логирования: Если вы не хотите, чтобы подобные сообщения засоряли ваши сислог файлы, вы можете модифицировать файл конфигурации /etc/rsyslog.d/20-ufw.conf. Поправив строку с #& stop, вы остановите логирование этих сообщений в системные логи:

    sudo sed '/#& stop/s/^#//' -i /etc/rsyslog.d/20-ufw.conf
    sudo service rsyslog restart

    Эта команда раскомментирует строку, ответственную за прекращение логирования UFW в syslog после настроек брандмауэра.

  3. Решение проблемы: Если ваше приложение или сервис действительно требует использования порта 8443, добавьте правило в UFW для разрешения соединений на этот порт:

    sudo ufw allow 8443/tcp

    Это разрешит входящие TCP соединения через порт 8443.

Заключение:

Блокировки могут быть полезными для предотвращения несанкционированного доступа, но если они блокируют законные соединения, как те, которые требуются для работы ваших приложений, UFW необходимо правильно настроить. Полученное сообщение предупреждает вас о заблокированном соединении, и, получив эту информацию, вы можете принять решение об открытии порта или о дополнительной настройке для обеспечения оптимальной работы ваших сервисов и их безопасности.

Оцените материал
Добавить комментарий

Капча загружается...