#1 Le 04/12/2014, à 12:39
- Moomba
[Résolu]Configuration UFW étonnamment difficile
Bonjour,
Je suis en train de devenir chèvre. D’habitude, la configuration des iptables ou d'ufw est simple, mais là je suis dans une impasse.
La machine que je configure est un PC arm client, donc je ne cherche qu'à verrouiller, même ssh doit être fermé.
Déjà, la commande :
sudo ufw enable
Donne pas mal d'erreurs du type :
iptables-restore: line 77 failed
iptables-restore: line 27 failed
Problem running '/etc/ufw/before.rules'
Problem running '/lib/ufw/user.rules'
Après avoir trouvé les lignes fautives dans les fichiers (à savoir tout ce qui concerne les logs, je ne sais pas pourquoi), j'ai encore :
ERROR: Could not load logging rules
Bon, ok je n'ai pas les logs, mais c'est un client, qu'importe. Le problème maintenant ce sont les règles iptables de type *nat, *raw, et *mangle que je n'avais jamais sur aucun de mes autres PC/Serveurs :
ubuntu@tegra-ubuntu:~$ sudo ufw status verbose
[sudo] password for ubuntu:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
ubuntu@tegra-ubuntu:~$ sudo iptables-save
# Generated by iptables-save v1.4.21 on Thu Dec 4 10:34:34 2014
*raw
:PREROUTING ACCEPT [13699:6745027]
:OUTPUT ACCEPT [5372:457921]
COMMIT
# Completed on Thu Dec 4 10:34:34 2014
# Generated by iptables-save v1.4.21 on Thu Dec 4 10:34:34 2014
*nat
:PREROUTING ACCEPT [10659:862567]
:INPUT ACCEPT [3:196]
:OUTPUT ACCEPT [2348:142955]
:POSTROUTING ACCEPT [2348:142955]
COMMIT
# Completed on Thu Dec 4 10:34:34 2014
# Generated by iptables-save v1.4.21 on Thu Dec 4 10:34:34 2014
*mangle
:PREROUTING ACCEPT [13699:6745027]
:INPUT ACCEPT [12673:6693587]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [5372:457921]
:POSTROUTING ACCEPT [5392:460625]
COMMIT
# Completed on Thu Dec 4 10:34:34 2014
# Generated by iptables-save v1.4.21 on Thu Dec 4 10:34:34 2014
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:ufw-after-forward - [0:0]
:ufw-after-input - [0:0]
:ufw-after-logging-forward - [0:0]
:ufw-after-logging-input - [0:0]
:ufw-after-logging-output - [0:0]
:ufw-after-output - [0:0]
:ufw-before-forward - [0:0]
:ufw-before-input - [0:0]
:ufw-before-logging-forward - [0:0]
:ufw-before-logging-input - [0:0]
:ufw-before-logging-output - [0:0]
:ufw-before-output - [0:0]
:ufw-logging-allow - [0:0]
:ufw-logging-deny - [0:0]
:ufw-not-local - [0:0]
:ufw-reject-forward - [0:0]
:ufw-reject-input - [0:0]
:ufw-reject-output - [0:0]
:ufw-skip-to-policy-forward - [0:0]
:ufw-skip-to-policy-input - [0:0]
:ufw-skip-to-policy-output - [0:0]
:ufw-track-forward - [0:0]
:ufw-track-input - [0:0]
:ufw-track-output - [0:0]
:ufw-user-forward - [0:0]
:ufw-user-input - [0:0]
:ufw-user-limit - [0:0]
:ufw-user-limit-accept - [0:0]
:ufw-user-logging-forward - [0:0]
:ufw-user-logging-input - [0:0]
:ufw-user-logging-output - [0:0]
:ufw-user-output - [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -j ufw-before-logging-input
-A INPUT -j ufw-before-input
-A INPUT -j ufw-after-input
-A INPUT -j ufw-after-logging-input
-A INPUT -j ufw-reject-input
-A INPUT -j ufw-track-input
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j ufw-before-logging-forward
-A FORWARD -j ufw-before-forward
-A FORWARD -j ufw-after-forward
-A FORWARD -j ufw-after-logging-forward
-A FORWARD -j ufw-reject-forward
-A FORWARD -j ufw-track-forward
-A OUTPUT -j ufw-before-logging-output
-A OUTPUT -j ufw-before-output
-A OUTPUT -j ufw-after-output
-A OUTPUT -j ufw-after-logging-output
-A OUTPUT -j ufw-reject-output
-A OUTPUT -j ufw-track-output
-A ufw-after-input -p udp -m udp --dport 137 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 138 -j ufw-skip-to-policy-input
-A ufw-after-input -p tcp -m tcp --dport 139 -j ufw-skip-to-policy-input
-A ufw-after-input -p tcp -m tcp --dport 445 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 67 -j ufw-skip-to-policy-input
-A ufw-after-input -p udp -m udp --dport 68 -j ufw-skip-to-policy-input
-A ufw-before-forward -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 4 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A ufw-before-forward -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ufw-before-forward -j ufw-user-forward
-A ufw-before-input -i lo -j ACCEPT
-A ufw-before-input -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-input -m conntrack --ctstate INVALID -j ufw-logging-deny
-A ufw-before-input -m conntrack --ctstate INVALID -j DROP
-A ufw-before-input -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 4 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A ufw-before-input -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ufw-before-input -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A ufw-before-input -j ufw-not-local
-A ufw-before-input -d 224.0.0.251/32 -p udp -m udp --dport 5353 -j ACCEPT
-A ufw-before-input -d 239.255.255.250/32 -p udp -m udp --dport 1900 -j ACCEPT
-A ufw-before-input -j ufw-user-input
-A ufw-before-output -o lo -j ACCEPT
-A ufw-before-output -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A ufw-before-output -j ufw-user-output
-A ufw-not-local -m limit --limit 3/min --limit-burst 10 -j ufw-logging-deny
-A ufw-not-local -j DROP
-A ufw-skip-to-policy-forward -j DROP
-A ufw-skip-to-policy-input -j DROP
-A ufw-skip-to-policy-output -j ACCEPT
-A ufw-track-output -p tcp -m conntrack --ctstate NEW -j ACCEPT
-A ufw-track-output -p udp -m conntrack --ctstate NEW -j ACCEPT
COMMIT
# Completed on Thu Dec 4 10:34:34 2014
ubuntu@tegra-ubuntu:~$
J'ai même tenté de désinstaller ufw et de pousser mes propres règles iptables, mais quand je flush toutes les tables, et que je pousse avec iptables-restore mes règles *filter, ces autres règles sont toujours là !
Je n'utilise pas Networkmanager, et mon noyau est : Linux tegra-ubuntu 3.10.40-g8c4516e #1 SMP PREEMPT Tue Oct 7 19:18:58 PDT 2014 armv7l armv7l armv7l GNU/Linux
Impossible de faire un nmap sur la machine, le réseau sur lequel je suis bloque les scans entre machines (même en -Pn), seul le ping passe.
L'un d'entre vous as-il une idée ? Je ne connais pas ces règles *nat *raw *mangle, peut être sont-elles sans incidence, mais je n'aime pas qu'un machin tourne sans que je sache ce qu'il fait.
Merci d'avance
Moomba
[edit] J'ai oublié de mentionner que j'ai coupé l'ipv6 et que j'ai demandé à ufw de ne pas appliquer les règles ipv6.
Dernière modification par Moomba (Le 05/12/2014, à 15:55)
Celui qui a le pouvoir de faire le mal et qui ne le fait pas, celui là est le prince de l'univers... (Shakespeare)
Hors ligne
#2 Le 04/12/2014, à 18:45
- tiramiseb
Re : [Résolu]Configuration UFW étonnamment difficile
Salut,
Es-tu sûr que les modules de Netfilter en question sont présents pour ton noyau ?
Par ailleurs, si tu veux empêcher les connexions vers cette machine, pourquoi le pare-feu ?
Pourquoi pas simplement ne rien mettre en écoute ?
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 05/12/2014, à 15:54
- Moomba
Re : [Résolu]Configuration UFW étonnamment difficile
Merci du retour.
Pour être honnête, ce kernel, c'est plutôt le désert :
ubuntu@tegra-ubuntu:~$ lsmod
Module Size Used by
dm_crypt 13259 0
dm_mod 73887 1 dm_crypt
rfcomm 38359 0
bnep 10469 2
bluetooth 307068 10 bnep,rfcomm
rfkill 10365 2 bluetooth
nvhost_vi 3064 0
Et je ne vois pas les iptables ni netfilter.
Bonne remarque concernant l'écoute, j'étais tellement focalisé sur le pare feu que j'en ai oublié l'essentiel
Les seuls que j'ai en écoute sont (ssh est sur le 443) :
sshd 1550 root 3u IPv4 5958 0t0 TCP *:https (LISTEN)
sshd 1550 root 4u IPv6 5960 0t0 TCP *:https (LISTEN)
cupsd 7699 root 10u IPv4 36482 0t0 TCP localhost:ipp (LISTEN)
Il me reste donc à couper ssh, c'est d'ailleurs fait. cupsd n'écoute qu'en local donc c'est bon.
Problème résolu donc, même si je trouve que ce noyau fournit par Nvidia manque tout de même de pas mal d'éléments...
Merci pour l'aide !
Celui qui a le pouvoir de faire le mal et qui ne le fait pas, celui là est le prince de l'univers... (Shakespeare)
Hors ligne