-- Leo's gemini proxy

-- Connecting to astrobotany.mozz.us:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

Astrobotany Registration Guide


Overview


Astrobotany uses TLS client certificates for user authentication.


Creating an account is only a few simple steps, and does not require providing an email address or any other personal information. The entire process can be done from the command line and should take under 5 minutes to complete.


An overview of the sign-up flow looks like this:


1. You create a certificate signing request (CSR) locally.

2. You send your CSR to the server, and the server returns a signed client certificate.

3. You use the signed client certificate to make requests to the server.


These instructions assume that you have access to a unix-like shell and the openssl program. Instructions for Windows are forthcoming.


Step 1: Generate a CSR


# Generate a new private key
openssl genrsa -out astrobotany.key 4096

# Generate a certificate request
openssl req -new -key astrobotany.key -out astrobotany.req

OpenSSL will prompt you to enter information about your certificate. You can leave everything blank *except* for this:


Common Name (eg, fully qualified host name) []:

The Common Name will be your username inside of astrobotany. Pick something short and identifiable.


Step 2: Submit your CSR


Next, send an HTTP POST request containing your CSR to the following URL:


curl https://astrobotany.mozz.us/register -X POST -F req=@astrobotany.req > astrobotany.crt

At this point, the files that you need to keep are:


astrobotany.crt (your client certificate)

astrobotany.key (your private key)


Step 3: Login


Now that you have a certificate, all you need to do is include it with your gemini requests.


Client certificates are not widely supported by gemini clients (yet). Here's an example of how to do it in AV-98:


av98 --tls-cert astrobotany.crt --tls-key astrobotany.key gemini://astrobotany.mozz.us/

Now go spread some seeds!

-- Response ended

-- Page fetched on Sat May 18 22:49:25 2024