Ubuntu файрвол

Содержание
  1. Настройка файрвола на Ubuntu
  2. Что такое файрвол и Ubuntu
  3. Установка Gufw
  4. Настройка Gufw
  5. Дополнительные функции
  6. Заключение
  7. Использование утилиты UFW на Linux. Настройка UFW на Linux (Ubuntu)
  8. Предварительные требования
  9. Проверка правил и текущего состояния UFW
  10. Краткое описание
  11. Предварительная подготовка
  12. Настройка
  13. Операции с портами
  14. Операции с IP-адресами
  15. Настройка UFW Ubuntu
  16. 1. Синтаксис ufw
  17. 2. Команды UFW
  18. 1. Как включить UFW
  19. 2. Политика по умолчанию
  20. 3. Добавление правил UFW
  21. 4. Правила limit ufw
  22. 5. Просмотр состояния UFW
  23. 6. Удаление правил ufw
  24. 7. Логгирование в ufw
  25. 8. Отключение UFW
  26. Выводы
  27. Как настроить брандмауэр UFW на Ubuntu 18.04
  28. Установка UFW
  29. Настройка правил по умолчанию UFW
  30. Запуск UFW брандмауэра
  31. Р р°р·сђрµс€рµрѕрёрµ сѓрѕрµрґрёрѕрµрѕрёсџ рі ufw
  32. Security – Firewall
  33. ufw – Uncomplicated Firewall
  34. ufw Application Integration
  35. IP Masquerading
  36. ufw Masquerading
  37. iptables Masquerading
  38. Logs
  39. Other Tools
  40. References

Настройка файрвола на Ubuntu

Ubuntu файрвол

В независимости от операционной системы файрвол — необходимый инструмент для защиты персонального компьютера от несанкционированных сообщений с хостами или сетями. Во вступлении лишь обозначим проблему, а «почему, зачем и как» — далее. В этой статье мы разберёмся, как настроить файрвол на Ubuntu.

Настройка файрвола на Ubuntu

Чтобы всё было нам понятно, разберёмся сначала, что такое Ubuntu и, собственно, сам файрвол, каким он бывает.

Что такое файрвол и Ubuntu

Первое, что необходимо знать, если вы новичок — Ubuntu это операционная система из семейства Linux, то есть перед нами Linux со всеми вытекающими. Интерфейс, файловая система и всё остальное — родное, с некоторыми изменениями, из-за них Ubuntu и выделяют в отдельную операционную систему, которая входит в четвёрку по популярности среди пользователей семейства.

Файрвол (firewall) — огненная стена, грубо говоря, экран, который контролирует все входящие и исходящие трафики и позволяет контролировать их: разрешать или запрещать.

Линукс во многих аспектах намного безопаснее той же Windows, и вирусов нет, и файловая система круче (не фрагментируется), но это не значит, что можно пренебрегать безопасностью и игнорировать прекрасную возможность обезопасить свои данные файрволом.

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

Это долго, сложно и неудобно, тем более при копировании команд некоторые символы могут замениться на альтернативные, и придётся доводить команды вручную или, вообще, набирать их целиком.

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

В стоковой Линукс предустановлен очень мощный iptables, разобраться с которым неопытному пользователю крайне сложно, поэтому Gufw — настоящий спасательный круг. Давайте разбираться, как его установить и настроить.

Установка Gufw

Изначально в системе не установлен Gufw, поэтому нам необходимо его установить, прописав в командной строке:

$ sudo apt install gufw

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

Вводим пароль

Файрвол нужно добавить в автозагрузку, чтобы все его конфигурации оставались в неизменном виде, вводим в командной строке:

$ sudo ufw enable

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

Для удобства в программе предусмотрено три профиля: дом, общественное место, офис. На первичном экране мы можем поставить только общие настройки. Например, если разбираться дальше в правилах нет желания или возможности — можно просто запретить входящий трафик и разрешить исходящий.

Можно запретить например входящий и исходящий трафик

ВАЖНО. Запрет и входящего и исходящего трафика блокирует все подключения, доступа в интернет просто не будет. Но так можно делать, если потом добавить специальные правила доверенным процессам и программам.

Перейдя в «Правка», «Параметры» можно изменить общие настройки приложения и создать свои профили, для которых впоследствии создать отдельные правила.

Можно запретить например входящий трафик и разрешить исходящий

Настройка Gufw

Приступаем к настройке Ubuntu firewall. На главном окне программы переходим во вкладку «Правила», там, собственно, мы их и будем удалять.

