Browse Source

Initial commit

master
Luke Childs 3 years ago
commit
0173f9dc0f
  1. 1
      .gitignore
  2. 6
      Dockerfile
  3. 47
      docker-compose.yml
  4. 86
      readme.ms
  5. 51
      test
  6. 189
      tor/torrc
  7. 30
      tor/torrc1
  8. 31
      tor/torrc2
  9. 31
      tor/torrc3
  10. 31
      tor/torrc4
  11. 31
      tor/torrc5
  12. 31
      tor/torrc6

1
.gitignore

@ -0,0 +1 @@
tor/data

6
Dockerfile

@ -0,0 +1,6 @@
FROM debian:buster-slim
RUN apt-get update
RUN apt-get install -y tor
ENTRYPOINT tor

47
docker-compose.yml

@ -0,0 +1,47 @@
version: '3.7'
services:
tor:
build: .
user: toruser
volumes:
- ${PWD}/tor/torrc:/etc/tor/torrc
- ${PWD}/tor/data:/var/lib/tor/
# tor1:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc1:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
# tor2:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc2:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
# tor3:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc3:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
# tor4:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc4:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
# tor5:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc5:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
# tor6:
# build: .
# user: toruser
# volumes:
# - ${PWD}/tor/torrc6:/etc/tor/torrc
# - ${PWD}/tor/data:/var/lib/tor/
nginx:
image: nginxdemos/hello:plain-text

86
readme.ms

@ -0,0 +1,86 @@
## Running 60 HS from a single daemon
```
tor-test %
››› ./test
Starting services...
[+] Running 1/3
⠿ Network tor-test_default Created 4.6ss
[+] Running 3/3r-test_tor_1 Starting 2.6s
⠿ Network tor-test_default Created 4.6s
⠿ Container tor-test_tor_1 Started 2.9s
⠿ Container tor-test_nginx_1 Started 2.8s
Created 60 hidden services
Testing hidden services...
/ = up X = down
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Waiting 10 seconds...
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Waiting 10 seconds...
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Waiting 10 seconds...
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX///X///X
Waiting 10 seconds...
/////////////////////X/XXX//X/XXX/X/XXXXXXX//XXXXX/XX/X/X/XX
Stopping services...
[+] Running 3/3
⠿ Container tor-test_nginx_1 Removed 0.2s
⠿ Container tor-test_tor_1 Removed 0.2s
⠿ Network tor-test_default Removed
```
## Running 60 HS from 6 daemons (10 HS each)
```
››› ./test
Starting services...
[+] Running 8/8
⠿ Network tor-test_default Created 3.6s
⠿ Container tor-test_tor5_1 Started 9.0s
⠿ Container tor-test_tor3_1 Started 9.1s
⠿ Container tor-test_tor6_1 Started 8.9s
⠿ Container tor-test_tor4_1 Started 7.6s
⠿ Container tor-test_tor2_1 Started 9.3s
⠿ Container tor-test_nginx_1 Started 6.6s
⠿ Container tor-test_tor1_1 Started 9.4s
Created 60 hidden services
Testing hidden services...
/ = up X = down
XX//////////////////////////////////////////////////////////
Waiting 10 seconds...
////////////////////////////////////////////////////////////
Waiting 10 seconds...
////////////////////////////////////////////////////////////
Waiting 10 seconds...
///////////////////////////////////////////////////////////X
Waiting 10 seconds...
////////////////////////////////////////////////////////////
Stopping services...
[+] Running 8/8
⠿ Container tor-test_tor6_1 Removed 0.5s
⠿ Container tor-test_nginx_1 Removed 0.4s
⠿ Container tor-test_tor3_1 Removed 0.7s
⠿ Container tor-test_tor4_1 Removed 0.5s
⠿ Container tor-test_tor2_1 Removed 0.6s
⠿ Container tor-test_tor1_1 Removed 0.6s
⠿ Container tor-test_tor5_1 Removed 0.4s
⠿ Network tor-test_default Removed 2.6s
```

51
test

@ -0,0 +1,51 @@
#!/usr/bin/env bash
test() {
for dir in tor/data/*
do
(
hs=$(cat $dir/hostname)
curl -s --socks5-hostname 127.0.0.1:9050 http://$hs | grep --silent Server \
&& echo -n "/" \
|| echo -n "X"
) &
done
wait
echo
}
echo "Starting services..."
docker compose up -d
sleep 1
echo
echo "Created $(ls tor/data | wc -l) hidden services"
echo
echo "Testing hidden services..."
echo "/ = up X = down"
echo
test
echo
echo "Waiting 10 seconds..."
sleep 10
test
echo
echo "Waiting 10 seconds..."
sleep 10
test
echo
echo "Waiting 10 seconds..."
sleep 10
test
echo
echo "Waiting 10 seconds..."
sleep 10
test
echo
echo "Stopping services..."
docker compose down

189
tor/torrc

@ -0,0 +1,189 @@
HiddenServiceDir /var/lib/tor/hs-blah-1
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-2
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-3
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-4
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-5
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-6
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-7
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-8
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-9
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-10
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-11
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-12
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-13
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-14
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-15
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-16
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-17
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-18
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-19
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-20
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-blah-30
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-1
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-2
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-3
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-7
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-8
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-9
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-10
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-11
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-12
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-13
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-14
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-15
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-16
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-17
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-18
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-19
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-20
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-30
HiddenServicePort 80 nginx:80

30
tor/torrc1

@ -0,0 +1,30 @@
HiddenServiceDir /var/lib/tor/hs-1
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-2
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-3
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-7
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-8
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-9
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-10
HiddenServicePort 80 nginx:80

31
tor/torrc2

@ -0,0 +1,31 @@
HiddenServiceDir /var/lib/tor/hs-11
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-12
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-13
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-14
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-15
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-16
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-17
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-18
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-19
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-20
HiddenServicePort 80 nginx:80

31
tor/torrc3

@ -0,0 +1,31 @@
HiddenServiceDir /var/lib/tor/hs-4-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-4-30
HiddenServicePort 80 nginx:80

31
tor/torrc4

@ -0,0 +1,31 @@
HiddenServiceDir /var/lib/tor/hs-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-30
HiddenServicePort 80 nginx:80

31
tor/torrc5

@ -0,0 +1,31 @@
HiddenServiceDir /var/lib/tor/hs-5-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-5-30
HiddenServicePort 80 nginx:80

31
tor/torrc6

@ -0,0 +1,31 @@
HiddenServiceDir /var/lib/tor/hs-6-21
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-22
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-23
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-24
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-25
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-26
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-27
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-28
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-29
HiddenServicePort 80 nginx:80
HiddenServiceDir /var/lib/tor/hs-6-30
HiddenServicePort 80 nginx:80
Loading…
Cancel
Save