/ansible-role-dnscrypt-proxy

:lock::postal_horn: Spin up a(n optionally Torified) DNS, DNSCrypt v2, DNS-over-TLS, and/or DNS-over-HTTPS proxy server.

Anarcho-Tech NYC: dnscrypt-proxy Build Status

An Ansible role for installing a dnscrypt-proxy server. Notably, this role has been tested with Raspbian on Raspberry Pi hardware. This role's purpose is to make it simple to install and run a dnscrypt-proxy instance, either locally or as a server, with minimal resources.

Role variables

  • dnscrypt_proxy_version - Version of dnscrypt-proxy as released from the DNSCrypt/dnscrypt-proxy repository to download and use.
  • dnscrypt_proxy_install_prefix - Absolute filesystem path prefix in which to install dnscrypt-proxy. Default: /opt/local.
  • dnscrypt_proxy_listen_address - Address on which to offer dnscrypt-proxy's services. The package default is 127.0.0.1:53, but this role's default is :53 (port 53 on all interfaces).

See the defaults/main.yaml file for a more thorough example.

Testing

Use Molecule to run the tests. (You'll also need to install Docker, as tests are run in Docker containers.) Here's how to install Molecule into a virtual environment.

# Molecule is written in Python, so you'll also need Python.
python -m venv venv                      # Create your virtual environment.
source venv/bin/activate                 # Activate it.
pip install molecule ansible-lint docker # Install testing tools.

# Then, you can run the tests:
molecule test

# When you're done, deactivate your virtual environment.
deactivate