README 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. These are instructions for setting up a test environment for slitheen!
  2. 0. Dependencies
  3. - You must have the most recent version of Docker installed. For detailed instructions on how to do this, visit: https://docs.docker.com/install/linux/docker-ce/ubuntu/
  4. - You must install koko. For instructions to build from source, or binaries, visit: https://github.com/redhat-nfvpe/koko/releases
  5. 1. Setting up the docker containers
  6. There are two different docker containers: one for the client, and one for the relay station. These containers will be networked together such that the client's traffic is routed through the relay station.
  7. A. Setting up the client docker container
  8. - The client container must build our modified version of firefox. Firefox has an intense bootstrapping process, so download https://cs.uwaterloo.ca/~cbocovic/ff_bootstrapped_2018_03_25.tar.gz and run
  9. bzcat ff_build_bootstrapped.tar.bz2 | docker load
  10. - clone the firefox and slitheen repositories
  11. hg clone ssh://hg@git-crysp.uwaterloo.ca/firefox
  12. git clone git@git-crysp.uwaterloo.ca:slitheen/code
  13. - edit testenv_config to point to these two repositories
  14. - run ./mktestenvconfig
  15. - run ./ous_run
  16. - build firefox by running ./mach build (this will take a while)
  17. B. Setting up the relay station docker container
  18. - run ./relay_run
  19. - run make
  20. C. Setting up networking
  21. - To network the two containers, run ./net_run
  22. - on the host machine, follow the instructions to disable TCP offloading, as directed by the output of net_run.
  23. D. Check to make sure network is properly set up
  24. - run sudo ./slitheen veth1 eth0
  25. - you should be able to ping 8.8.8.8 from the client machine
  26. 2. Running tests
  27. You will need 5 terminals for this task:
  28. A. ./relay_run
  29. - inside the relay station container, run
  30. sudo ./slitheen veth1 eth0
  31. B. ./ous_run
  32. - inside the ous container, run ./mach run to start firefox
  33. C. ./socks_run
  34. - inside another instance of the ous container, run ./socks
  35. D. vncviewer localhost (password: 1234) to view firefox
  36. E. connect to localhost:1080 to proxy to covert site.