ufw-app
Manage Uncomplicated Firewall application profiles
TLDR
SYNOPSIS
ufw [--dry-run] app list | info PROFILE|all | update [--add-new] PROFILE|all | default allow|deny|reject|skip
DESCRIPTION
ufw app manages Uncomplicated Firewall application profiles: named port/protocol sets that packages and administrators drop in `/etc/ufw/applications.d/`. It is a ufw subcommand, not a separate binary.list names every profile ufw currently knows. info prints the INI fields for one name (or all): title, description, and the ports that a later `ufw allow OpenSSH` (or similar) will expand into real rules.Profiles use a simple INI format:
title=Some title
description=Some description
ports=12/udp|34|56,78:90/tcp
PARAMETERS
app list
Print the names of profiles found under `/etc/ufw/applications.d/`app info PROFILE|all
Show title, description, and ports/protocols for one profile, or for every known profileapp update PROFILE|all
Refresh firewall rules that already use that profile after its definition changedapp update --add-new PROFILE
Same as update, and also add a rule for the profile when none exists. all is not valid with --add-newapp default allow|deny|reject|skip
Policy used by update --add-new. Installation default is skip (do nothing). allow, deny, and reject add a matching rule automaticallyallow / deny / reject / limit PROFILE
Add a rule from a profile (simple syntax). Quote names that contain spacesfrom address to any app PROFILE
Extended syntax: use app in place of port. Do not specify a protocol alongside a profile--dry-run
Show what would change without applying it
CONFIGURATION
/etc/ufw/applications.d/
Directory of INI application profiles. Packages such as OpenSSH, nginx, and Apache commonly install files here./etc/default/ufw
`DEFAULTAPPLICATIONPOLICY` stores the app default value (`SKIP`, `ACCEPT`, `DROP`, or `REJECT`).
INSTALL
CAVEATS
Requires root or sudo. Quote profile names that contain spaces (`"Nginx Full"`). Do not combine a profile with a protocol in either syntax; in the extended form, use app instead of port. --add-new cannot take all. Once a profile is turned into a rule, ufw stores ports and protocols, not the profile name, so later edits need app update. Do not confuse ufw app default with ufw default, which sets unmatched traffic policy for incoming, outgoing, and routed traffic.
HISTORY
Application profiles have been part of ufw (Uncomplicated Firewall) since Ubuntu 8.10. ufw itself was developed by Canonical as a frontend for iptables/nftables.
SEE ALSO
ufw(8), ufw-allow(8), ufw-deny(8), ufw-default(8), ufw-status(8), ufw-enable(8), iptables(8)
