Integrate Anubis as a WAF/Reverse Proxy to secure traffic
and challenge AI scrapers.
[ SELinux policy ]
Allow nginx to connect to UNIX socket.
Ref T2193.
Differential D3908
Deploy Anubis for DevCentral Authored by ptdradmin on Feb 6 2026, 16:32. Tags None Referenced Files
Subscribers None Tokens
Details
Integrate Anubis as a WAF/Reverse Proxy to secure traffic [ SELinux policy ] Allow nginx to connect to UNIX socket. Ref T2193. Initial proof of concept verified on Dwellers. Tests for production:
Diff Detail
Event TimelineThere are a very large number of changes, so older changes are hidden. Show Older Changes This comment was removed by ptdradmin.
Comment Actions Summary: Refactored Anubis deployment according to review feedback.
.
:wq ^O
Comment Actions Next step: validate the Dwellers part and ensure it matches our current configuration there. Peering deployment between @ptdradmin and @dereckson for that activity.
Comment Actions Fix Anubis deployment: unify env vars, reconcile policies with P390, and align Nginx config
Comment Actions @ptdradmin The provisioning of /etc/anubis/private.key we added here has disappeared: https://devcentral.nasqueron.org/D3908?vs=10478&id=10480#toc That's the code we added in live Friday evening together to fetch the private key from Vault. to add in init.sls /etc/anubis/private.key: file.managed: - source: salt://roles/paas-docker/anubis/files/private.key - template: jinja - context: key: {{ salt["credentials.get_password"]("anubis/" + grains["id"]) }} We also have the template: roles/paas-docker/anubis/files/private.key # -------------------------------------------------------------
# Anubis private key
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
# License: Trivial work, not eligible to copyright
# Source file: roles/paas-docker/anubis/files/private.key
# -------------------------------------------------------------
#
# <auto-generated>
# This file is managed by our rOPS SaltStack repository.
#
# Changes to this file may cause incorrect behavior
# and will be lost if the state is redeployed.
# </auto-generated>
{{ key }}Comment Actions YAML/Jinaj Style: remove defaults to fail loudly on missing ports/bind as suggested by dereckson, plus add headers Comment Actions Apply dereckson feedback: add headers, remove defaults for bind/port to fail loudly if undefined Comment Actions Rebased. Removed comments for private key (not supported by Anubis). Provisioned systemd service template. Comment Actions Use web as shared group between nginx and anubis, so nginx can connect to anubis socket. Resolve target container port. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||