2
  • Каждый раз, когда я перезагружаю свой компьютер и проверяю состояние брандмауэра UFW (состояние sudo ufw status), он отключается, даже если я затем включаю и перезагружаю его.
  • Я попытался sudo ufw enable качестве одного из приложений для запуска, но он запрашивает пароль sudo при каждом входе в систему, и я предполагаю, что он не защищает никого, кто входит в мой компьютер.

Как настроить ufw, чтобы он активировался при включении компьютера и защищал все учетные записи?

Обновить

Я только что попробовал /etc/init.d/ufw start , и он активировал брандмауэр. Затем я перезагрузил компьютер, и снова он был отключен.

содержание /etc/ufw/ufw.conf

# /etc/ufw/ufw.conf
# 

# set to yes to start on boot
ENABLED=yes

# set to one of 'off', 'low', 'medium', 'high'
LOGLEVEL=full

содержимое /etc /default /ufw

# /etc/default/ufw
#

# Set to yes to apply rules to support IPv6 (no means only IPv6 on loopback
# accepted). You will need to 'disable' and then 'enable' the firewall for
# the changes to take affect.
IPV6=no

# Set the default input policy to ACCEPT, ACCEPT_NO_TRACK, DROP, or REJECT.
# ACCEPT enables connection tracking for NEW inbound packets on the INPUT
# chain, whereas ACCEPT_NO_TRACK does not use connection tracking. Please note
# that if you change this you will most likely want to adjust your rules.
DEFAULT_INPUT_POLICY="DROP"

# Set the default output policy to ACCEPT, ACCEPT_NO_TRACK, DROP, or REJECT.
# ACCEPT enables connection tracking for NEW outbound packets on the OUTPUT
# chain, whereas ACCEPT_NO_TRACK does not use connection tracking. Please note
# that if you change this you will most likely want to adjust your rules.
DEFAULT_OUTPUT_POLICY="ACCEPT"

# Set the default forward policy to ACCEPT, DROP or REJECT.  Please note that
# if you change this you will most likely want to adjust your rules
DEFAULT_FORWARD_POLICY="DROP"

# Set the default application policy to ACCEPT, DROP, REJECT or SKIP. Please
# note that setting this to ACCEPT may be a security risk. See 'man ufw' for
# details
DEFAULT_APPLICATION_POLICY="SKIP"

# By default, ufw only touches its own chains. Set this to 'yes' to have ufw
# manage the built-in chains too. Warning: setting this to 'yes' will break
# non-ufw managed firewall rules
MANAGE_BUILTINS=no

#
# IPT backend
#
# only enable if using iptables backend
IPT_SYSCTL=/etc/ufw/sysctl.conf

# extra connection tracking modules to load
IPT_MODULES="nf_conntrack_ftp nf_nat_ftp nf_conntrack_irc nf_nat_irc"

Обновить

Последовал вашему совету и запустил update-rc.d без удачи.

lester@mcgrath-pc:~$ sudo update-rc.d ufw defaults
update-rc.d: warning: /etc/init.d/ufw missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
 Adding system startup for /etc/init.d/ufw ...
   /etc/rc0.d/K20ufw -> ../init.d/ufw
   /etc/rc1.d/K20ufw -> ../init.d/ufw
   /etc/rc6.d/K20ufw -> ../init.d/ufw
   /etc/rc2.d/S20ufw -> ../init.d/ufw
   /etc/rc3.d/S20ufw -> ../init.d/ufw
   /etc/rc4.d/S20ufw -> ../init.d/ufw
   /etc/rc5.d/S20ufw -> ../init.d/ufw

lester@mcgrath-pc:~$ ls -l /etc/rc?.d/*ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc0.d/K20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc1.d/K20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc2.d/S20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc3.d/S20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc4.d/S20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc5.d/S20ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 13 2009-12-20 20:34 /etc/rc6.d/K20ufw -> ../init.d/ufw

4 ответа4

2

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

Я задавался вопросом, так как было упомянуто, что скрипт запускался при запуске, если я каким-то образом отключал скрипт до его запуска. Не так. UFW "активный" по-прежнему остается на месте после выбора Ubuntu 9.1 в момент появления grub.

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

Надеюсь, это работает и для других.

0

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

Однако по какой-то причине я решил попробовать что-то еще, и, похоже, это сработало ...

Я не уверен, было ли это сочетание двух или просто удаление одного, но я удалил / удалил и Firestarter, и Firewall Configuration Tool. Затем я снова включил sudo ufw и перезагрузил компьютер.

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

Тем не менее - у меня есть еще одна вещь, чтобы проверить ... вернуться через секунду ...

0

Документы UncomplicatedFirewall и соответствующий пост UbuntuForums предполагают, что sudo ufw enable - это все, что вам нужно сделать, чтобы настройки UFW сохранялись при перезагрузках.

Но вы указываете, что запуск состояния sudo ufw status после enable все еще показывает, что брандмауэр отключен. ... Если это правда, это означает, что что-то сломано.

Поможет ли вам запустить /etc/init.d/ufw start (или restart)? Вы пытались установить GUI gufw (через Synaptic или другой менеджер пакетов) и настроить с этим?

Пожалуйста, отредактируйте ваш вопрос и включите содержимое /etc/default/ufw и /etc/ufw/ufw.conf .

Обновление:

ХОРОШО. Запуск сценария инициализации работает, поэтому кажется, что служба не запускается при загрузке должным образом. Трудно сказать точно, почему, но я бы поспорил о некотором несоответствии между Jaunty и Karmic, которое запуталось во время dist-upgrade.

Используйте update-rc.d (подробнее), чтобы создать ссылки для запуска в нужном месте:

sudo update-rc.d ufw defaults

Затем убедитесь, что ссылки на скрипт запуска были созданы:

ls -l /etc/rc?.d/*ufw

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

lrwxrwxrwx 1 root root 17 2009-10-06 22:33 /etc/rc1.d/K01ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 17 2009-10-06 22:33 /etc/rc2.d/S99ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 17 2009-10-06 22:33 /etc/rc3.d/S99ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 17 2009-10-06 22:33 /etc/rc4.d/S99ufw -> ../init.d/ufw
lrwxrwxrwx 1 root root 17 2009-10-06 22:33 /etc/rc5.d/S99ufw -> ../init.d/ufw

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

Обновление 2: я обновил строку update-rc.d выше; старое должно работать, но я думаю, что эта версия более "правильная". Старый, вероятно, не будет создавать ссылки K01ufw .

0

Вы можете создать скрипт в /etc/rc2.d . Этот уровень запуска тот же, что запускает общесистемные сервисы, такие как pulseaudio или webservices ...

Upadate

  1. Кажется, что ~ quack взял предложение о создании сценария rc и расширил его до хорошего практического руководства в своем ответе, так что вы можете попробовать это вместо того, чтобы редактировать файл вручную.
  2. Однако меня поразило сомнение: UFW - это просто оболочка для iptables, поэтому вы можете проверить, использует ли iptables правила, установленные для него. В командной строке введите sudo iptables -L ; Вы должны получить список правил, используемых в настоящее время. Например, я открыл несколько портов, и в перечисленных правилах я нахожу их в форме:

(часть вывода)

Chain ufw-user-input (1 references)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:51813 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:5550 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:29970 

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .