

Let’s walk through how to do the same to my new container in the next step. This is because I have applied a network bridge to my signal-proxy that allows it to get its own IP from my router. You’ll notice that my snowflake-proxy container has an internal IP whereas my signal-proxy container has an IP from my LAN. The following command launches a LXC instance based on Ubuntu 22.04 with the name ‘snowflake-proxy’: $ sudo lxc launch ubuntu:22.04 snowflake-proxy -c security.nesting=true -c security.privileged=trueīy running sudo lxc list I can see my new, empty container alongside my existing, Signal proxy container (which is a work in progress, more about this in a future post). This comes with some security risks, but since the Docker image is itself isolated and I am creating the container with a non-root account this is relatively minimal. To do this I need to use a privileged container. Since I will be using the Tor Snowflake Proxy Docker image which is itself a container, I also need to enable support for nested containers in my LXC instance. To create a fresh environment for my Snowflake proxy I want to launch a new LXC container.
Creating a privileged LXC container for the Snowflake Proxy Note: I am using Ubuntu on WSL to SSH into my Raspberry Pi, check out my previous blog post to learn more about this setup.

Since the proxy is running inside a Docker container itself this could be considered overkill, but by using LXD I can also treat my Snowflake proxy as an entirely separate machine to other containers on the Raspberry Pi using a Netplan bridge for easier administration. Since my Raspberry Pi homelab is set up to run multiple services and containers, I have hosted my proxy inside a LXD container which isolates the proxy and its dependencies from other applications on the machine, preventing potential conflicts. In this post I’ll run through how I set up my Snowflake Proxy on my mini homelab. A more permanent approach is to use a Raspberry Pi. However using a browser extension means that you’re only hosting a proxy whilst the browser is running. Snowflake proxies are run entirely by volunteers and the easiest way to host one is to use a browser plugin on Firefox or Chrome.

The Tor project recently put out a call for assistance in combating the recent internet censorship in Iran by asking people to host Tor bridges using their Snowflake system.īy running a Snowflake proxy you can enable users to bypass internet censorship in their country by disguising their internet activities and enabling them to connect via the Tor browser.
