|
|
# Oniongroove Specs Meeting - 2022-04-06
|
|
|
|
|
|
## Agenda
|
|
|
|
|
|
* [Ticket](https://gitlab.torproject.org/tpo/onion-services/onion-support/-/issues/40)
|
|
|
* [Merge request](https://gitlab.torproject.org/tpo/onion-services/oniongroove/-/merge_requests/1)
|
|
|
|
|
|
## Participants
|
|
|
|
|
|
* gus
|
|
|
* irl
|
|
|
* raya
|
|
|
* hiro
|
|
|
* anarcat
|
|
|
* rhatto
|
|
|
|
|
|
## Presentation
|
|
|
|
|
|
* Overview of [the current 0.0.1
|
|
|
specification](https://gitlab.torproject.org/tpo/onion-services/oniongroove/-/blob/feature/specs/docs/specs.md),
|
|
|
focusing on the general.
|
|
|
|
|
|
## Suggestions
|
|
|
|
|
|
* Goal: .onion should be the normal cause and not an special case.
|
|
|
|
|
|
* Vantage point: there's already a solution that can be deployed right now
|
|
|
(EOTK), giving time to build Oniongroove.
|
|
|
|
|
|
* Features:
|
|
|
* HTTP rewriting proxy functionality is a MUST:
|
|
|
Be more explicit at the specs about the rewrite.
|
|
|
Could be implemented using mod_lua.
|
|
|
Timeline: this needs to get deployed ASAP for Sponsor 123.
|
|
|
* Proposal is to go for a command line tool and/or API?
|
|
|
Can be both: a python library with presents itself as API and CLI.
|
|
|
|
|
|
* Implementation:
|
|
|
* Look at the Terraform modules for bridges:
|
|
|
* Custom provider (Terraform providers).
|
|
|
* They all use the same metadata.
|
|
|
* Everything is runing in a generic way, code could be reused/adapted.
|
|
|
* SR2 [Terraform Registry](https://registry.terraform.io/modules/sr2c/tor-bridge) providers:
|
|
|
* [sr2c/tor/cloudinit | Terraform Registry](https://registry.terraform.io/modules/sr2c/tor/cloudinit/latest)
|
|
|
* [sr2c/torrc/null | Terraform Registry](https://registry.terraform.io/modules/sr2c/torrc/null/latest)
|
|
|
* [sr2c/contactinfo/null | Terraform Registry](https://registry.terraform.io/modules/sr2c/contactinfo/null/latest)
|
|
|
|
|
|
* Modularization:
|
|
|
* Suggestion to start doing simple usable modules:
|
|
|
* key generation (like with terraform): that's what's remaining to "make me
|
|
|
an .onion service" button.
|
|
|
* Then replace the modules as we go: in the end there's a complete new tool.
|
|
|
|
|
|
* Current setups:
|
|
|
* Bypass censorship database:
|
|
|
* Relational database containing what one would like to exist, e.g.: 6 bridges using MOAT.
|
|
|
* Right now deployment is done via Terraform.
|
|
|
|
|
|
* In the future:
|
|
|
* Module using Terraform CDK ([CDKTF](https://www.terraform.io/cdktf)):
|
|
|
python modules/idiomatic python.
|
|
|
* Support use cases like "deploy a blog with an additional .onion service".
|
|
|
* Support for Cloudfront / Cloudflare and other providers.
|
|
|
|
|
|
## Next steps
|
|
|
|
|
|
* Integrate suggestions into the specs documentation (version 0.0.2):
|
|
|
https://gitlab.torproject.org/tpo/onion-services/onion-support/-/issues/40
|
|
|
|
|
|
* Approve the merge request:
|
|
|
https://gitlab.torproject.org/tpo/onion-services/oniongroove/-/merge_requests/1
|
|
|
|
|
|
* Roadmap discussion in the next S123 Bi-Weekly meeting (meeting agenda was
|
|
|
updated accordingly). |