Снизу у нас есть три кнопки + — и ≡, означают они соответственно «Добавить правило», «Удалить правило» и «Изменить правило».

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

$ ping ya.ru

Убеждаемся, что доступа нет и действуем дальше.

Жмём «Добавить правило», нам нужно выбрать политику, наш вариант «Разрешить». Можно также выбрать одну сторону или обе, для которых будет выполняться правило. Указываем приложение — DNS, поиск можно разбивать на категории, чтобы найти было легче. Жмём кнопку «Добавить» и правило создано. Проверяем изменения в командной строке с помощью той же фразы.

Добавление правила сетевого экрана

Мы получили АйПи, но ICMP всё ещё запрещён, какой вывод? Такой способ контроля приложений не универсален и не затрагивает все порты. Специально для нас в окне добавления правил существуют дополнительные вкладки «Обычные» и «Расширенные».

На вкладке «Обычные» мы не можем выбрать программу, но зато можем указать порт и протокол. А в «Расширенных» есть возможность контролировать исходящий и исходящий IP.

В самом общем случае нам необходимо разрешить работу наших браузеров, а для этого необходимо открыть специальные порты. Но мы не будем заморачиваться и воспользуемся встроенными возможностями и перейдём на вкладку «Предустановленные», где создадим разрешающее правило для HTTP и HTTPS. После таких манипуляций все браузеры в системы смогут работать.

Необязательно запрещать все подключения и потом создавать отдельные разрешающие правила, можно поступить наоборот: разрешить все соединения, а потом создавать запрещающие правила.

Дополнительные функции

Быстренько пробежимся по двум оставшимся вкладкам на главном окне программы.

Вкладка «Отчёт» предоставляет нам информацию по программам и процессам, которые хотят получить доступ. Основываясь на этой информации, мы можем выявить нежелательные приложения и запретить им доступ, очень удобный инструмент.

Отчет в Gufw

«Журнал» позволяет нам отслеживать любые изменения в настройках программы. Создали правило — в журнале прописалась строчка, удалили правило — то же самое.

Отслеживание работы программы

Заключение

Настройка файрвола Ubuntu сводится к созданию и удалению правил, на этом строится принцип работы защиты.

Как мы убедились, ничего сложного или сверхъестественного в установке и настройке нет, всё довольно просто и понятно.

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

Источник: https://nastroyvse.ru/opersys/lix/nastrojka-fajrvola-na-ubuntu.html

Использование утилиты UFW на Linux. Настройка UFW на Linux (Ubuntu)

Ubuntu файрвол

UFW (Uncomplicated Firewall — несложный фаервол) —  удобный интерфейс для управления политиками безопасности межсетевого экрана. Наши серверы постоянно подвергаются различным атакам или сканируются в поиске уязвимостей.

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

В нашем руководстве мы рассмотрим основные команды и правила работы с утилитой UFW.

Предварительные требования

  1. Для начала работы с UFW вам потребуется суперпользователь(возможность исполнения команд под sudo).  

  2. Утилита  UFW предустановлена в системе. Если по какой-то причине она была отсутствует, вы можете установить ее  с помощью команды:

    sudo apt-get install ufw

Проверка правил и текущего состояния UFW

В любое время вы можете проверить состояние UFW с помощью команды:

sudo ufw status verbose

По умолчанию UFW отключен, так что вы должны увидеть что-то вроде этого:

Status: inactive

Если UFW включен, то в консоли будут перечисляться заданные правила. Например, если firewall настроен таким образом — SSH (порт 22) соединение из любой точки мира, консоль может выглядеть следующим образом:

Status: activeLogging: on (low)Default: deny (incoming), allow (outgoing), disabled (routed)New profiles: skip To                         Action      From—                         ——      —-22                         ALLOW IN    Anywhere22 (v6)                    ALLOW IN    Anywhere (v6)

Так вы всегда можете узнать как настроен фаервол. 

Внимание! Проведите начальную настройку перед включением UFW. В частности, должен быть доступен SSH(22 порт). В ином случае вы рискуете потерять доступ к серверу.

Краткое описание

С английского языка название дословно переводится как несложный (упрощенный) брандмауэр. Особенность продукта — минимализм с графической оболочкой на основе командной строки.

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

Создание более сложных правил и тонкая настройка доступны в iptables.

Изначально решение разрабатывалось для операционных систем семейства Debian и Ubuntu. Дальнейшие действия выполняются под управлением Ubuntu.

