Để trả lời câu hỏi thực sự, về cách tạo tệp ứng dụng của riêng bạn, bạn chỉ cần biết rằng nó đang sử dụng định dạng tệp Windows INI (yuck).
[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
Dòng cổng có thể chỉ định nhiều cổng, với / udp hoặc / tcp, để giới hạn giao thức, nếu không, nó mặc định là cả hai. Bạn phải chia các phần giao thức với |.
Vì vậy, đối với một tập hợp các ví dụ thực tế tôi đã thực hiện:
[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
Bạn có thể liệt kê nhiều phiên bản của ứng dụng trong một tệp, như phiên bản này từ 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===
Khi bạn đã xác định tệp ứng dụng của mình, hãy đặt nó vào /etc/ufw/applications.d
, sau đó yêu cầu ufw tải lại các định nghĩa ứng dụng với
ufw app update appname
ufw app info appname
Sử dụng nó với một cái gì đó như:
ufw allow from 192.168.1.10 to any app amanda
ufw allow amanda
giả sử 192.168.1.10 là IP của máy chủ amanda của bạn.
xx/tcp|yy/udp
. Nói cách khác, sự tách biệt giữa các giao thức nên là một đường ống, không phải là dấu phẩy như trong ví dụ của bạn