Filtering profiles

Protocol-aware profiles for game servers, VoIP, DNS and web — pick one per port range.

Reference1 min readUpdated 22 Sept 2026.md
On this page

Why profiles matter#

Generic filters see only packet rates. Profiles understand the protocol: they know that a valid Source-engine query has a specific header, that a Minecraft login starts with a handshake, or that DNS responses must match an earlier query. Attack traffic that looks valid to a generic filter is dropped by the profile.

Available profiles#

ProfileProtocolsTypical ports
game-sourceCS2, TF2, Garry's Mod (A2S)UDP 27015–27030
game-minecraftJava and BedrockTCP 25565, UDP 19132
game-rustRust / RakNetUDP 28015–28016
game-fivemFiveM / RedMTCP+UDP 30120
voip-sipSIP, RTPUDP 5060, 10000–20000
dns-authAuthoritative DNSUDP/TCP 53
https-strictTLS handshake validationTCP 443
genericRate and SYN protection onlyany

Create rules#

Shell
avenlith shield profile list
avenlith shield rule create --target 203.0.113.24 --protocol udp --port 27015-27030 --profile game-source
avenlith shield rule create --target 203.0.113.24 --protocol tcp --port 443 --profile https-strict
avenlith shield allowlist add 203.0.113.24 --source 198.51.100.7/32   # monitoring probe

Order of evaluation#

Allowlist → blocklist → port rule with profile → default profile of the IP. The first matching rule wins.

Was this page helpful?

Still need help?

Our engineers answer tickets 24/7 — average first response in 7 minutes.

Contact support