Предварительная подготовка

Если UFW не установлен на серверной платформе, используем стандартную утилиту:

sudo apt-get install ufw

Второй вариант – утилита установлена, но неактивна, тогда прописываем:

sudo ufw enable

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

После инсталляции проверим состояние программы:

sudo ufw status verbose

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

sudo nano /etc/default/ufw

sudo ufw default deny incoming
sudo ufw default allow outgoing

Первая строка отвечает за блокировку, а вторая за исходящие подключения.

Настройка

UFW распределяет правила согласно профилям программ. Они хранятся по следующему пути:

/etc/ufw/applications.d

Создание нового или редактирование текущего профиля проводится администратором в ручном режиме. Для начала ознакомимся с текущими профилями:

sudo ufw app list

Просмотр подробной информации по любой записи осуществляется при помощи следующей команды:

sudo ufw app info ‘name’

Где name — наименование профиля, которое заключается в одинарные кавычки.

Например, просмотрим сервис OpenSSH:

Первая строка — имя новой записи в UFW. Вторая описывает заголовок, по которому профиль будет идентифицироваться. Третья содержит краткое описание сервиса (рекомендуется использовать 1-2 предложения). Последняя строка указывает порты, которые необходимо открыть для работы приложения.

Сохраняем файл и перезагружаем межсетевой экран:

ufw reload

Следующий шаг — прописываем политику для новой записи. Доступно два режима: разрешить (Allow) и запретить (Deny). Синтаксис выглядит следующим образом:

ufw

Где action – одно из двух значений Allow или Deny, а name_profile — наименование профиля.

Операции с портами

Для открытия/закрытия портов также используется команды Allow/Deny, в зависимости от требований администратора. Синтаксис выглядит следующим образом:

sudo ufw /

Расшифровка:

1. action — одно из двух действий: разрешить (Allow) или запретить (Deny);2. port — цифровое имя порта, для которого применяется правило;

3. name_protocol — наименование протокола.

Если требуется указать перечень портов, используем двоеточие между начальной и конечной точкой. Альтернативный вариант — использовать имя службы, для которой создается запись. Например, откроем порт для сервиса HTTP:

sudo ufw allow http

Важно! UFW разрешает стандартный порт, который закреплен за службой. Если значение отличается от общепринятых, то создавать правило по имени сервиса нельзя — оно не активируется.

Операции с IP-адресами

Аналогично портам правила создаются правила и для IP-адресов. Синтаксис идентичен предыдущему пункту:

sudo ufw from

Action – принимает значение Allow или Deny, IP-адрес – адрес оборудования, которому предоставляется/запрещается доступ к серверу.

Источник: https://GitJournal.tech/nastrojka-faervola-v-ubuntu-s-pomoshhju-utility-ufw/

Настройка UFW Ubuntu

Ubuntu файрвол

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

В Ubuntu используется оболочка под названием UFW или  Uncomplicated FireWall. В этой статье мы разберём, как выполняется настройка UFW Ubuntu, а также как пользоваться основными возможностями этой программы.

1. Синтаксис ufw

Для управления возможностями брандмауэра используется одноимённая команда – ufw. Давайте сначала рассмотрим её опции и параметры, а потом перейдём к настройке. Синтаксис команды такой:

$ ufw опции действие параметры

Опции определяют общие настройки поведения утилиты, действие указывает, что нужно сделать, а параметры – дополнительные сведения для действия, например, IP-адрес или номер порта.

Сначала разберём опции утилиты:

  • –version – вывести версию брандмауэра;
  • –dry-run – тестовый запуск, никакие реальные действия не выполняются.

2. Команды UFW

Для выполнения действий с утилитой доступны такие команды:

  • enable – включить фаерволл и добавить его в автозагрузку;
  • disable – отключить фаерволл и удалить его из автозагрузки;
  • reload – перезагрузить файервол;
  • default – задать политику по умолчанию, доступно allow, deny и reject, а также три вида трафика – incoming, outgoing или routed;
  • logging – включить журналирование или изменить уровень подробности;
  • reset – сбросить все настройки до состояния по умолчанию;
  • status – посмотреть состояние фаервола;
  • show – посмотреть один из отчётов о работе;
  • allow – добавить разрешающее правило;
  • deny – добавить запрещающее правило;
  • reject – добавить отбрасывающее правило;
  • limit – добавить лимитирующее правило;
  • delete – удалить правило;
  • insert – вставить правило.

