- Accueil
- Info légales
- Aide (FAQ)
- Les tags de ce site
- Bloc note
- Articles techniques
- Notes system
- Divers articles
- Drupal
- Notes ITIL 2007
- Notes MS
- Dans le quartier...
- Emploi
- Recettes de cuisine et adresses gourmandes
- mes applis ubuntu préferées
- Divers acronymes du monde social
- Internet 2018
- P2 meublé à louer - quartier du Poteau 75018
- apcos - réseaux sociaux et outils
- Articles techniques
- Divers liens
- Fun
- Mon CV IT
- Nouveautés
UFW - Uncomplicated Firewall
Gufw est l'interface graphique de Ufw (intégré à ubuntu, basé sup iptable), cette page concerne les lignes de commandes ufw et ses fichiers de configuration. Vers ma page commandes réseau linux (avec netstat et dig).
fail2ban : lit les logs de divers services (à la recherche d'erreurs d'authentification répétées) et ajoute une règle iptables pour bannir l'adresse IP.
Surveiller - tips netstat
voir les ports TCP ouverts: sudo netstat -napt | grep LISTEN et voir les ports UDP ouverts: sudo netstat -napu option -c en continu
voir ports ouverts en écoute (udp+tcp): sudo netstat -naptu | grep LISTEN
Pour windows: voir les connections actives netstat -ano noter le PID puis netstat parameter -s displays per-protocol statistics
Commandes de Ufw
vérifier état: sudo ufw status verbose sudo ufw status -> état et règles en cours (policy active). Dans la sortie générée par status, Anywhere=any=0.0.0.0/0.
commandes ufw | résultat de ufw status |
---|---|
ufw allow in on eth0 from 192.168.0.0/16 ufw allow out on eth1 to 10.0.0.0/8 ufw route allow in on eth0 out on eth1 to 10.0.0.0/8 from 192.168.0.0/16 |
To Action From -- ------ ---- Anywhere on eth0 ALLOW 192.168.0.0/16 10.0.0.0/8 ALLOW OUT Anywhere on eth1 10.0.0.0/8 on eth1 ALLOW FWD 192.168.0.0/16 on eth0 |
sudo ufw enable -> enable disable ou reload mais enable: l'active au boot + recharge fw (=reload)
L'ajout de l'option --dry-run à la commande ufw affichera les règles sans les appliquer. Par ex, tester sudo ufw --dry-run allow samba
Voir profils d'application: ufw app list (par ex, liste: cups, samba ; les fichiers de conf sont à /etc/ufw/applications.d/)
fichiers de règle à lire: /etc/ufw/fichiers.rules et à /lib/ufw/user.rules
sudo ufw delete deny 80/tcp efface la règle "deny 80/tcp"
sudo ufw reset retour à la conf par défaut, mais il existe aussi sudo ufw reload
policy par défaut: ex de déclaration: sudo ufw default reject. Quand on change la policy par défaut, les règles existantes devont etre migrées manuellement.
syntaxe: sudo ufw default allow|deny|reject incoming|outcoming|routed
ufw --help -> ufw version (affiche ufw 0.34~rc-0ubuntu2)
Application profile commands:
app list liste les PROFILEs (ex: CUPS Samba... sensible à la casse)
app info PROFILE montre information. Ex: sudo ufw app info CUPS
app update PROFILE update PROFILE
app default ARG définir la policy d'application default
règles et lignes (syntaxe)
Ne voir que les règles, avec leur numéro : sudo ufw status numbered
sudo ufw --dry-run delete 1 (mais n'effacera pas la règle ipv6 associée)
sudo ufw --dry-run insert 10 allow from 192.168.3.102 (mais si on n'a que 5 règles, retourne une erreur)
Pour bloquer l'accès au port TCP 22 depuis 192.168.0.1 et 192.168.0.7 mais en permettant aux autres IP du lan (ok pour les 192.168.0.x avec x<>1 et 7) - car il lit de haut en bas (et s'arrète au 1er match)
sudo ufw deny from 192.168.0.1 to any port 22
sudo ufw deny from 192.168.0.7 to any port 22
sudo ufw allow from 192.168.0.0/24 to any port 22 proto tcp
Syntaxe ufw (proche du PF de OpenBSD)
Syntaxe | Ex |
---|---|
sudo ufw allow <port>/<optional: protocol> si pas de direction (in ou out) alors la règle s'applique sur in |
laisser entrer tcp et udp sur 53 sudo ufw allow 53
ufw allow in http |
deny/allow par port et IP
sudo ufw allow from <ip address> to any port <port number> |
bloquer paquets de sudo ufw deny from 207.46.232.182
permettre un accès ssh depuis l'ensemble du sous-réseau: |
ex du man (14.04 lts) | |
ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 25 | bloque tout traffic en provenance de la classe A RFC1918 vers le port TCP 192.168.0.1:25 |
ufw deny proto tcp from 2001:db8::/32 to any port 25 | bloque tout traffic en provenance de l'IPv6 2001:db8::/32 vers le port 25 sur cette machine. |
ufw allow proto tcp from any to any port 80,443,8080:8090 | ouvre les ports cités. Cette liste de ports (chiffres, sans espaces) doit etre modifiée "comme un tout" - on ne pourra pas par la suite, par ex, retirer le port 443. Et le nb max de port est 15 (sachant que ":" compte pour2). |
ufw delete deny 80/tcp | efface la règle "ufw deny 80/tcp" |
UFW lit /etc/services donc on peut utiliser les noms des services (voir la liste des services: less /etc/services) sudo ufw allow <service name>
Les règles qui doivent etre routées/forwardées doivent commencer par route - la syntaxe diffère ici de PF car conventions netfilter de chaine FORWARD).
Ex: ufw route allow in on eth1 out on eth2 qui autorise le traffic routé vers eth2 qui arrive en in eth0 pour traverser le firewall / pare-feu.
L'ip forwarding se configure dans sysctl.conf
limit rules voir http://www.debian-administration.org/articles/187
Par défaut, ufw applique les règles sur toutes les interfaces. Les alias d'interfaces ne sont pas supportées (ex vmnet1 et 8). Il faut donc préciser la direction et l'interface (par ex pour autoriser tout nouveau traffic entrant http sur eth0: ufw allow in on eth0 to any port 80 proto tcp)
Par défaut, UFW laisse passer icmp (voir before.rules).
- sudo ufw status
- sudo ufw logging on et sudo ufw logging off
logs et reports (du man), avantages du raw
sudo ufw show raw
raw est complet. les autres (builtins before-rules user-rules after-rules logging-rules listening added) sont des sous-ensembles de raw.
listening listée dans l'ordre d'évaluation du kernel (le 1er match gagne). default policy n'y est pas et tcp6 et udp6 ne sont montrées que si ipv6 a été activé.
added règles ajoutées en ligne de commande
log de ufw fonctionnent par règle
Par défaut, Ufw ne logue pas un paquet qui correspond à une règle. log logera les nouvelles connections qui correspondent à règle ; log-all logera tous les paquets qui matchent la règle. Ex: ufw allow log 22/tcp
ufw logging LEVEL Par défaut à low ; peut prendre: off low medium hight ou full:
- low = log les bloqués qui ne matchent pas la defaut policy (avec limitation de taux) + ceux qui match une règle avec l'instruction log
- medium = low + les paquets qui ne matchent pas la default policy en ALLOW + INVALID + toute nouvelle connection. C'est logué avec limitation de taux.
- hight = medium (sans limitation de taux) + tous les paquets avec limitation de taux
- full = complet sans limitation de taux
Ci joint, 2 fichiers qui regroupent les principaux fichiers de conf (avant modif d'un client saucy 13.10, avril 2014): etc-ufw.txt et etc-ufw2.txt.
Plus (ressources web)
- https://help.ubuntu.com/14.04/serverguide/firewall.html et wiki.ubuntu.com/UncomplicatedFirewall et le how-to
- doc officielle help.ubuntu.com/community/Gufw et page man
- site officiel gufw.org
- www.frozentux.net/documents/iptables-tutorial
- www.netfilter.org iptable official website
- en francais: http://www.nbs-system.com/blog/howto-iptables.html
doc:
Fichier attaché | Taille |
---|---|
![]() | 5.48 Ko |
![]() | 4.29 Ko |