Pour répondre à la vraie question, sur la façon de créer votre propre fichier d'application, il vous suffit de savoir qu'il utilise le format de fichier Windows INI (beurk).
[appname]
title=1-liner here
description=a longer line here
ports=1,2,3,4,5,6,7,8,9,10,30/tcp|50/udp|53
La ligne de ports peut spécifier plusieurs ports, avec / udp ou / tcp, pour limiter le protocole, sinon il s'agit par défaut des deux. Vous devez diviser les sections de protocole avec |.
Donc, pour un ensemble d'exemples concrets que j'ai faits:
[puppet]
title=puppet configuration manager
description=Puppet Open Source from http://www.puppetlabs.com/
ports=80,443,8140/tcp
[AMANDA]
title=AMANDA Backup
description=AMANDA the Advanced Maryland Automatic Network Disk Archiver
ports=10080
Vous pouvez répertorier plusieurs versions de l'application dans un seul fichier, comme celui-ci d'apache:
===start of apache2.2-common file===
[Apache]
title=Web Server
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=80/tcp
[Apache Secure]
title=Web Server (HTTPS)
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=443/tcp
[Apache Full]
title=Web Server (HTTP,HTTPS)
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=80,443/tcp
===end of file===
Une fois que vous avez défini votre fichier d'application, insérez-le /etc/ufw/applications.d
, puis dites à ufw de recharger les définitions d'application avec
ufw app update appname
ufw app info appname
Utilisez-le avec quelque chose comme:
ufw allow from 192.168.1.10 to any app amanda
ufw allow amanda
en supposant que 192.168.1.10 est l'IP de votre serveur amanda.
xx/tcp|yy/udp
. En d'autres termes, la séparation entre les protocoles devrait être un tuyau, pas une virgule comme dans votre exemple