Skip to content

Onionspray "create" command for quick setup

Description

Onionspray lacks a command for quickly creating an onionsite with usual defaults.

This depends on the vanity address generation being implemented, and that Onionmine is available as a vendorized dependency.

Syntax and usage example usage:

./onionspray create <project> <domain> [vanity]
./onionspray create example example.org example

This creates a new a project called example, with an onionsite proxy to example.org using a generated address like examplehrgu32msadjtfcko3lckz44ae2m6ymzldg5kxfgdbawmwqxid.onion.

Tasks

  • Make a template for this command.
  • Implement a create command, like ./onionspray create <project> <domain> [vanity] that:
    • Create the project from the template.
    • Create the vanity address (if passed as an argument).
    • Create a TLS private key and self-signed certificate.
    • Create a Certificate Request (CSR) with the generated TLS, ready for the case of getting a CA-validated HTTPS certificate. Then, if the Operator decides to purchase a certificate, only the resulting cert PEM bundle needs to be installed, everything else being set.
  • Update the documentation:

Time estimation

  • Complexity: small (1 day)
  • Uncertainty: low (x1.1)
  • Reference (adapted)

cc: @gus

Edited by Silvio Rhatto