J'ai besoin de savoir comment réparer le fichier "/etc/init.d/ufw" manquant, est-ce un paquet ou une commande?
J'ai utilisé le gufw
pour l'activer, mais au redémarrage, mon pare-feu était toujours désactivé ...
J'ai créé un lien symbolique /etc/init.d/ufw -> /lib/init/upstart-job
mais je ne pouvais pas le faire fonctionner comme start ufw
(ni après le redémarrage).
J'ai trouvé ce fichier /lib/ufw/ufw-init
, il ressemble à un fichier init.d! puis-je copier ou créer un lien symbolique là-bas?
Questions supplémentaires (facultatives):
Comment trouver quel paquet a ce fichier? apt-cache search
n'a pas fonctionné ..
Pouvons-nous créer un tel script en toute sécurité?
Avez-vous une idée de la raison pour laquelle il manque?
Obs .:
Mon /etc/ufw/ufw.conf
a ENABLED=yes
(mais semble inutile).iptables -L
devient différent après I ufw enable
, de sorte que les règles ufw ne sont pas appliquées au démarrage par un autre moyen.
PS: ce script n'a pas fonctionné non plus
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
Je n'ai pas non plus /etc/init.d/ufw et ufw ne démarre pas automatiquement au redémarrage. Mais j'ai fait ça
Sudo apt-get install iptables-persistent
Au redémarrage, j'ai vérifié avec
Sudo ufw status
Il était actif, il était toujours inactif lors des redémarrages précédents et j'avais l'habitude de le faire
Sudo ufw enable
Je n'ai pas installé gufw, je suis un utilisateur débutant sur le bureau. Je ne sais donc pas pourquoi cela a fonctionné et si cela fonctionnera pour vous, mais cela semblait plus simple, peut-être que cela aidera quelqu'un.
Pour les efforts qui ont été déployés pour trouver la solution, la réponse est étonnamment simple.
Dans /etc/init/ufw.conf:
1) Commentez les lignes 9 à 11
2) Insérer après la ligne 11: start on startup
Résout le problème dans son intégralité, y compris la connexion à /var/log/ufw.log.
Note
Si vous avez iptables-persistent
installé, vous devez le désactiver. Déplacez iptables-persistent
hors de /etc/init.d et renommez tous les liens symboliques dans rc0.d
-rcS.d
en mettant la première lettre (S ou K) en minuscule. (Ou déplacez-les.)
[ Check this premier (je le validerai quand j'en aurai le temps), configurer correctement ufw peut être la meilleure chose à faire, cette réponse ici ne serait alors qu'un repli. ]
Basé sur ceci réponse et enregistrer le conseil de cette réponse , j'ai ajouté ceci:
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
avant le exit 0
et maintenant il charge correctement les règles ufw au démarrage!
Mais il s’agit d’une solution de contournement utilisateur et non d’une solution au système ...
J'ai également choisi de "changer" les règles au lieu de les appliquer par défaut, comme le suggère ceci réponse , car je ne suis pas complètement sûr que mes règles personnalisées sont sans problème.
IMPORTANT: le code "if" n'a pas fonctionné une fois, j'ai donc créé le code "while" qui n'a jusqu'à présent posé aucun problème.
Peut-être que votre chemin est mauvais. Pas /etc/init.d/wfw
que /etc/init/ufw.conf
J'ai des fichiers avec ufw
dans le nom des lieux suivants
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
Sortie du fichier 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
EDIT 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)
UFW est juste un wrapper pour iptables et il ne gère que la table de filtrage. Vous pouvez donc utiliser à la fois UFW et iptables-persistant, mais supprimer les règles de filtrage de /etc/iptables/rules.v4, et laisser les autres si vous en avez (table nat, raw, etc.)