Это были все опции и команды, которые вы можете использовать в ufw. Как видите, их намного меньше, чем в iptables и всё выглядит намного проще, а теперь давайте рассмотрим несколько примеров настройки.

1. Как включить UFW

Сначала нужно отметить, что в серверной версии Ubuntu UFW по умолчанию включён, а в версии для рабочего стола он отключён. Поэтому сначала смотрим состояние фаервола:

sudo ufw status

Если он не включён, то его необходимо включить:

sudo ufw enable

Затем вы можете снова посмотреть состояние:

sudo ufw status

Обратите внимание, что если вы работаете по SSH, то перед тем, как включать брандмауэр, нужно добавить правило, разрешающее работу по SSH, иначе у вас не будет доступа к серверу. Подождите с включением до пункта 3.

2. Политика по умолчанию

Перед тем, как мы перейдём к добавлению правил, необходимо указать политику по умолчанию. Какие действия будут применяться к пакетам, если они не подпадают под созданные правила ufw. Все входящие пакеты будем отклонять:

sudo ufw default deny incoming

А все исходящие разрешим:

sudo ufw default allow outgoing

3. Добавление правил UFW

Чтобы создать разрешающее правило, используется команда allow. Вместо allow могут использоваться и запрещающие правила ufw – deny и reject. Они отличаются тем, что для deny компьютер отсылает отправителю пакет с уведомлением об ошибке, а для reject просто отбрасывает пакет и ничего не отсылает. Для добавления правил можно использовать простой синтаксис:

$ ufw allow имя_службы
$ ufw allow порт
$ ufw allow порт/протокол

Например, чтобы открыть порт ufw для SSH, можно добавить одно из этих правил:

sudo ufw allow OpenSSH
sudo ufw allow 22
sudo ufw allow 22/tcp

Первое и второе правила разрешают входящие и исходящие подключения к порту 22 для любого протокола, третье правило разрешает входящие и исходящие подключения для порта 22 только по протоколу tcp.

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

sudo ufw app list

Можно также указать направление следования трафика с помощью слов out для исходящего и in для входящего.

$ ufw allow направление порт

Например, разрешим только исходящий трафик на порт 80, а входящий запретим:

sudo ufw allow out 80/tcp
sudo ufw deny in 80/tcp

Также можно использовать более полный синтаксис добавления правил:

$ ufw allow proto протокол from ip_источника to ip_назначения port порт_назначения

В качестве ip_источника может использоваться также и адрес подсети. Например, разрешим доступ со всех IP-адресов для интерфейса eth0 по протоколу tcp к нашему IP-адресу и порту 3318:

sudo ufw allow proto tcp from 0.0.0.0/24 to 192.168.1.5 port 3318

4. Правила limit ufw

С помощью правил limit можно ограничить количество подключений к определённому порту с одного IP-адреса, это может быть полезно для защиты от атак перебора паролей. По умолчанию подключения блокируются, если пользователь пытается создать шесть и больше подключений за 30 секунд:

sudo ufw limit ssh/tcp

К сожалению, настроить время и количество запросов можно только через iptables.

5. Просмотр состояния UFW

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

sudo ufw status

Чтобы получить более подробную информацию, используйте параметр verbose:

sudo ufw status verbose

С помощью команды show можно посмотреть разные отчеты:

  • raw – все активные правила в формате iptables;
  • builtins – правила, добавленные по умолчанию;
  • before-rules – правила, которые выполняются перед принятием пакета;
  • user-rules – правила, добавленные пользователем;
  • after-rules – правила, которые выполняются после принятия пакета;
  • logging-rules – правила логгирования пакетов;
  • listening – отображает все прослушиваемые порты и правила для них;
  • added – недавно добавленные правила;

Например, посмотрим список всех правил iptables:

sudo ufw show raw

Посмотрим все прослушиваемые порты:

sudo ufw show listening

Или недавно добавленные правила:

sudo ufw show added

6. Удаление правил ufw

Чтобы удалить правило ufw, используется команда delete. Например, удалим ранее созданные правила для порта 80:

sudo ufw delete allow out 80/tcp
sudo ufw delete deny in 80/tcp

7. Логгирование в ufw

Чтобы отлаживать работу ufw, могут понадобится журналы работы брандмауэра. Для включения журналирования используется команда logging:

sudo ufw logging on
sudo ufw logging medium

