Skip to content

New Package: DNSCrypt Proxy - #1434

Open
nopoz wants to merge 1 commit into
pfsense:develfrom
nopoz:dnscrypt
Open

nopoz wants to merge 1 commit into
pfsense:develfrom
nopoz:dnscrypt

Conversation

@nopoz

@nopoz nopoz commented Jan 29, 2026

Copy link
Copy Markdown

Adds DNSCrypt Proxy as a new pfSense package with a full web GUI for managing an encrypted DNS proxy supporting DNSCrypt v2, DNS-over-HTTPS (DoH), Oblivious DoH (ODoH), and Anonymized DNS protocols.

Bundles DNSCrypt Proxy version 2.1.15 (FreeBSD amd64/arm64).

Features

  • 8 configuration tabs (General, Server Selection, Cache & Filtering, Logging, Lists, Advanced, Query Log, Config)
  • Manual or automatic server selection from popular providers (Cloudflare, Quad9, Google, AdGuard, NextDNS, Mullvad, OpenDNS, CleanBrowsing) or custom resolvers via DNS stamps
  • Anonymized DNS with relay routing
  • Domain blocking/allowing, forwarding rules, and cloaking rules
  • Query log viewer with filtering by domain, type, and client IP
  • Config export (copy/download), import (paste/upload TOML), and reset to defaults
  • Custom TOML options with validation via dnscrypt-proxy -check
  • Service management integration (Status > Services)
  • Architecture auto-detection (amd64/arm64)

Fulfills Redmine #9315

Standalone repo: https://github.com/nopoz/pfsense-dnscrypt-proxy

Screenshots

View screenshots

General Settings:

Server Selection:

Cache & Filtering:

Logging:

Lists:

Advanced:

Query Log:

Config:

nopoz added a commit to nopoz/pfsense-dnscrypt-proxy that referenced this pull request Feb 6, 2026
Standalone repository for the pfSense DNSCrypt Proxy package, providing
encrypted DNS via DNSCrypt v2 and DNS-over-HTTPS with full GUI support.

Features:
- One-line installation from GitHub releases
- GitHub Actions automated builds on FreeBSD
- 7-tab GUI configuration interface
- Popular DNS provider presets
- Query logging and domain filtering
- amd64/arm64 architecture support

Also submitted upstream: pfsense/FreeBSD-ports#1434
nopoz added a commit to nopoz/pfsense-dnscrypt-proxy that referenced this pull request Feb 17, 2026
Standalone repository for the pfSense DNSCrypt Proxy package, providing
encrypted DNS via DNSCrypt v2 and DNS-over-HTTPS with full GUI support.

Features:
- One-line installation from GitHub releases
- GitHub Actions automated builds on FreeBSD
- 7-tab GUI configuration interface
- Popular DNS provider presets
- Query logging and domain filtering
- amd64/arm64 architecture support

Also submitted upstream: pfsense/FreeBSD-ports#1434
@nopoz
nopoz force-pushed the dnscrypt branch 2 times, most recently from d006982 to be48bc2 Compare March 3, 2026 07:39
@nopoz
nopoz force-pushed the dnscrypt branch 2 times, most recently from d833ed0 to 830ebcd Compare March 14, 2026 08:33
@marcos-ng

Copy link
Copy Markdown
Collaborator

Binaries should come from upstream rather than be bundled in PRs.

@nopoz

nopoz commented Aug 21, 2026

Copy link
Copy Markdown
Author

@marcos-ng

I have reworked the port.

The two binaries are gone from the tree. The port now fetches upstream's released FreeBSD builds as distfiles, pinned by SHA256 and SIZE in distinfo:

MASTER_SITES=	https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/${DNSCRYPT_VERSION}/
DISTFILES=	dnscrypt-proxy-freebsd_${DNSCRYPT_ARCH}-${DNSCRYPT_VERSION}${EXTRACT_SUFX}
ONLY_FOR_ARCHS=	amd64 aarch64

That takes the package directory from about 25 MB down to under 140 KB, and the pinned checksums are reviewable in a diff in a way a committed binary never was.

On provenance: the daemon version is tracked by a scheduled job that verifies upstream's minisign signatures against the official release key before touching anything, and it regenerates distinfo from those same verified tarballs, so the pinned checksums derive from signed artifacts rather than from whatever the network handed back.

Synced from the standalone repository at v1.2.10.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants