Firehol: iptables для людей (Arch)

Прежде всего, все кредиты идут на @ЮкитеруАмано, потому что этот пост основан на учебник вы разместили на форуме. Разница в том, что я сосредоточусь на Арка, хотя это, вероятно, работает для других дистрибутивов, основанных на Systemd.

Что такое Файерхол?

Фаерхол, это небольшое приложение, которое помогает нам управлять брандмауэром, интегрированным в ядро, и его инструмент Iptables. Firehol не имеет графического интерфейса, все настройки должны выполняться с помощью текстовых файлов, но, несмотря на это, настройка по-прежнему проста для начинающих пользователей или эффективна для тех, кто ищет дополнительные параметры. Все, что делает Firehol, - это максимально упрощает создание правил iptables и обеспечивает хороший межсетевой экран для нашей системы.

Установка и настройка

Firehol отсутствует в официальных репозиториях Arch, поэтому мы будем ссылаться на AUR.

yaourt -S firehol
Затем переходим к файлу конфигурации.

sudo nano /etc/firehol/firehol.conf

И мы добавляем туда правила, вы можете использовать эти.

Продолжайте активировать Firehol для каждого запуска. С systemd довольно просто.

sudo systemctl enable firehol

Мы запустили Firehol.

sudo systemctl start firehol

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

sudo iptables -L

Отключить IPv6

Как firehol не справляется ip6tables и поскольку большинство наших контактов не поддерживают IPv6, я рекомендую отключить его.

En Арка мы добавляем ipv6.disable = 1 в строку ядра в файле / etc / default / grub


...
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="rw ipv6.disable=1"
GRUB_CMDLINE_LINUX=""
...

Теперь мы регенерируем grub.cfg:

sudo grub-mkconfig -o /boot/grub/grub.cfg

En Debian достаточно с:

sudo echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf


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

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

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

*