Также этой командой можно изменить уровень логгирования:

  • low – минимальный, только заблокированные пакеты;
  • medium – средний, заблокированные и разрешённые пакеты;
  • high – высокий.

Лог сохраняется в папке /var/log/ufw. Каждая строчка лога имеет такой синтаксис:

[UFW действие] IN=интерфейс OUT=итерфейс SRC=ip_источника DST=ip_назначения LEN=размер_пакета TOS=0x10 PREC=0x00 TTL=64 ID=728 DF PROTO=протокол SPT=порт_источника DPT=порт назначения LEN=размер_пакета

В качестве действия приводится то, что UFW сделал с пакетом, например ALLOW, BLOCK или AUDIT. Благодаря анализу лога настройка UFW Ubuntu станет гораздо проще.

8. Отключение UFW

Если вы хотите полностью отключить UFW, для этого достаточно использовать команду disable:

sudo ufw disable

Также, если вы что-то испортили в настройках и не знаете как исправить, можно использовать команду reset для сброса настроек до состояния по умолчанию:

sudo ufw reset

Выводы

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

Статья распространяется под лицензией Creative Commons ShareA 4.0 при копировании материала ссылка на источник обязательна. (9 5,00 из 5)
Загрузка…

Источник: https://losst.ru/nastrojka-ufw-ubuntu

Как настроить брандмауэр UFW на Ubuntu 18.04

Ubuntu файрвол
В этой статье мы покажем вам, как настроить брандмауэр UFW на Ubuntu 18.04. В Ubuntu, брандмауэр по умолчанию UFW, коротко Uncomplicated FireWall. Это было вокруг начиная с версии Ubuntu 18.

04 и было построено, чтобы упростить конфигурацию Iptables, который был довольно сложным.

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

Брандмауэр – это щит или барьер, который существует между вашим компьютером Рё интернетом Рё блокирует несанкционированный трафик, такой как удаленный доступ Рє вашей системе, Рё помогает защитить РѕС‚ вредоносного РєРѕРґР°, который постоянно РїСЂРѕС…РѕРґРёС‚ через интернет. Брандмауэр может быть аппаратным или программным. Аппаратный брандмауэр – это автономная система брандмауэра, размещенная РІ сети для добавления защитного слоя путем управления потоком трафика РІ сеть Рё РёР· нее, Р° также блокирования доступа пользователей Рє нежелательным сайтам. Программный брандмауэр встроен РІ операционные системы, такие как Linux Рё Windows, Рё помогает защитить вашу систему РѕС‚ внешних атак.

Установка UFW

По умолчанию Ubuntu 18.04 поставляется с установленной UFW. Однако, для более ранних систем, вы должны выполнить команду ниже

apt-get install ufw

Для того, чтобы проверить, является ли UFW запущенным:

systemctl status ufw

Если он работает, то вы должны получить вывод ниже

в—Џ ufw.service – Uncomplicated firewall Loaded: loaded (/lib/systemd/system/ufw.

service; enabled; vendor preset: enab Active: active (exited) since Tue 2018-05-15 20:32:12 UTC; 4min 1s ago Process: 376 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SU Main PID: 376 (code=exited, status=0/SUCCESS) Tasks: 0 Memory: 0B CPU: 0 CGroup: /system.slice/ufw.

service Apr 15 20:32:12 ip-112-31-41-251 systemd[1]: Started Uncomplicated firewall. Warning: Journal has been rotated since unit was started. Log output is incomple

Чтобы проверить, является ли он активным или неактивным

ufw status

Если он неактивен, вы получите вывод ниже

Status: inactive

Чтобы включить UFW с набором правил по умолчанию, запустите

ufw enable

Чтобы отключить запуск брандмауэра

ufw disable

Настройка правил по умолчанию UFW

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

ufw default allow outgoing

Вывод

Default outgoing policy changed to 'allow' (be sure to update your rules accordingly)

Для того, чтобы запретить все входящие соединения, запустите

ufw default deny incoming

Вывод

Default outgoing policy changed to 'deny' (be sure to update your rules accordingly)

Вышеуказанные команды позволят всем исходящим соединениям запретить или блокировать все входящие соединения.

На данный момент, вы можете включить брандмауэр, однако, прежде чем вы выполните эту команду, надо открыть первым SSH. Это предотвращает разъединение с сервером, так как мы указали отказ от всех входящих соединений.

Чтобы разрешить SSH, запустите

ufw allow 22/tcp

�сходящий

Skipping adding existing rule Skipping adding existing rule (v6)

Доступ к SSH также может быть разрешено имя службы

ufw allow ssh

Если вы хотите удалить правило, запустите

ufw delete allow 22/ssh

Запретить услугу по имени сервиса

ufw deny service-name

Например

ufw deny ssh

Чтобы увидеть все услуги, которые могут быть разрешены или запрещены в системе проверьте файл /etc/services.

cat /etc/services | less

Пример вывода

ftp-data 20/tcp ftp 21/tcp fsp 21/udp fspd ssh 22/tcp # SSH Remote Login Protocol ssh 22/udp telnet 23/tcp smtp 25/tcp mail time 37/tcp timserver time 37/udp timserver rlp 39/udp resource # resource location nameserver 42/tcp name # IEN 116 whois 43/tcp nicname tacacs 49/tcp # Login Host Protocol (TACACS) tacacs 49/udp re-mail-ck 50/tcp # Remote Mail Checking Protocol re-mail-ck 50/udp domain 53/tcp # Domain Name Server domain 53/udp

Запуск UFW брандмауэра

Для того, чтобы активировать брандмауэр, войдите как root и выполните следующую команду:

ufw enable

Вам может быть предложено со следующим предупреждением

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y

Если вы выберете Да, вы получите вывод ниже

Firewall is active and enabled on system startup

Брандмауэр теперь активен, и начнет работать при каждой загрузке. Мы можем посмотреть на правила брандмауэра снова:

ufw status

Вывод теперь будет отображать состояние брандмауэра плюс разрешенные услуги/порты

Вывод

ufw status active Status: active To Action From — —— —- 22/tcp ALLOW Anywhere 22 ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6)

