GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Installation pfsense

Installation pfsense

Jump to bottom Edit New page
Frank Denis edited this page Sep 28, 2026 · 10 revisions

Installation on pfSense

Installation

Example using FreeBSD/amd64 and version 2.0.45. Change it according to the current version and desired architecture.

cd /tmp
fetch -m https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.0.45/dnscrypt-proxy-freebsd_amd64-2.0.45.tar.gz
mkdir dnscrypt-proxy
tar -zxf dnscrypt-proxy-freebsd_amd64-2.0.45.tar.gz -C dnscrypt-proxy
mv dnscrypt-proxy/freebsd-amd64/dnscrypt-proxy /usr/local/bin/dnscrypt-proxy
chown root:wheel /usr/local/bin/dnscrypt-proxy
chmod +x /usr/local/bin/dnscrypt-proxy
mkdir -p /usr/local/etc/dnscrypt-proxy
cp dnscrypt-proxy/freebsd-amd64/example-dnscrypt-proxy.toml /usr/local/etc/dnscrypt-proxy/dnscrypt-proxy.toml

Edit the configuration /usr/local/etc/dnscrypt-proxy/dnscrypt-proxy.toml to suit your needs.
(I would suggest listen_addresses = ['127.0.0.1:5300'] to avoid conflicts with the regular pfSense DNS services, in addition to your own preferences regarding which servers to use, etc.)

Launching dnscrypt-proxy at boot

Add this script to /usr/local/etc/rc.d/dnscrypt-proxy.sh and set its execution permissions with chmod +x /usr/local/etc/rc.d/dnscrypt-proxy.sh.

#!/bin/sh

# PROVIDE: dnscrypt_proxy
# REQUIRE: cleanvar SERVERS
# BEFORE: unbound

. /etc/rc.subr

name=dnscrypt_proxy
procname=/usr/local/bin/dnscrypt-proxy
pidfile=/var/run/${name}.pid
load_rc_config $name

command=/usr/sbin/daemon
command_args="-p ${pidfile} -f ${procname} -config /usr/local/etc/dnscrypt-proxy/dnscrypt-proxy.toml -syslog"

run_rc_command "$1"

dnscrypt-proxy should now start on boot (the .sh extension for the rc script triggers this without further integration), and it can also be started immediately with service dnscrypt-proxy.sh start (stop it with service dnscrypt-proxy.sh stop, etc.).

Log output appears in Status -> System Logs (System/General section).

Configuration of Unbound

To make proper use of dnscrypt-proxy, you'll likely want to configure the regular pfSense resolver to forward all queries there.

Assuming that Unbound is in use (referred to as DNS Resolver in the pfSense UI), this can be done by putting something like this in Services -> DNS Resolver -> Custom options (make sure that the IP and port numbers correspond to what you configured in /usr/local/etc/dnscrypt-proxy/dnscrypt-proxy.toml):

server:
  do-not-query-localhost: no

forward-zone:
  name: "."
  forward-addr: 127.0.0.1@5300

This forwarding configuration should now be reflected in Status -> DNS Resolver, where the performance of the local dnscrypt-proxy should be tracked alone.

Are these instructions not clear? Wrong? Insufficient? This documentation page is a Wiki, so you can contribute by improving it!

  • Home
  • Installation
    • Windows
    • macOS
    • Linux
    • pfSense
    • Pi-hole
    • OpenWrt
    • Synology
    • OPNsense
    • EdgeOS
  • Configuration
    • Getting started
    • Configuring sources
    • Making things go fast
    • Filtering
    • Cloaking
    • Forwarding
    • Load-balancing options
    • Logging
    • Anonymized DNS
    • ODoH (Oblivious DNS-over-HTTPS)
    • DNS64
    • Captive portals
    • Monitoring UI
    • Built-in DoH server / Firefox ECH
  • Checking that your DNS traffic is encrypted
  • Automatic Updates
  • Server sources
  • Combining blocklists
  • Public Blocklist and other configuration files
  • Building from source
    • Building the Android version on non Android OS
    • Building dnscrypt proxy for jailbroken iOS
  • Run your own DNSCrypt server in under 10 minutes
    • Using a standalone proxy
    • Using Docker
    • Installation example on Scaleway
    • Installation example on Vultr
  • DNS stamps specifications
  • Windows tips
    • Network Connectivity Status Indicator (NCSI)
    • DNSSEC on Windows
  • dnscrypt-proxy in the media
  • Planned Features

Clone this wiki locally

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.