Еще немного про ufw
Автор: Pans
По умолчанию при включении ufw все входящие запросы, кроме явно разрешенных, будут блокироваться, проверить можно через
sudo ufw status verbose
# В выводе будет содержаться что-то похожее на
Default: deny (incoming), allow (outgoing), deny (routed)
deny (incoming) - говорит именно об этом механизме работы. Изменить можно через
sudo ufw default deny incoming
# или allow вместо deny
Порядок указания правил имеет значение, выполняется как в каких-нибудь acl на сетевом оборудовании(сверху вниз).
Как только пакет данных попадает под первое подходящее правило, это правило срабатывает (разрешает или блокирует пакет), а все последующие правила для этого пакета игнорируются.
Например
sudo ufw deny from 192.168.0.0/24
# а только потом
sudo ufw allow from 192.168.0.50
Не позволит пользователю с ip 192.168.0.50 попасть на сервер, поскольку эти правила конфликтуют и первым указано запрещающее.
Также порядок удобно посмотреть через
sudo ufw status numbered
# В данном примере увидим
[ 5] Anywhere DENY IN 192.168.0.0/24
[ 6] Anywhere ALLOW IN 192.168.0.50
Чтобы появился доступ к машине с ip 192.168.0.50 его нужно переместить выше блокировки.
Сначала удалим разрешающее правило, иначе ufw скажет что правило уже существует
sudo ufw delete allow from 192.168.0.50
# или "sudo ufw delete 6"
# затем вставим на 5 позицию, так он сместит запрещающее правило дальше
sudo ufw insert 5 allow from 192.168.0.50
Проверяем
sudo ufw status numbered
# Вывод
[ 5] Anywhere ALLOW IN 192.168.0.50
[ 6] Anywhere DENY IN 192.168.0.0/24
Правила в ufw status'е не единственные которые существуют на машине. Если что-то работает не так как задумано, иногда имеет смысл проверить
# правила до пользовательских
sudo ufw show before-rules
# пользовательские правила
sudo ufw show user-rules
# правила после пользовательских
sudo ufw show after-rules
# реальные правила iptables (все таблицы, IPv4 и IPv6), которые ufw создаёт под капотом
sudo ufw show raw
Комментарии (0)
Пока нет комментариев.