Р р°р·сђрµс€рµрѕрёрµ сѓрѕрµрґрёрѕрµрѕрёсџ рі ufw

Вы можете легко разрешить входящие соединения на порт/диапазон, название приложения, IP-адреса/подсети в UFW.
Проверьте приведенные ниже примеры.

а) Предоставление приложений по имени или номеру порта/диапазон

ufw allow service-name

или

ufw allow port/tcp

Например

ufw allow ssh or ufw allow 22/tcp ufw allow ftp or ufw allow 21/tcpsudo ufw allow 1500:2000/tcp

б) Разрешение IP-адреса/подсети

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

Источник: https://andreyex.ru/ubuntu/kak-nastroit-brandmauer-ufw-na-ubuntu-18-04/

Security – Firewall

Ubuntu файрвол

The Linux kernel includes the Netfilter subsystem, which is used to manipulate or decide the fate of network traffic headed into or through your server. All modern Linux firewall solutions use this system for packet filtering.

The kernel’s packet filtering system would be of little use to administrators without a userspace interface to manage it.

This is the purpose of iptables: When a packet reaches your server, it will be handed off to the Netfilter subsystem for acceptance, manipulation, or rejection the rules supplied to it from userspace via iptables.

Thus, iptables is all you need to manage your firewall, if you’re familiar with it, but many frontends are available to simplify the task.

ufw – Uncomplicated Firewall

The default firewall configuration tool for Ubuntu is ufw. Developed to ease iptables firewall configuration, ufw provides a user-friendly way to create an IPv4 or IPv6 host-based firewall.

ufw by default is initially disabled. From the ufw man page:

“ufw is not intended to provide complete firewall functionality via its command interface, but instead provides an easy way to add or remove simple rules. It is currently mainly used for host-based firewalls.”

The following are some examples of how to use ufw:

  • First, ufw needs to be enabled. From a terminal prompt enter:

    sudo ufw enable

  • To open a port (SSH in this example):

    sudo ufw allow 22

  • Rules can also be added using a numbered format:

    sudo ufw insert 1 allow 80

  • Similarly, to close an opened port:

    sudo ufw deny 22

  • To remove a rule, use delete followed by the rule:

    sudo ufw delete deny 22

  • It is also possible to allow access from specific hosts or networks to a port. The following example allows SSH access from host 192.168.0.2 to any IP address on this host:

    sudo ufw allow proto tcp from 192.168.0.2 to any port 22

    Replace 192.168.0.2 with 192.168.0.0/24 to allow SSH access from the entire subnet.

  • Adding the –dry-run option to a ufw command will output the resulting rules, but not apply them. For example, the following is what would be applied if opening the HTTP port:

    sudo ufw –dry-run allow http*filter:ufw-user-input – [0:0]:ufw-user-output – [0:0]:ufw-user-forward – [0:0]:ufw-user-limit – [0:0]:ufw-user-limit-accept – [0:0]### RULES ### ### tuple ### allow tcp 80 0.0.0.0/0 any 0.0.0.0/0-A ufw-user-input -p tcp –dport 80 -j ACCEPT ### END RULES ###-A ufw-user-input -j RETURN-A ufw-user-output -j RETURN-A ufw-user-forward -j RETURN-A ufw-user-limit -m limit –limit 3/minute -j LOG –log-prefix “[UFW LIMIT]: “-A ufw-user-limit -j REJECT-A ufw-user-limit-accept -j ACCEPTCOMMITRules updated

  • ufw can be disabled by:

    sudo ufw disable

  • To see the firewall status, enter:

    sudo ufw status

  • And for more verbose status information use:

    sudo ufw status verbose

  • To view the numbered format:

    sudo ufw status numbered

