Para responder à pergunta real, sobre como criar seu próprio arquivo de aplicativo, você só precisa saber que ele está usando o formato de arquivo INI do Windows (eca).
[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
A linha de portas pode especificar várias portas, com / udp ou / tcp, para limitar o protocolo, caso contrário, o padrão é ambos. Você precisa dividir as seções do protocolo com |.
Então, para um conjunto de exemplos da vida real que eu fiz:
[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
Você pode listar várias versões do aplicativo em um único arquivo, como este no 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===
Depois de definir o arquivo do aplicativo, insira-o /etc/ufw/applications.d
e diga ao ufw para recarregar as definições do aplicativo com
ufw app update appname
ufw app info appname
Use-o com algo como:
ufw allow from 192.168.1.10 to any app amanda
ufw allow amanda
assumindo que 192.168.1.10 é o IP do seu servidor amanda.
xx/tcp|yy/udp
. Em outras palavras, a separação entre os protocolos devem ser um tubo, não uma vírgula como no seu exemplonetstat
para encontrar o nome do aplicativo ... está certo? Funcionou para mim pelo menos. É sensível a maiúsculas? Eu não tenho certeza qual é a relação entre o "appname" no arquivo do aplicativo versus o título contra o nome do processo, etc.xx/tcp,xy/tcp,xz/tcp
ouxx/tcp|xy/tcp|xz/tcp
Na verdade, está tudo lá na página de manual na seção "Integração de aplicativos".
A sintaxe básica é:
Ou você pode usar a sintaxe estendida para ser mais específico:
A página de manual diz especificamente para não especificar um número de porta:
Isso provavelmente significa que ele permitirá
<app_name>
usar qualquer porta que desejar.Outros comandos úteis:
Que lista as informações no
<app_name>
perfil de.Quais atualizações
<app_name>
do perfil. Você pode usarall
para atualizar todos os perfis de aplicativos.Você pode usar o:
para adicionar
<app_name>
e atualizar um novo perfil , seguindo as regras definidasufw app default <policy>
.Os perfis de aplicativos são armazenados
/etc/ufw/applications.d
e algumas vezes/etc/services
.Para mais informações, consulte
man ufw
.fonte