Pour répondre à la vraie question, à savoir comment créer votre propre fichier d'application, il suffit de savoir qu'il utilise le format de fichier INI de Windows (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 ports peut spécifier plusieurs ports, avec /udp ou /tcp, pour limiter le protocole, sinon il est utilisé par défaut les deux. Vous devez séparer les sections de protocole avec |.
Donc, pour une série 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, mettez-le dans /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.