Мне нужно знать, как исправить отсутствующий файл "/etc/init.d/ufw", это какой-то пакет или какая-то команда?
Я использовал gufw
, чтобы включить его, но при перезагрузке мой брандмауэр все еще был выключен ...
Я создал символическую ссылку /etc/init.d/ufw -> /lib/init/upstart-job
, но я не мог заставить ее работать как start ufw
(ни после перезагрузки).
Я нашел этот файл /lib/ufw/ufw-init
, он выглядит как файл init.d! Могу ли я скопировать или вставить туда ссылку?
Дополнительные (необязательные) вопросы:
Как найти, в каком пакете находится этот файл? apt-cache search
не работает ..
Можем ли мы безопасно создать такой скрипт?
Есть идеи, почему он отсутствует?
Obs.:
My /etc/ufw/ufw.conf
имеет ENABLED=yes
(но кажется бесполезным).
iptables -L
становится другим после I ufw enable
, поэтому правила ufw не применяются при загрузке другими способами.
PS .: этот скрипт тоже НЕ работал
sudo ln -s /lib/ufw/ufw-init /usr/sbin/ufw-init
sudo ln -s /lib/init/upstart-job /etc/init.d/ufw-init
#sudo update-rc.d -f ufw-init remove
sudo update-rc.d ufw-init defaults 99
sudo -k
У меня также нет/etc/init.d/ufw, и ufw не был автоматическим запуском на перезагрузке. Но я сделал это
sudo apt-get install iptables-persistent
При перезагрузке, с которой я сверился
sudo ufw status
, Она показала активный, Она всегда раньше показывала неактивный в предыдущих перезагрузках, и я раньше делал
sudo ufw enable
, я не установил gufw, я - настольный пользователь новичка, таким образом, я понятия не имею, почему она работала и будет ли она работать на Вас, но это казалось более простым, может быть, она поможет кому-то.
[ Проверка это первый (я проверю его, когда у меня будет время), правильно настраивая ufw может быть лучшей вещью сделать, этот ответ здесь тогда просто был бы нейтрализацией. ]
На основе этого ответ и журнал снабжает подсказкой от этого ответ , я добавил это:
exec 2> /tmp/rc.local.log # send stderr from rc.local to a log file
exec 1>&2 # send stdout to the same log file
#set -x # tell sh to display commands before execution
# this wont exit until successful!
while ! ufw enable;do
if ufw status |grep "Status: active";then
break
fi
echo "Failed to apply ufw rules at `date`" >>/dev/stderr;
sleep 10;
done
к /etc/rc.local
перед exit 0
и теперь это правильно загружает правила ufw о начальной загрузке!
, Но это - пользовательское обходное решение и не фиксация к системе...
я решил также "изменить" правила вместо того, чтобы применить их как значение по умолчанию, как предлагают этот ответ , потому что я не абсолютно уверен, что мои пользовательские правила являются бесперебойными.
ВАЖНЫЙ: "если" код не работал однажды, таким образом, я создал, "в то время как" код, что сезам теперь не доставил неприятности.
Возможно, Ваш путь неправильно. Не /etc/init.d/wfw
, чем /etc/init/ufw.conf
у меня есть файлы с ufw
на имя на местах парования
xxx@xxx ~/xxx $ sudo find / -name ufw*
[sudo] password for xxx:
/lib/ufw
/lib/ufw/ufw-init-functions
/lib/ufw/ufw-init
/etc/bash_completion.d/ufw
/etc/default/ufw
/etc/init/ufw.conf
/etc/logrotate.d/ufw
/etc/ufw
/etc/ufw/ufw.conf
/usr/lib/python3/dist-packages/ufw-0.33_0ubuntu4.egg-info
/usr/lib/python3/dist-packages/ufw
/usr/share/doc/ufw
/usr/share/man/man8/ufw-framework.8.gz
/usr/share/man/man8/ufw.8.gz
/usr/share/locale-langpack/en_CA/LC_MESSAGES/ufw.mo
/usr/share/locale-langpack/en_GB/LC_MESSAGES/ufw.mo
/usr/share/locale-langpack/en_AU/LC_MESSAGES/ufw.mo
/usr/share/lintian/overrides/ufw
/usr/share/ufw
/usr/share/ufw/ufw.conf
/usr/share/icons/Mint-X/apps/22/ufw-frontends.png
/usr/share/icons/Mint-X/apps/48/ufw-frontends.png
/usr/share/icons/Mint-X/apps/32/ufw-frontends.png
/usr/share/icons/Mint-X/apps/16/ufw-frontends.png
/usr/share/icons/Mint-X/apps/24/ufw-frontends.png
/usr/share/icons/Mint-X/apps/scalable/ufw-frontends.svg
/usr/sbin/ufw
/var/lib/dpkg/info/ufw.md5sums
/var/lib/dpkg/info/ufw.postinst
/var/lib/dpkg/info/ufw.list
/var/lib/dpkg/info/ufw.prerm
/var/lib/dpkg/info/ufw.conffiles
/var/lib/dpkg/info/ufw.templates
/var/lib/dpkg/info/ufw.config
/var/lib/dpkg/info/ufw.preinst
/var/lib/dpkg/info/ufw.postrm
/var/lib/dpkg/info/ufw.triggers
/var/log/ufw.log.4.gz
/var/log/ufw.log.2.gz
/var/log/ufw.log.1
/var/log/ufw.log
/var/log/ufw.log.3.gz
, Вывод из init файла
cat /etc/init/ufw.conf
# ufw - Uncomplicated Firewall
#
# The Uncomplicated Firewall is a front-end for iptables, to make managing a
# Netfilter firewall easier.
description "Uncomplicated firewall"
# Make sure we start before an interface receives traffic
start on (starting network-interface
or starting network-manager
or starting networking)
stop on runlevel [!023456]
console output
pre-start exec /lib/ufw/ufw-init start quiet
post-stop exec /lib/ufw/ufw-init stop
РЕДАКТИРУЕТ 1
xxx@xxx ~ $ sudo ufw status
Status: active
To Action From
-- ------ ----
22 ALLOW Anywhere
69 ALLOW Anywhere
22 ALLOW Anywhere (v6)
69 ALLOW Anywhere (v6)
Для усилия, которое вошло в выяснение решения, ответ удивительно прост.
В/etc/init/ufw.conf:
1) Комментируют строки 9 - 11
, 2) Вставляют после строки 11: start on startup
Решает целую проблему, включая вход к /var/log/ufw.log.
Примечание
, Если Вы имеете iptables-persistent
установленный, необходимо отключить его. Переместите iptables-persistent
из/etc/init.d и переименуйте все символьные ссылки в rc0.d
- rcS.d
путем создания 1-й буквы (S или K) нижним регистром. (Или выгоните их с квартиры.)
UFW является просто сновальной машиной для iptables, и это обрабатывает только таблицу фильтра. Таким образом, можно использовать и UFW и iptables-persistant, но удалить правила фильтра из/etc/iptables/rules.v4 и оставить других, если у Вас есть он (туземная таблица, сырые данные, и т.д.)