Skip to content
Snippets Groups Projects
Unverified Commit 37254249 authored by Philipp Winter's avatar Philipp Winter
Browse files

Add instructions and explanations.

parent 873dc9ad
No related branches found
No related tags found
No related merge requests found
# obfs4PortScan
Tests if a Tor bridge's obfs4 port is publicly reachable.
This service lets bridge operators test if their bridge's obfs4 port is
publicly reachable.
## Command line arguments arguments
The tool takes as input two command line arguments: a path to a certificate
file and a path to its key file, both in PEM format. We use these files to run
the HTTPS server.
## Scanning method
We try to establish a TCP connection with the given IP address and port using
golang's `net.DialTimeout` function. If we don't get a response within three
seconds, we deem the port unreachable. We also deem the port unreachable if we
get a RST segment before the timeout. In both cases, we display the error
message that we got from `net.DialTimeout`.
We implement a simple rate limiter that limits incoming requests to an average
of one per second with bursts of as many as five requests per second.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment