Как заблокировать IP адреса через ufw

    В статье описано, как заблокировать конкретные IP адреса через ufw.

    UFW (Uncomplicated Firewall) — стандартная утилита для конфигурирования межсетевого экрана iptables для ОС Ubuntu Linux. Она использует интерфейс командной строки, состоящий из небольшого числа простых команд. UFW — это удобный способ создания базового брандмауэра IPv4 или IPv6, чтобы защитить сервер.



    Блокировка определенных IP адресов через ufw


    Синтаксис:

    sudo ufw deny from {ip-address-here} to any
    

    Для блокировки или закрытия всех пакетов с 192.168.1.5, вводим:

    sudo ufw deny from 192.168.1.5 to any
    

    Показываем статус фаервола включая правила. Для проверки недавно добавленных правил, вводим:

    $ sudo ufw status numbered
    

    или

    $ sudo ufw status
    



    Блокировка определенных IP и номера порта через ufw


    Синтаксис:

    ufw deny from {ip-address-here} to any port {port-number-here}
    

    Для блокировки или закрытия «спамерских» IP адресов 202.54.1.5 порта 80, вводим:

    sudo ufw deny from 202.54.1.5 to any port 80
    

    Заново проверяем посредством следующей команды:

    $ sudo ufw status numbered
    

    Результат:



    Закрытие определенных IP, номеров портов и протоколов через ufw



    Синтаксис:

    sudo ufw deny proto {tcp|udp} from {ip-address-here} to any port {port-number-here}
    

    Для примера блокировка вредоносных IP адресов 202.54.1.1 tcp порта 22, вводим:

    $ sudo ufw deny proto tcp from 202.54.1.1 to any port 22
    $ sudo ufw status numbered
    

    Блокировка подсети через ufw. Синтаксис тот же:

    $ sudo ufw deny proto tcp from sub/net to any port 22
    $ sudo ufw deny proto tcp from 202.54.1.0/24 to any port 22
    

    Как удалить блокировку и разблокировать IP адресов



    Ситаксис:

    $ sudo ufw status numbered
    $ sudo ufw delete NUM
    

    Для удаления правила # 4, вводим:

    $ sudo ufw delete 4
    

    Результат:

     deny from 202.54.1.5 to any port 80
    Proceed with operation (y|n)? y
    Rule deleted
    

    Подсказка: UFW, НЕ блокирующий IP-адрес

    Чтобы избежать лишних проблем с ненужной блокировкой, необходимо изменить the/etc/ufw/before.rules файл и добавить раздел “Block an IP Address” после “# End required lines”.

    $ sudo vi /etc/ufw/before.rules
    

    # End required lines
    

    Добавьте свое правило для блока от спама или хакеров:



    Сохраните и закройте файл. И — перезагрузите брандмауэр:

    $ sudo ufw reload
    
    ua-hosting.company 279,35
    Хостинг-провайдер: серверы в NL / US до 100 Гбит/с
    Поделиться публикацией
    Комментарии 17
    • +10
      Хабр, что с тобой? Вчера статья, про то, как посмотреть список файлов в директории, сегодня — как добавить ip-адрес в iptables.
      • +1
        Да этот хостинг провайдер постоянно фигню постить умудряется. Страшно представить какие там люди работают, если для них это открытие %)
        На днях было про то, как обновить Debian 8.2 к версии 8.3
        *facepalm*
      • +6
        Имхо, тэг Серверное администрирование* здесь неуместен от слова "совсем". На серверах настраиваются iptables с кучей разных плюшек и приколов, которых вообще нет в ufw.
        • –5
          Будем признательны, если Вы напишите статью об этом и пришлете её нам (либо опубликуете от своего имени в нашем блоге) — мы с радостью опубликуем это дополнение и даже можем обсудить вознаграждение за Ваш труд.
          Наши клиенты — не все профессиональные администраторы и для многих даже эта публикация — "системное администрирование".
          Помимо прочего на Хабре реально не хватает материалов для "чайников", которые многим начинающим веб-мастерам были бы полезны (именно веб-мастерам, а не только системным администраторам, хотя администраторы — также разных познаний и опыта бывают). Именно в этом наша задача, давать возможность нашим клиентам осваивать какие-то азы просто, а не писать монографии для системных администраторов с многолетним опытом.
          • +6
            Ваша задача понятна, пропиарить свои услуги или свою компанию, не больше и не меньше, благодаря подобным статьям на хабре всё больше и больше статей, которые не интересны, просто поиск по слову iptables на хабре даёт очень много материала, как для опытных, так и для начинающих. К сожалению на хабре нет возможности забанить все статьи в определенном блоге, если они одновременно в разных разделах, приходится, а то я думаю многие бы уже забанили ваш блог, несмотря на то, что я не имею ничего против вашей компании, но сумма пользы от постов, которые публикуются в вашем блоге, около нуля, полезные нивелируются бесполезными и только зря отвлекающими время и внимание.
          • 0
            Это и есть обвязка к iptables. Аналогично и shorewall, и firewalld.
            Далеко не всегда на серверах нужны «кучи плюшек», во многих случаях хватает открыть четыре порта и related,established на вход.
          • +1
            А где в схеме прохождения пакетов
            image
            располагается ufw?
            • 0
              В итоге это просто скриптик на питоне для эмуляции ipfw like интерфейса :(
              • 0
                Он же просто фронтенд к iptables/netfilter. Можно взять какую-нибудь виртуалку с убунтой, поставить ufw и посмотреть на выхлоп iptables-save.
              • +3
                из таких надстроек мне ferm (http://ferm.foo-projects.org/) больше нравится
                • 0
                  Почему-то о нем очень мало упоминаний, хотя ferm просто замечательный. Он очень простой и крайне удобный, позволяет делать все то, что можно сделать через iptables, ip6tables и ebtables удобно, ничего не скрывая, зато добавляет циклы, переменные, списки, которых очень не хватает в *tables.
                  С ferm не будет такого, что временно добавленные правила забыли сохранить, и после перезагрузки у нас в файрволле не то, что ожидалось, и приходится разгребать все это, смотреть в зачастую не самый понятный вывод iptables -vnL.
                  • 0
                    Тот случай, когда комментарий полезней статьи. Надо поискать, есть ли ферма под CentOS.
                    Но вообще, с админскими масштабами где количество хостов 10+ а количество виртуалок за полсотни, разве что ansible'ом фаерволы раздавать, или chef/puppet'ами
                    • 0
                      Есть в EPEL репах. А с CM тулами — иногда проще iptables рулить, иногда темплейтами того же ferm'a… Тут уж кому что. В принципе пару статей на хабре есть, в общем и целом особо там разжевывать нечего :) Из вкусностей там еще можно писать что-то похожее на функции.
                      • 0
                        Использовали такой подход, но с классическим подходом (ipstable-save/iptables-restore) работать крайне неприятно: сбрасываются активные соединения, динамически добавленные цепочки (типа докеровской или fail2ban'овской).

                        В rhel/centos 7 есть firewalld, который вполне разумен с точки зрения юзабилити. Внизу, естественно, используется iptables. Что хорошо — он имеет так называемые direct правила, позволяющие использовать iptables, когда стандартного интерфейса не хватает. Ну и прописывание правил с таймаутом — тоже прекрасная вещь.
                    • 0
                      Прям таки для ОС Ubuntu Linux? >_<
                      • +1
                        Эээ, что это? «Вредоносные IP адреса»? Инструкция как позвать «ufw deny»? Перевод двух строчек из «man ufw»?
                        Серьёзно, такая статья может пригодиться в ЧаВо вашего провайдера в разделе справки, для тех, кто ищет информацию именно там. А что тут нового и интересного для местного сообщества — не совсем понимаю.
                        • 0
                          Полезны бывают разве что комментарии под такими статьями. И то редко ,)

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

                        Самое читаемое