Note

If the port you want to open or close is defined in /etc/services, you can use the port name instead of the number. In the above examples, replace 22 with ssh.

This is a quick introduction to using ufw. Please refer to the ufw man page for more information.

ufw Application Integration

Applications that open ports can include an ufw profile, which details the ports needed for the application to function properly. The profiles are kept in /etc/ufw/applications.d, and can be edited if the default ports have been changed.

  • To view which applications have installed a profile, enter the following in a terminal:

    sudo ufw app list

  • Similar to allowing traffic to a port, using an application profile is accomplished by entering:

    sudo ufw allow Samba

  • An extended syntax is available as well:

    ufw allow from 192.168.0.0/24 to any app Samba

    Replace Samba and 192.168.0.0/24 with the application profile you are using and the IP range for your network.

    Note

    There is no need to specify the protocol for the application, because that information is detailed in the profile. Also, note that the app name replaces the port number.

  • To view details about which ports, protocols, etc., are defined for an application, enter:

    sudo ufw app info Samba

Not all applications that require opening a network port come with ufw profiles, but if you have profiled an application and want the file to be included with the package, please file a bug against the package in Launchpad.

ubuntu-bug nameofpackage

IP Masquerading

The purpose of IP Masquerading is to allow machines with private, non-routable IP addresses on your network to access the Internet through the machine doing the masquerading.

Traffic from your private network destined for the Internet must be manipulated for replies to be routable back to the machine that made the request.

To do this, the kernel must modify the source IP address of each packet so that replies will be routed back to it, rather than to the private IP address that made the request, which is impossible over the Internet.

Linux uses Connection Tracking (conntrack) to keep track of which connections belong to which machines and reroute each return packet accordingly. Traffic leaving your private network is thus “masqueraded” as having originated from your Ubuntu gateway machine. This process is referred to in Microsoft documentation as Internet Connection Sharing.

ufw Masquerading

