Настройка UFW - Uncomplicated FireWall
- Подробности
- Категория: Сисадмин
- Просмотров: 305
Для защиты вашего сервера и сайта установим фаервол...
UFW - Uncomplicated FireWall - это настройка iptables, его интерфейс.
Сами настройки можно посмотреть тут:
sudo nano /etc/default/ufw
Настройка
Для начала нужно узнать статус, включен ли он вообще:
sudo ufw status
или подробнее
sudo ufw status verbose
Ориентируетесь на такую формулу:
$ ufw опции действие параметры
Опции:
Сначала разберём опции утилиты:
- --version - вывести версию брандмауэра;
- --dry-run - тестовый запуск, никакие реальные действия не выполняются.
Команды
- enable - включить фаерволл и добавить его в автозагрузку;
- disable - отключить фаерволл и удалить его из автозагрузки;
- reload - перезагрузить файервол;
- default - задать политику по умолчанию, доступно allow, deny и reject, а также три вида трафика - incoming, outgoing или routed;
- logging - включить журналирование или изменить уровень подробности;
- reset - сбросить все настройки до состояния по умолчанию;
- status - посмотреть состояние фаервола;
- show - посмотреть один из отчётов о работе;
- allow - добавить разрешающее правило;
- deny - добавить запрещающее правило;
- reject - добавить отбрасывающее правило;
- limit - добавить лимитирующее правило;
- delete - удалить правило;
- insert - вставить правило.
Включение ufw
sudo ufw enable
Просмотр правил фаервола
- raw - все активные правила в формате iptables;
- builtins - правила, добавленные по умолчанию;
- before-rules - правила, которые выполняются перед принятием пакета;
- user-rules - правила, добавленные пользователем;
- after-rules - правила, которые выполняются после принятия пакета;
- logging-rules - правила логгирования пакетов;
- listening - отображает все прослушиваемые порты и правила для них;
- added - недавно добавленные правила;
Как использовать:
посмотрим правила iptables
sudo ufw show raw
посмотрим все прослушиваемые порты:
sudo ufw show listening
Создание правил
1. Сначала отклоняем все входящие
sudo ufw default deny incoming
а исходящие, наоборот, разрешим:
sudo ufw default allow outgoing
Синтаксис:
$ ufw allow имя_службы
$ ufw allow порт
$ ufw allow порт/протокол
вместе с allow можно использовать в deny и reject:
- deny - отсылает отчет об ошибке
- reject - не отсылая, просто игнорирует
Откроем доступ к ssh :
sudo ufw allow OpenSSH
отдельно к порту:
sudo ufw allow 22
порту и службе:
sudo ufw allow 22/tcp
Посмотреть все доступные службы: sudo ufw app list
Удаление правил
sudo ufw delete allow out 80/tcp
также можно удалять по номеру правила:
сперва определим номер: sudo ufw status numbered
далее удаляем: sudo ufw delete 2
Часто нужно логирование для отслеживание ufw
Команда для включения журнала логов:
sudo ufw logging on
Можно обозначить уровень логгирования:
- low - минимальный, только заблокированные пакеты;
- medium - средний, заблокированные и разрешённые пакеты;
- high - высокий.
sudo ufw logging medium
Лог сохраняется в папке /var/log/ufw.
Отключение фаервола в Ubuntu
sudo ufw disable
Дополнительные примеры
Разрешить определенный ip:
sudo ufw allow from 223.0.118.4
или с портом:
sudo ufw allow from 223.0.118.4 to any port 22
или разрешить целой маске подсети:
sudo ufw allow from 223.0.118.4/24
запретить все соединения для ip
sudo ufw deny from 223.0.118.4
Если хотите начать заново настройку, то данная команда удалить все настройки :
sudo ufw reset