Регистрация всей активности с помощью iptables

iptablesПо умолчанию у него есть правило фильтрации в режиме «Принимать все», то есть оно разрешает входить и исходить все подключения с нашего ПК или с ним, но что, если мы хотим регистрировать всю информацию о подключениях к нашим серверам или ПК?

Примечание: процедура, которую я сейчас выполню, действительна на 100% в дистрибутивах. Debian/Debian на основе, поэтому, если вы используете Slackware, Fedora, CentOS, OpenSuSe, процедура может отличаться, мы рекомендуем прочитать и понять систему входа в систему вашего дистрибутива, прежде чем применять то, что объясняется ниже. Также существует возможность установки rsyslog в вашем дистрибутиве, если он доступен в репозиториях, хотя в этом руководстве syslog также объясняется в конце.

Пока все хорошо, но чтоКуда мы будем входить? Легко, в файле «/var/log/брандмауэр/iptables.log", какие не существует, пока мы сами в это не поверим ...

1- Мы должны создать файл «iptables.log»Внутри папки«/ var / журнал / брандмауэр»Что мы должны его создать, потому что его тоже нет.

mkdir -p / var / журнал / брандмауэр /
коснитесь /var/log/firewall/iptables.log

2- Разрешения, очень важно ...

chmod 600 /var/log/firewall/iptables.log
корень chown: adm /var/log/firewall/iptables.log

3- rsyslog, демон входа в систему Debian, считывает конфигурацию из «/etc/rsyslog.d«, Поэтому мы должны создать файл, который я назову«брандмауэр.conf»Из которого rsyslog может интерпретировать то, что мы хотим сделать.

коснитесь /etc/rsyslog.d/firewall.conf

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

: msg, contains, "iptables:" - / var / log / firewall / iptables.log
& ~

Я не имею ни малейшего представления,что делают эти пара строк?

Первая строка проверяет зарегистрированные данные на наличие строки «IP-таблицы: »И добавляет в файл«/var/log/брандмауэр/iptables.log«

Второй останавливает обработку информации, вошедшей в систему по предыдущему шаблону, чтобы она больше не отправлялась на «/ var / log / сообщения».

4- Поворот файла журнала с достигнуто.

Мы должны творить внутри «/etc/logrotate.d/" файл "брандмауэр»Что будет содержать следующий контент:

/var/log/брандмауэр/iptables.log
{
повернуть 7
ежедневно
размер 10M
дататекст
missingok
создать 600 root ADM
notifempty
сжимать
задержка сжатия
постротация
invoke-rc.d перезагрузка rsyslog> / dev / null
конечный сценарий
}

Для того, чтобы ротация журналов 7 раз перед их удалением, 1 раз в день, максимальный размер журнала 10 МБ, сжатый, датированный, без выдачи ошибки, если журнал не существует, создан как root.

5- Перезапустите, как и все xD со счастливым концом, демон rsyslog:

/etc/init.d/rsyslog перезапуск

Как доказать, что все это работает?

Попробуем SSH.

Устанавливать OpenSSH (если он не установлен ...):

apt-get установить openssh-server

Прежде чем продолжить, мы должны запустить консоль с правами root:

iptables -A INPUT -p tcp --dport 22 --syn -j LOG --log-prefix "iptables: " --log-level 4

При выполнении этого оператора iptables будет записано достаточно информации, чтобы показать, что то, что мы сделали, не напрасно. В этом предложении мы говорим iptables регистрировать всю информацию, которая поступает к нему через порт 22. Для тестирования с другими службами просто измените номер порта, например 3306 для MySQL, просто чтобы процитировать пример, если вам нужна дополнительная информация, прочтите это очень хорошо документированное руководство и основан на типовых примерах наиболее часто используемых конфигураций.

По умолчанию SSH использует порт 22, поэтому мы проведем с ним тест. Установив openssh, подключаемся к нему.

ssh pepe @ тестовый сервер

Чтобы посмотреть логи, хвостиком решите эту задачу:

хвост -f /var/log/firewall/iptables.log

Iptables, в этом примере, записывает все, день, время, ip, mac и т. Д., Что делает его отличным для мониторинга наших серверов. Небольшая помощь, которая никогда не повредит.

Теперь, учитывая, что мы используем другой дистрибутив, как я уже сказал в начале, он обычно используется Rsyslog, или что-то подобное. Если ваш дистрибутив использует системный журнал, чтобы выполнить то же самое упражнение, мы должны немного отредактировать / изменить syslog.conf

нано /etc/syslog.conf

Добавьте и сохраните следующую строку:

kern.warning /var/log/firewall/iptables.log

А потом, знаете, счастливый конец:

/etc/init.d/sysklogd перезапуск

Результат: то же самое.

На этом пока все, в будущих публикациях мы продолжим играть с iptables.

Ссылки:

Заставить iptables регистрироваться в другом файле

Записать iptables в отдельный файл с помощью rsyslog

Руководство по настройке Iptables в системах Fedora / RHEL


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   FerreryGuardia сказал

    Отлично это «мини-мануал» для BOFH, который вы делаете понемногу

  2.   Корацуки сказал

    Спасибо, постепенно я буду предоставлять детали и данные iptables, которые я должен был знать из своей работы, которые иногда нам нужны и очень плохо объясняются в Интернете, все от пользователя ... xD

    1.    КЗКГ ^ Гаара сказал

      Пользуясь случаем, приветствую вас, член 😀
      Вам действительно есть ОЧЕНЬ внести свой вклад, вы действительно хорошо разбираетесь в сетях, системах, брандмауэрах и т.д., так что я буду (я) одним из многих читателей, которые у вас будут, хахаха.

      Привет и ну ... ну, чего бы это ни стоило 😀

    2.    Изар сказал

      Я с нетерпением жду этих предметов ^^

  3.   Хьюго сказал

    Давай, Корацуки, я не знал, что ты часто заходишь в этот блог.

    Кстати, еще один вариант регистрации активности брандмауэра - использование пакета улогд, созданный людьми из проекта netfilter для облегчения разделения следов этого типа (позволяет сохранять их разными способами). Я обычно использую такой подход. Использовать его несложно, например:

    iptables -A INPUT -p udp -m multiport ! --ports 53,67:68 -m state --state NEW -j ULOG --ulog-prefix "Solicitud UDP dudosa"

  4.   Корацуки сказал

    Мне нужно будет дать посту F5, мне подходит способ работы Ulogd, даже MySQL регистрирует тип: D.

  5.   MSX сказал

    Хороший пост, так держать.

  6.   Chinoloco сказал

    Привет, босс, как дела?
    Могли бы вы дать мне руку?
    Поскольку у меня нет учебника, и он чище, чем вода, я не знаю, где я ошибаюсь