*

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

  1.   Felipe сказал

    Я не понимаю. Вы следуете руководству, и у вас уже работает брандмауэр и все соединения заблокированы? Еще одна вещь Учебник для Arch сложен, например, я никогда не использовал sudo или yaourt Firewall. Однако это понятно. Или, может быть, кто-то новый напишет yaourt и получит ошибку. Для Манджаро это более правильно.

    1.    Юкитеру сказал

      Как вы скажете @felipe, следуя руководству и вставив в файл /etc/firehol/firehol.conf правила, заданные @cookie в вставке, у вас уже будет простой брандмауэр для защиты системы на базовом уровне. Эта конфигурация работает для каждого дистрибутива, в который вы можете поместить Firehol, с особенностями каждого дистрибутива, он обрабатывает свои службы по-разному (Debian через sysvinit, Arch с systemd), а что касается установки, все знают, что у них есть, в Arch вы должны используйте репозитории AUR и yaourt, в Debian достаточно официальных, а во многих других вам просто нужно немного поискать в репозиториях и адаптировать команду установки.

  2.   ci сказал

    спасибо, беру на заметку.

  3.   Конфиг сказал

    Все это очень хорошо ... но не хватает самого главного; Вы должны объяснить, как создаются правила !!, что они означают, как создавать новые ... Если это не объяснено, то то, что вы добавили, бесполезно: - /

    1.    Юкитеру сказал

      Создавать новые правила просто, документация firehol ясна и очень точна с точки зрения создания настраиваемых правил, поэтому небольшое чтение поможет вам настроить ее и адаптировать под свои нужды.

      Я думаю, что первоначальная причина публикации @cookie, подобной моей, на форуме, заключалась в том, чтобы дать пользователям и читателям инструмент, который позволяет им повысить безопасность своих компьютеров на базовом уровне. Остальное остается для вас, чтобы вы могли приспособиться к своим потребностям.

    2.    печенье сказал

      Если вы прочитаете ссылку на руководство по Yukiteru, вы поймете, что цель состоит в том, чтобы опубликовать приложение и конфигурацию базового брандмауэра. Я пояснил, что мой пост был только копией, посвященной Arch.

  4.   Маакуб сказал

    И это «для людей»? о_О
    Попробуйте Gufw на Arch: https://aur.archlinux.org/packages/gufw/ >> Щелкните Статус. Или ufw, если вы предпочитаете терминал: sudo ufw enable

    Вы уже защищены, если вы обычный пользователь. Это «для людей» 🙂

    1.    Elav сказал

      Firehol действительно является Front-End для IPTables, и если мы сравним его с последним, он вполне человечный 😀

    2.    Юкитеру сказал

      Я считаю ufw (Gufw - это просто его интерфейс) плохим вариантом с точки зрения безопасности. Причина: для большего количества правил безопасности, которые я написал в ufw, я не мог избежать того, что в тестах моего брандмауэра, как через Интернет, так и в тех, которые выполняются с использованием nmap, такие службы, как avahi-daemon и exim4, будут казаться открытыми, и достаточно только «скрытой» атаки чтобы знать мельчайшие характеристики моей системы, ядра и служб, которые он запускал, то, что не происходило со мной, используя firehol или брандмауэр arno.

      1.    Жискар сказал

        Ну, не знаю, как вы, но, как я писал выше, я использую Xubuntu, и мой брандмауэр идет с GUFW, и я прошел ВСЕ тесты ссылки, которую автор поместил без проблем. Все скрытно. Ничего открытого. Итак, по моему опыту ufw (и, следовательно, gufw) я прекрасно справляюсь. Я не критически отношусь к использованию других режимов управления брандмауэром, но gufw работает безупречно и дает отличные результаты в плане безопасности.

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

        1.    Юкитеру сказал

          Ниже я комментирую кое-что по теме ufw, где я говорю об ошибке, которую я видел в 2008 году, используя Ubuntu 8.04 Hardy Heron. Что они уже исправили? Скорее всего, это так, поэтому нет причин для беспокойства, но даже в этом случае это не означает, что ошибка была там, и я мог показать ее, хотя умереть было неплохо, я только остановил демонов avahi-daemon и exim4, и проблема уже решена. Самое странное, что проблема была только в этих двух процессах.

          Я упомянул этот факт как личный анекдот и высказал то же мнение, когда сказал: «Я считаю ...»

          Привет 🙂

    3.    Жискар сказал

      +1

  5.   мешки сказал

    @Yukiteru: Вы пробовали это на своем компьютере? Если вы смотрите со своего ПК, это нормально, что вы можете получить доступ к сервисному порту X, поскольку заблокированный трафик является сетевым, а не локальным:
    http://www.ubuntu-es.org/node/140650#.UgJZ3cUyYZg
    https://answers.launchpad.net/gui-ufw/+question/194272

    Если нет, сообщите об ошибке 🙂
    поздравления

    1.    Юкитеру сказал

      С другого компьютера с использованием локальной сети в случае nmap и через Интернет с помощью этой страницы https://www.grc.com/x/ne.dll?bh0bkyd2Используя опцию пользовательских портов, оба согласились, что avahi и exim4 слушают из сети, даже если в ufw настроена их блокировка.

      Я решил эту маленькую деталь avahi-daemon и exim4, просто отключив службы, и все ... Я не сообщал об ошибке в то время, и я не думаю, что имеет смысл делать это сейчас, потому что это было еще в 2008 году с использованием Hardy.

      1.    Жискар сказал

        2008 год был 5 лет назад; от Hardy Heron до Raring Ringtail - 10 * buntus. Тот же самый тест на моем Xubuntu, сделанный вчера и повторенный сегодня (август 2013 г.), дает идеальные результаты во всем. А я использую только UFW.

        Повторяю: есть ли у вас дополнительные тесты? Я с удовольствием это делаю и сообщаю, что из этого выходит.

        1.    Юкитеру сказал

          Выполните SYN и IDLE сканирование вашего ПК с помощью nmap, это даст вам представление о том, насколько безопасна ваша система.

          1.    Жискар сказал

            У nmap man более 3000 строк. Если вы дадите мне команду выполнить с удовольствием, я сделаю это и сообщу результат.

          2.    Юкитеру сказал

            Хм, я не знал о 3000 страницах руководства по nmap. но zenmap помогает сделать то, что я вам говорю, это графический интерфейс для nmap, но все же опция для SYN-сканирования с nmap - -sS, а опция для холостого сканирования - -sI, но точная команда Я буду.

            Сделайте сканирование с другой машины, указывающей на IP-адрес вашей машины с помощью ubuntu, не делайте этого со своего собственного компьютера, потому что это не так, как это работает.

          3.    Юкитеру сказал

            СМЕШНО!! Моя ошибка насчет 3000 страниц, когда это были строки 😛

  6.   Джеус Исраэль Пералес Мартинес сказал

    Я не знаю, но я думаю, что графический интерфейс для этого в GNU / Linux для управления брандмауэром будет чем-то разумным, и чтобы не оставлять все открытым, как в ubuntu, или все, что покрыто, как в Fedora, вы должны быть хорошими xD или чем-то еще, чтобы настроить чертовски убийственные альтернативы xD hjahjahjaja С ними и с открытым jdk мне нечего драться, но в любом случае нужно соблюдать принцип поцелуя

  7.   Маврикий сказал

    Благодаря всем неудачам, которые случились в прошлом с iptables, сегодня я могу понять niverl raw, то есть разговаривать напрямую с ним, поскольку он идет с завода.

    И это не так уж и сложно, очень легко научиться.

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

    ## Правила очистки
    Iptables -F
    Iptables -X
    iptables-Z
    iptables -t нат -F

    ## Установить политику по умолчанию: DROP
    iptables -P ПАДЕНИЕ ВВОДА
    iptables -P ВЫХОДНОЕ УДАЛЕНИЕ
    iptables -P УДАЛЕНИЕ ВПЕРЕД

    # Работаем на localhost без ограничений
    iptables -A ВВОД -i lo -j ПРИНЯТЬ
    iptables -A ВЫХОД -o lo -j ПРИНЯТЬ

    # Разрешить машине выходить в Интернет
    iptables -A INPUT -p tcp -m tcp –sport 80 -m conntrack –ctstate СВЯЗАННЫЕ, УСТАНОВЛЕННЫЕ -j ПРИНЯТЬ
    iptables -A ВЫВОД -p tcp -m tcp –dport 80 -j ПРИНЯТЬ

    # Уже и для защиты веб-сайтов
    iptables -A INPUT -p tcp -m tcp –sport 443 -m conntrack –ctstate СВЯЗАННЫЕ, УСТАНОВЛЕННЫЕ -j ПРИНЯТЬ
    iptables -A ВЫВОД -p tcp -m tcp –dport 443 -j ПРИНЯТЬ

    # Разрешить пинг изнутри
    iptables -A ВЫВОД -p icmp – эхо-запрос типа icmp -j ПРИНЯТЬ
    iptables -A INPUT -p icmp –icmp-type эхо-ответ -j ПРИНЯТЬ

    # Защита по SSH

    #iptables -I INPUT -p tcp –dport 22 -m conntrack –ctstate NEW -m limit –limit 30 / minute –limit-burst 5 -m comment –comment "SSH-kick" -j ACCEPT
    #iptables -A INPUT -p tcp -m tcp –dport 22 -j LOG –log-prefix «SSH ACCESS ATTEMPT:» –log-level 4
    #iptables -A INPUT -p tcp -m tcp –dport 22 -j DROP

    # Правила для amule, разрешающие исходящие и входящие соединения через порт
    iptables -A INPUT -p tcp -m tcp –dport 16420 -m conntrack –ctstate NEW -m comment –comment "aMule" -j ACCEPT
    iptables -A OUTPUT -p tcp -m tcp –sport 16420 -m conntrack –ctstate СВЯЗАННЫЕ, УСТАНОВЛЕННЫЕ -m комментарий –comment "aMule" -j ACCEPT
    iptables -A INPUT -p udp –dport 9995 -m comment –comment "aMule" -j ACCEPT
    iptables -A ВЫХОД -p udp –sport 9995 -j ПРИНЯТЬ
    iptables -A INPUT -p udp –dport 16423 -j ПРИНЯТЬ
    iptables -A ВЫХОД -p udp –sport 16423 -j ПРИНЯТЬ

    Теперь небольшое пояснение. Как видите, есть правила с политикой DROP по умолчанию, ничего не уходит и не входит в команду без вашего ведома.

    Затем передаются основы, локальный хост и навигация по сети сетей.

    Как видите, существуют правила для ssh и amule. Если они хорошо смотрят, как они сделаны, они могут устанавливать другие правила, какие захотят.

    Хитрость заключается в том, чтобы увидеть структуру правил и применить их к определенному типу порта или протокола, будь то udp или tcp.

    Надеюсь, вы понимаете то, что я только что разместил здесь.

    1.    печенье сказал

      Вы должны сделать сообщение с объяснением этого 😉 было бы здорово.

  8.   @Jlcmux сказал

    У меня есть вопрос. Если вы хотите отклонить соединения http и https, я помещаю:

    сервер "http https" сбрасывает?

    И так далее с любым сервисом?

    спасибо