arti in Docker
With snowflake and obfs4proxy.
Use
docker run
docker run -it --rm -p 127.0.0.1:9150:9150 severecloud/arti:latest
with config
docker run -it --rm \
-v ./arti.toml:/home/arti/.config/arti/arti.toml:ro \
-p 127.0.0.1:9150:9150 \
severecloud/arti:latest
docker-compose.yml
services:
arti:
container_name: arti
image: severecloud/arti:latest
port:
- "127.0.0.1:9150:9150"
# volumes:
# - ./arti.toml:/home/arti/.config/arti/arti.toml:ro
docker compose up
Check
curl -s --socks5-hostname 127.0.0.1:9150 'https://check.torproject.org/' | grep -m1 Congratulations
Output: Congratulations. This browser is configured to use Tor.
Config
/home/arti/.config/arti/arti.toml
Use bridges
obfs4proxy
[bridges]
enabled = true
# For example:
bridges = '''
192.0.2.83:80 $0bac39417268b96b9f514ef763fa6fba1a788956
[2001:db8::3150]:8080 $0bac39417268b96b9f514e7f63fa6fb1aa788957
obfs4 bridge.example.net:80 $0bac39417268b69b9f514e7f63fa6fba1a788958 ed25519:dGhpcyBpcyBbpmNyZWRpYmx5IHNpbGx5ISEhISEhISA iat-mode=1
'''
[[bridges.transports]]
protocols = ["obfs4"]
path = "/usr/bin/obfs4proxy"
arguments = ["-enableLogging", "-logLevel", "DEBUG"]
run_on_startup = false
snowflake
[bridges]
enabled = true
# For example:
bridges = '''
snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ fronts=foursquare.com,github.githubassets.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn
'''
[[bridges.transports]]
protocols = ["snowflake"]
path = "/usr/bin/snowflake-client"
arguments = ["-log-to-state-dir", "-log", "snowflake.log"]
run_on_startup = false