How to get CSR for SSL cert?

I need a Certificate Signing request (CSR) in order to get my manual SSL certificate, and I’m not sure how to get one for my z2jh setup. Can anyone help please?

Background:
Since the letsencrypt solution for SSL is not available currently (https://github.com/jupyterhub/zero-to-jupyterhub-k8s/issues/1448), I’d like to grab my own cert and use it according to Set up manual https. I a n00b at this, but I found gogetssl.com and bought one for $5. Next step is to generate is but I have to provide a CSR.

The instructions for using cert-manager are in progress, bit I think they work:

If you want to stick with the manual process have a look at https://www.digitalocean.com/community/tutorials/openssl-essentials-working-with-ssl-certificates-private-keys-and-csrs

Here is a simple script I use with OpenSSL. You will need to update the req_distinguished_name section and fix domain.net to match your real host/domain names.

cat > csr_details.txt <<-EOF
[req]
default_bits = 4096
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = req_distinguished_name

[req_distinguished_name]
C=US
ST=YourState
L=YourCity
O=YourOrg
OU=YourOrgUnit
emailAddress=help@domain.net
CN = www.domain.net

[ req_ext ]
subjectAltName = @alt_names
keyUsage = keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names


[ alt_names ]
DNS.1 = www.domain.net
DNS.2 = jh.domain.net
EOF

openssl req -new -sha256 -nodes -out www.domain.net.csr -newkey rsa:4096 -keyout www.domain.net.key -config csr_details.txt
rm -f csr_details.txt

@manics Thanks, but the cert-manager instructions are not working. That rather old PR is calling for changes to more than just the instructions, so maybe I would need to do more than what the new instructions say (Advanced Topics/Inggress and Automatic HTTPS with cert-manager & Let’s Encrypt).