basicswap/doc/tor.md
2024-06-06 22:03:36 +02:00

2 KiB

Tor

Basicswap can be configured to route all traffic through a tor proxy.

Note that TOR integration is experimental and should not yet be relied upon.

basicswap-prepare

basicswap-prepare can be configured to download all binaries through tor and to enable or disable tor in all active coin config files.

Create initial files

Docker will create directories instead of files if these don't exist.

mkdir -p $COINDATA_PATH/tor
echo 'SocksPort 0.0.0.0:9050' > $COINDATA_PATH/tor/torrc

For a new install

Use the --usetorproxy argument to download the coin binaries over tor, then enable tor with --enabletor. Note that some download links may be unreachable when using tor.

docker compose -f docker-compose_with_tor.yml run --rm swapclient \
    basicswap-prepare --usetorproxy --datadir=/coindata --withcoins=monero,particl

docker compose -f docker-compose_with_tor.yml run --rm swapclient \
    basicswap-prepare --enabletor --datadir=/coindata

The --enabletor option will add config to the torrc file, the tor container must afterwards be stopped to load the new config:

docker compose -f docker-compose_with_tor.yml stop

Start Basicswap with:

docker compose -f docker-compose_with_tor.yml up

Enable tor on an existing datadir

docker compose -f docker-compose_with_tor.yml run --rm swapclient \
    basicswap-prepare --datadir=/coindata --enabletor

docker compose -f docker-compose_with_tor.yml stop

Disable tor on an existing datadir

docker compose -f docker-compose_with_tor.yml run --rm swapclient \
    basicswap-prepare --datadir=/coindata --disabletor

docker compose -f docker-compose_with_tor.yml stop

Update coin release

docker compose -f docker-compose_with_tor.yml up -d tor
docker compose -f docker-compose_with_tor.yml run --rm swapclient \
    basicswap-prepare --usetorproxy --datadir=/coindata --preparebinonly --withcoins=bitcoin
docker compose -f docker-compose_with_tor.yml stop