Community
Community copied to clipboard
PROJECT: Backup Tor Server
- [ ] Learn how to backup Tor server keys
- [ ] Make it easy to restore them
Lead: @nochiel
Tor services/servers make use of ephemeral and persistent keys. For BlockckainCommons TorGap architecture, we are interested in keys used for identity/authentication.
Client authorization is a feature added with Tor v3. It uses public-key cryptography: a public key is stored on the server offering the hidden service, then a client connects with the corresponding private key. In order for the client to access the service, the keys must match.*
BlockckainCommons runs Tor infrastructure that require key management:
- Hidden services.
- Tor exit nodes.
There are 2 options for managing and backing up secrets/keys:
- A vault server e.g. HashiCorp's Vault
- A hosting service's secret management service e.g. Linode's Object Storage or AWS Secret Manager
In both cases, we would:
- Add secrets to the vault.
- Add access controls for each key.
- Create client access keys for each application that will programmatically use the vault.
Restoring keys when standing-up a hidden service or exit node is then a matter of securely accessing the vault using the Vault's API or cli-tool.
Key rotation and backup can also be similarly automated.