IP Masquerading can be achieved using custom ufw rules. This is possible because the current back-end for ufw is iptables-restore with the rules files located in /etc/ufw/*.rules. These files are a great place to add legacy iptables rules used without ufw, and rules that are more network gateway or bridge related.

The rules are split into two different files, rules that should be executed before ufw command line rules, and rules that are executed after ufw command line rules.

  • First, packet forwarding needs to be enabled in ufw. Two configuration files will need to be adjusted, in /etc/default/ufw change the DEFAULT_FORWARD_POLICY to “ACCEPT”:

    DEFAULT_FORWARD_POLICY=”ACCEPT”

    Then edit /etc/ufw/sysctl.conf and uncomment:

    net/ipv4/ip_forward=1

    Similarly, for IPv6 forwarding uncomment:

    net/ipv6/conf/default/forwarding=1

  • Now add rules to the /etc/ufw/before.rules file. The default rules only configure the filter table, and to enable masquerading the nat table will need to be configured. Add the following to the top of the file just after the header comments:

    # nat Table rules*nat:POSTROUTING ACCEPT [0:0] # Forward traffic from eth1 through eth0.-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE # don't delete the 'COMMIT' line or these nat table rules won't be processedCOMMIT

    The comments are not strictly necessary, but it is considered good practice to document your configuration. Also, when modifying any of the rules files in /etc/ufw, make sure these lines are the last line for each table modified:

    # don't delete the 'COMMIT' line or these rules won't be processedCOMMIT

    For each Table a corresponding COMMIT statement is required. In these examples only the nat and filter tables are shown, but you can also add rules for the raw and mangle tables.

    Note

    In the above example replace eth0, eth1, and 192.168.0.0/24 with the appropriate interfaces and IP range for your network.

  • Finally, disable and re-enable ufw to apply the changes:

    sudo ufw disable && sudo ufw enable

IP Masquerading should now be enabled. You can also add any additional FORWARD rules to the /etc/ufw/before.rules. It is recommended that these additional rules be added to the ufw-before-forward chain.

iptables Masquerading

iptables can also be used to enable Masquerading.

  • Similar to ufw, the first step is to enable IPv4 packet forwarding by editing /etc/sysctl.conf and uncomment the following line:

    net.ipv4.ip_forward=1

    If you wish to enable IPv6 forwarding also uncomment:

    net.ipv6.conf.default.forwarding=1

  • Next, execute the sysctl command to enable the new settings in the configuration file:

    sudo sysctl -p

  • IP Masquerading can now be accomplished with a single iptables rule, which may differ slightly your network configuration:

    sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE

    The above command assumes that your private address space is 192.168.0.0/16 and that your Internet-facing device is ppp0. The syntax is broken down as follows:

    • -t nat – the rule is to go into the nat table

    • -A POSTROUTING – the rule is to be appended (-A) to the POSTROUTING chain

    • -s 192.168.0.0/16 – the rule applies to traffic originating from the specified address space

    • -o ppp0 – the rule applies to traffic scheduled to be routed through the specified network device

    • -j MASQUERADE – traffic matching this rule is to “jump” (-j) to the MASQUERADE target to be manipulated as described above

  • Also, each chain in the filter table (the default table, and where most or all packet filtering occurs) has a default policy of ACCEPT, but if you are creating a firewall in addition to a gateway device, you may have set the policies to DROP or REJECT, in which case your masqueraded traffic needs to be allowed through the FORWARD chain for the above rule to work:

    sudo iptables -A FORWARD -s 192.168.0.0/16 -o ppp0 -j ACCEPTsudo iptables -A FORWARD -d 192.168.0.0/16 -m state \–state ESTABLISHED,RELATED -i ppp0 -j ACCEPT

    The above commands will allow all connections from your local network to the Internet and all traffic related to those connections to return to the machine that initiated them.

  • If you want masquerading to be enabled on reboot, which you probably do, edit /etc/rc.local and add any commands used above. For example add the first command with no filtering:

    iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE

Logs

Firewall logs are essential for recognizing attacks, troubleshooting your firewall rules, and noticing unusual activity on your network. You must include logging rules in your firewall for them to be generated, though, and logging rules must come before any applicable terminating rule (a rule with a target that decides the fate of the packet, such as ACCEPT, DROP, or REJECT).

If you are using ufw, you can turn on logging by entering the following in a terminal:

sudo ufw logging on

To turn logging off in ufw, simply replace on with off in the above command.

If using iptables instead of ufw, enter:

sudo iptables -A INPUT -m state –state NEW -p tcp –dport 80 \-j LOG –log-prefix “NEW_HTTP_CONN: “

A request on port 80 from the local machine, then, would generate a log in dmesg that looks this (single line split into 3 to fit this document):

[4304885.870000] NEW_HTTP_CONN: IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00SRC=127.0.0.1 DST=127.0.0.1 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=58288 DF PROTO=TCPSPT=53981 DPT=80 WINDOW=32767 RES=0x00 SYN URGP=0

The above log will also appear in /var/log/messages, /var/log/syslog, and /var/log/kern.log. This behavior can be modified by editing /etc/syslog.conf appropriately or by installing and configuring ulogd and using the ULOG target instead of LOG.

The ulogd daemon is a userspace server that listens for logging instructions from the kernel specifically for firewalls, and can log to any file you , or even to a PostgreSQL or MySQL database.

Making sense of your firewall logs can be simplified by using a log analyzing tool such as logwatch, fwanalog, fwlogwatch, or lire.

Other Tools

There are many tools available to help you construct a complete firewall without intimate knowledge of iptables. A command-line tool with plain-text configuration files:

  • Shorewall is a very powerful solution to help you configure an advanced firewall for any network.

References

  • The Ubuntu Firewall wiki page contains information on the development of ufw.

  • Also, the ufw manual page contains some very useful information: man ufw.

  • See the packet-filtering-HOWTO for more information on using iptables.

  • The nat-HOWTO contains further details on masquerading.

  • The IPTables HowTo in the Ubuntu wiki is a great resource.

Источник: https://ubuntu.com/server/docs/security-firewall

Все лайфхаки
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: