|
= OONI =
|
|
# OONI
|
|
|
|
|
|
The '''Open Observatory for Network Interference''' is a project to '''detect surveillance and censorship'''. We aim to share observations and data about the nature, methods, and prevalence of surveillance and censorship around the world, by collecting '''high quality data''' using '''open methodologies''' and Free/Libre Open Source Software (FLOSS).
|
|
The **Open Observatory for Network Interference** is a project to **detect surveillance and censorship**. We aim to share observations and data about the nature, methods, and prevalence of surveillance and censorship around the world, by collecting **high quality data** using **open methodologies** and Free/Libre Open Source Software (FLOSS).
|
|
|
|
|
|
[[TOC]]
|
|
|
|
|
|
|
|
== Code ==
|
|
|
|
Our codebase is currently in '''alpha status'''. We're still working out the last few kinks in the code before we put together a GUI interface and package it for distribution. If you'd like to help test out either '''ooniprobe (the network testing client)''' or '''oonib (our backend data collection system)''', that's great! This is an overwhelmingly ambitious project, and we welcome any and all help we can get.
|
|
|
|
|
|
|
|
'''Our code lives in two places: '''
|
|
## Code
|
|
We use our [https://github.com/TheTorProject/ooni-probe Tor Project organization account on Github] for '''active development''' (''yes, Richard Stallman, we know it isn't FLOSS, but the web interface and code commenting system on Github, such as the feature for commenting on a single line of code, has saved our development team much hassle and many an argument...''). '''To get our code''' you'll want to use [https://github.com/TheTorProject/ooni-probe.git this repo], and you can clone it with:
|
|
Our codebase is currently in **alpha status**. We're still working out the last few kinks in the code before we put together a GUI interface and package it for distribution. If you'd like to help test out either **ooniprobe (the network testing client)** or **oonib (our backend data collection system)**, that's great! This is an overwhelmingly ambitious project, and we welcome any and all help we can get.
|
|
|
|
|
|
{{{
|
|
**Our code lives in two places: **
|
|
|
|
We use our [Tor Project organization account on Github](https://github.com/TheTorProject/ooni-probe) for **active development** (_yes, Richard Stallman, we know it isn't FLOSS, but the web interface and code commenting system on Github, such as the feature for commenting on a single line of code, has saved our development team much hassle and many an argument..._). **To get our code** you'll want to use [this repo](https://github.com/TheTorProject/ooni-probe.git), and you can clone it with:
|
|
|
|
|
|
|
|
```
|
|
git clone https://github.com/TheTorProject/ooni-probe.git
|
|
git clone https://github.com/TheTorProject/ooni-probe.git
|
|
}}}
|
|
```
|
|
|
|
|
|
We also have a '''copy of our master branch''' and tagged releases on [https://gitweb.torproject.org/ooni-probe.git the Tor Project's gitweb server]. Our developers also have personal repositories there, although in general lately we've been moving towards Github.
|
|
We also have a **copy of our master branch** and tagged releases on [the Tor Project's gitweb server](https://gitweb.torproject.org/ooni-probe.git). Our developers also have personal repositories there, although in general lately we've been moving towards Github.
|
|
|
|
|
|
If you're looking to hack on ooniprobe and oonib with us, or if you've got a patch or suggestion, please see the "Contributing to Development" section below.
|
|
If you're looking to hack on ooniprobe and oonib with us, or if you've got a patch or suggestion, please see the "Contributing to Development" section below.
|
|
|
|
|
|
Feel free to test it out, and please contact us with problems, confusions, bugs, and suggestions!
|
|
Feel free to test it out, and please contact us with problems, confusions, bugs, and suggestions!
|
|
|
|
|
|
== Documentation ==
|
|
## Documentation
|
|
'''Achtung! ''' The OONI [https://ooni.torproject.org/docs/ documentation has moved here].
|
|
**Achtung! ** The OONI [documentation has moved here](https://ooni.torproject.org/docs/).
|
|
|
|
|
|
== OONI Development & Project Management ==
|
|
## OONI Development & Project Management
|
|
=== Contact Us ===
|
|
### Contact Us
|
|
Most of '''our communication takes place on IRC'''. The primary OONI developers are members of the Tor Project, and they can be reached collectively in the '''#ooni channel on irc.oftc.net''', as well as many of the Tor channels on the OFTC network.
|
|
Most of **our communication takes place on IRC**. The primary OONI developers are members of the Tor Project, and they can be reached collectively in the **#ooni channel on irc.oftc.net**, as well as many of the Tor channels on the OFTC network.
|
|
|
|
|
|
The '''primary Tor developers currently contributing to OONI development''' are:
|
|
The **primary Tor developers currently contributing to OONI development** are:
|
|
* '''Arturo Filasto''' <art(at)torproject(dot)org>
|
|
* **Arturo Filasto** <art(at)torproject(dot)org>
|
|
* '''Isis Lovecruft''' <isis(at)torproject(dot)org>
|
|
* **Isis Lovecruft** <isis(at)torproject(dot)org>
|
|
* '''Aaron Gibson''' <aagbsn(at)torproject(dot)org>
|
|
* **Aaron Gibson** <aagbsn(at)torproject(dot)org>
|
|
* '''Jacob Appelbaum''' <jacob(at)torproject(dot)org>
|
|
* **Jacob Appelbaum** <jacob(at)torproject(dot)org>
|
|
* '''George Kadianakis''' <asn(at)torproject(dot)org>
|
|
* **George Kadianakis** <asn(at)torproject(dot)org>
|
|
|
|
|
|
==== Connecting on IRC ====
|
|
#### Connecting on IRC
|
|
If you don't have or want an IRC client, we've already got a
|
|
If you don't have or want an IRC client, we've already got a
|
|
[https://widget00.mibbit.com/?settings=2309db4125d1cd53e3c1dffc6361c6bd&server=irc.oftc.net&channel=%23ooni web proxy to the #ooni channel set up here].
|
|
[web proxy to the #ooni channel set up here](https://widget00.mibbit.com/?settings=2309db4125d1cd53e3c1dffc6361c6bd&server=irc.oftc.net&channel=%23ooni).
|
|
|
|
|
|
Though, the best way to connect is point your IRC client, such as [http://www.irssi.org/ irssi] at [https://www.oftc.net the OFTC network]. There are [https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy instructions here] for creating a new user account and routing all traffic though Tor, which is a commonly used way to ensure that various IRC clients do not leak information (such as DNS requests) though a non-Tor-ified channel.
|
|
Though, the best way to connect is point your IRC client, such as [irssi](http://www.irssi.org/) at [the OFTC network](https://www.oftc.net). There are [instructions here](https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy) for creating a new user account and routing all traffic though Tor, which is a commonly used way to ensure that various IRC clients do not leak information (such as DNS requests) though a non-Tor-ified channel.
|
|
|
|
|
|
The OFTC network has SSL/TLS: ircs://irc.oftc.net:6697
|
|
The OFTC network has SSL/TLS: ircs://irc.oftc.net:6697
|
|
As well as an onion address: 37lnq2veifl4kar7.onion:6697
|
|
As well as an onion address: 37lnq2veifl4kar7.onion:6697
|
|
|
|
|
|
=== Reporting Bugs ===
|
|
### Reporting Bugs
|
|
We use this Trac for our bug reports and feature requests. [https://trac.torproject.org/projects/tor/newticket?type=defect&component=Ooni&keywords=ooni,%20bugreport&cc=hellais,%20ioerror,%20aagbsn,%20isis Click here to submit a bug report]. Please fill out the '''Summary''' and '''Description''' fields, and leave the rest of the fields alone (lost tickets are such a pain!). Or, [https://trac.torproject.org/projects/tor/wiki/org/sponsors/SponsorH click here for a summary of all tickets currently associated with OONI].
|
|
We use this Trac for our bug reports and feature requests. [Click here to submit a bug report](https://trac.torproject.org/projects/tor/newticket?type=defect&component=Ooni&keywords=ooni,%20bugreport&cc=hellais,%20ioerror,%20aagbsn,%20isis). Please fill out the **Summary** and **Description** fields, and leave the rest of the fields alone (lost tickets are such a pain!). Or, [click here for a summary of all tickets currently associated with OONI](https://trac.torproject.org/projects/tor/wiki/org/sponsors/SponsorH).
|
|
|
|
|
|
We use the [https://github.com/TheTorProject/ooni-probe/issues Issues section of our Github page] '''for coordinating and commenting on pull requests and patches'''. We'd '''prefer that you use the above link to create a Trac ticket''' to report bugs, '''unless you've forked our code''' and are submitting a pull request.
|
|
We use the [Issues section of our Github page](https://github.com/TheTorProject/ooni-probe/issues) **for coordinating and commenting on pull requests and patches**. We'd **prefer that you use the above link to create a Trac ticket** to report bugs, **unless you've forked our code** and are submitting a pull request.
|
|
|
|
|
|
== OONI Infrastructure ==
|
|
## OONI Infrastructure
|
|
|
|
|
|
|| '''Hostname''' || '''IP''' || '''Maintainers''' || '''Roles''' || '''Test Helpers''' || '''collector address''' || '''bouncer address''' ||
|
|
| **Hostname** | **IP** | **Maintainers** | **Roles** | **Test Helpers** | **collector address** | **bouncer address** |
|
|
||
|
|
|--------------|--------|-----------------|-----------|------------------|-----------------------|---------------------|
|
|
|| vps770.greenhost.nl || 213.108.108.100 || hellais, anadahz || Backend Collector, Canonical Backend Bouncer (soon deprecated), Reports mirror, Pipeline (soon deprecated) || N/A || nkvphnp3p6agi5qq.onion || ||
|
|
|
|
|
|| ooni-1.default.orgtech.uk0.bigv.io || 213.138.109.232 || hellais, anadahz || Backend Collector, Backend Bouncer, Reports mirror || N/A || || ||
|
|
| vps770.greenhost.nl | 213.108.108.100 | hellais, anadahz | Backend Collector, Canonical Backend Bouncer (soon deprecated), Reports mirror, Pipeline (soon deprecated) | N/A | nkvphnp3p6agi5qq.onion | |
|
|
|| ooni-test || 62.217.125.6 || hellais, anadahz || Backend Collector (WIP), Canonical Backend Bouncer (WIP), Canonical Reports mirror (WIP) || N/A || || ||
|
|
| ooni-1.default.orgtech.uk0.bigv.io | 213.138.109.232 | hellais, anadahz | Backend Collector, Backend Bouncer, Reports mirror | N/A | | |
|
|
|| ooni-pipeline || XXX || hellais || Reports mirror, Pipeline || N/A || || ||
|
|
| ooni-test | 62.217.125.6 | hellais, anadahz | Backend Collector (WIP), Canonical Backend Bouncer (WIP), Canonical Reports mirror (WIP) | N/A | | |
|
|
|
|
| ooni-pipeline | XXX | hellais | Reports mirror, Pipeline | N/A | | |
|
|
|
|
|
|
== Contributing to Development ==
|
|
## Contributing to Development
|
|
If you'd like to hack with us, please [https://github.com/TheTorProject/ooni-probe/fork_select fork our code], follow our branching layout in the [wiki:doc/OONI/DevelopmentWorkflow Development Workflow documentation], and submit a pull request when you've done something nifty. Feel free to chat with us about ideas or problems.
|
|
If you'd like to hack with us, please [fork our code](https://github.com/TheTorProject/ooni-probe/fork_select), follow our branching layout in the [Development Workflow documentation](./doc/OONI/DevelopmentWorkflow), and submit a pull request when you've done something nifty. Feel free to chat with us about ideas or problems.
|
|
|
|
|
|
=== Related Projects ===
|
|
### Related Projects
|
|
[wiki:doc/OONI/CensorshipDetectionTools Our Research on other Censorship Detection Tools]
|
|
[Our Research on other Censorship Detection Tools](./doc/OONI/CensorshipDetectionTools)
|
|
|
|
|
|
There are a lot of projects out there that may in the future be integrated into OONI or there is some way for some shared work to be done:
|
|
There are a lot of projects out there that may in the future be integrated into OONI or there is some way for some shared work to be done:
|
|
|
|
|
|
* [http://www.neubot.org/ Neubot], the net neutrality bot
|
|
* [Neubot](http://www.neubot.org/), the net neutrality bot
|
|
* [http://projectbismark.net/ BISmark], the Broadband Internet Service Benchmark
|
|
* [BISmark](http://projectbismark.net/), the Broadband Internet Service Benchmark
|
|
* [http://www.usenix.org/events/foci11/tech/final_files/Sfakianakis.pdf CensMon]: A Web Censorship Monitor
|
|
* [CensMon](http://www.usenix.org/events/foci11/tech/final_files/Sfakianakis.pdf): A Web Censorship Monitor
|
|
* [http://www.cs.unm.edu/~crandall/concept_doppler_ccs07.pdf ConceptDoppler]: A Weather Tracker for Internet Censorship
|
|
* [ConceptDoppler](http://www.cs.unm.edu/~crandall/concept_doppler_ccs07.pdf): A Weather Tracker for Internet Censorship
|
|
* [http://www.techmeology.co.uk/hyperion/ Hyperion]: detecting network anomalies as an unprivileged user
|
|
* [Hyperion](http://www.techmeology.co.uk/hyperion/): detecting network anomalies as an unprivileged user
|
|
|
|
|
|
=== Links to old documentation, wiki pages, and development notes ===
|
|
### Links to old documentation, wiki pages, and development notes
|
|
Please note that the documentation in these pages may be outdated and is not to be relied upon, but is being made available as an archival history of our progress.
|
|
Please note that the documentation in these pages may be outdated and is not to be relied upon, but is being made available as an archival history of our progress.
|
|
|
|
|
|
[wiki:doc/OONI/SetupHowto ooniprobe and oonib Setup & HowTo's]
|
|
[ooniprobe and oonib Setup & HowTo's](./doc/OONI/SetupHowto)
|
|
|
|
|
|
[wiki:doc/OONI/ThreatModel OONI's Threat Model]
|
|
[OONI's Threat Model](./doc/OONI/ThreatModel)
|
|
|
|
|
|
[wiki:doc/OONI/TestWritingMethodology Ooniprobe Test Writing Methodology]
|
|
[Ooniprobe Test Writing Methodology](./doc/OONI/TestWritingMethodology)
|
|
|
|
|
|
[wiki:doc/OONI/Architecture OONI Architecture]
|
|
[OONI Architecture](./doc/OONI/Architecture)
|
|
|
|
|
|
[wiki:doc/OONI/Backend OONI Backend]
|
|
[OONI Backend](./doc/OONI/Backend)
|
|
|
|
|
|
[wiki:doc/OONI/Tests Current Test Specifications]
|
|
[Current Test Specifications](./doc/OONI/Tests)
|
|
|
|
|
|
[wiki:doc/OONI/DataCollection OONI Data Collection Structure]
|
|
[OONI Data Collection Structure](./doc/OONI/DataCollection)
|
|
|
|
|
|
[wiki:doc/OONI/android Android builds and development]
|
|
[Android builds and development](./doc/OONI/android)
|
|
|
|
|