Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/3wille/bachelor-thesis-socks

Substitute for the Tor client's socks proxy for the Tor Browser
https://github.com/3wille/bachelor-thesis-socks

tor

Last synced: about 1 month ago
JSON representation

Substitute for the Tor client's socks proxy for the Tor Browser

Awesome Lists containing this project

README

        

# IPv6 Address hopping - SOCKS5 proxy

This repository is part of my thesis "Design and Implementation of Context-aware IPv6 Address Hopping". It is further used in the paper "Context-aware IPv6 Address Hopping" by M. Marx, M. Schwarz, M. Blochberger, F. Wille and H. Federrath published in the proceedings of [ICICS'19](http://www.icics.cn/).

To a browser, the proxy behaves similar to the one delivered with Tor and The Tor Browser.

## Initialize Subrepository

The larger part of this prototype is implemented in a fork of github.com/oov/socks5.
It is tweaked to support above functionality. To Initialize the subrepo run ``git submodule update --init`` or clone the whole repo with ``git clone --recursive ``.

## Build

To trigger a build of the go package run ``make build``.
This yields an executable ``main``.

## Usage

On execution the ``config.yml`` is loaded and parsed.
It may contain several prefixes.
Each time a new address is generated by the proxy, a random prefix is picked from the list and a random suffix generated for it.

## Setup
The host on which the proxy shall run needs to be set up.
First, it needs to be reachable by the prefix configured in ``config.yml``.
I use a prefix from Hurricane Electric's Tunnelbroker.
My tunnel setup can be seen in the bash script ``setup_tunnel``.

Then, the prefix has to configured to use AnyIP in the linux system.
The bash script ``setup_anyip`` configures two example prefixes.