Смотрите настроенные правила, даже когда неактивны

72

Мне интересно, можно ли заставить UFW перечислить настроенные правила брандмауэра, даже если он не включен. В настоящее время у меня есть только ssh-доступ к серверу, и я не хочу включать UFW, если не настроено правило, разрешающее ssh. Однако, поскольку UFW в настоящее время не включен, я просто получаю «неактивное» сообщение, когда запускаю «ufw status».

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

Bryan
источник
4
Текущий ответ ufw show addedлюбезно предоставлен @simon.
ctbrown

Ответы:

25

В настоящее время нет способа отобразить введенные вами правила до включения брандмауэра с помощью команды CLI. Однако вы можете проверить файлы правил напрямую. /lib/ufw/user*.rules содержит правила, контролируемые с помощью команды CLI 'ufw'. Например:

 $ sudo grep '^### tuple' /lib/ufw/user*.rules

Это покажет вывод наподобие следующего (для правила, добавленного с помощью 'sudo ufw allow OpenSSH):

 /lib/ufw/user.rules:### tuple ### allow tcp 22 0.0.0.0/0 any 0.0.0.0/0 OpenSSH - in

«Кортеж» - это сокращение, используемое UFW для отслеживания правил, и может интерпретироваться как одно из следующих:

 ### tuple ### <action> <proto> <dst port> <dst> <src port> <src> <direction>
 ### tuple ### <action> <proto> <dst port> <dst> <src port> <src> <dst app name> <src app name> <direction>

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

jdstrand
источник
5
положить файлы в /libэто довольно странно, на мой взгляд
pqnet
11
Они добавили команду ufw show added, см. Также ответ от @Simon ниже
RedPixel
110

Теперь есть ufw show addedкоманда, которая выведет список настроенных вами правил, даже если брандмауэр неактивен. Это было исправлено в отчете об ошибке и добавлено в v0.33.

Итак, теперь вы можете сделать:

# ufw status
Status: inactive
# ufw allow ssh
Rules updated
Rules updated (v6)
# ufw show added
Added user rules (see 'ufw status' for running firewall):
ufw allow 22
# ufw enable
Firewall is active and enabled on system startup
# ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)

Формат выходных данных ufw show addedзначительно упрощает написание команды удаления для каждого правила.

Саймон
источник
3
За отчет об ошибке: это было добавлено в ufw версии 0.33, выпущенной в августе 2012 года.
ConvexMartian
18

Общие правила в /etc/ufw. Пользовательские правила находятся в /lib/ufw/user*.

организовать
источник
Magic - /lib/ufw/user.rules имеет понятные человеку правила в разделе ### ПРАВИЛА ###. Благодарю.
Scaine
9

В Ubuntu 16.04 пользовательские правила хранятся в /etc/ufw/user.rules. Таким образом, вы можете увидеть правила с:

sudo cat /etc/ufw/user.rules
pstadler
источник
1
Следовательно, в Ubuntu 16.04 вы можете использовать это: sudo grep '^### tuple' /etc/ufw/user*.rulesдля форматированного списка добавленных пользователем правил.
Вилле
2
@ Вилле, не делай этого. Используйте sudo ufw show addedвместо этого.
ctbrown
Я не знал, что @ctbrown, спасибо. Это также, кажется, работает, когда UFW отключен.
pstadler
4

Из командной строки, похоже, нет пути. Однако, если вы работаете с SSH из коробки Ubuntu (в коробку Ubuntu), вы можете попробовать этот, немного запутанный метод:

В основном, установите gufw на удаленном компьютере, затем подключитесь с переадресацией X и запустите GUI.

На удаленном устройстве после подключения с -Xпомощью опции:

sudo apt-get install gufw
sudo gufw

Это покажет вам набор правил без необходимости его активации.

Имейте в виду, что если удаленное устройство является истинным «безголовым» сервером, то установка GUFW может устранить неприятное количество зависимостей. Но если кто-то здесь не знает хитрости, чтобы UFW показывал вам нужный результат, не активируя его сначала, то это может быть вашим единственным вариантом.

Я пытался sudo ufw show raw, но это показывает вывод iptables, который я не могу сделать ни головой, ни хвостом.

Scaine
источник
Спасибо за лакомый кусочек про "ufw show raw" - наверное, я пропустил это на страницах руководства. Когда я запускаю его, я не вижу ничего, что выскакивает из меня как правила, а это значит, что у меня, возможно, ничего не настроено, но я пока не хочу этого делать. И да, установка gufw потребует установки очень большого числа зависимостей, поэтому я думаю, что буду избегать этого подхода.
Брайан