A working setup with tlssrv(8) and acmed(8) is documented here: • https://9lab.org/plan9/web-server-with-go-based-static-site-generator-hugo/#https-port-443
A comparison of those steps with your steps below might reveal the issue. Quoth Iban Nieto <iban.ni...@gmail.com>: > Hello! > > I'm trying to serve https (443) and gemini (1965) under 9front. > > I've already a working rc-httpd (80) setup and now I would like to start > using letsencrypt certificates. > Also rc-gemd (gemini server) needs a certificate in order to work. > > I manage to get the certificate with acmed using the following procedure: > > ramfs -p > cd /tmp > auth/rsagen -t 'service=acme role=sign hash=sha256 acct=i...@mydomain.com' > >i...@mydomain.com.key > auth/rsa2jwk i...@mydomain.com.key >/sys/lib/tls/acmed/i...@mydomain.com.pub > cat i...@mydomain.com.key >/mnt/factotum/ctl > auth/rsagen -t 'service=tls role=client owner=*' >mydomain.com.key > chmod 600 i...@mydomain.com.key mydomain.com.key > cp i...@mydomain.com.key mydomain.com.key /sys/lib/tls/acmed/ > auth/rsa2csr 'CN=mydomain.com' /sys/lib/tls/acmed/mydomain.com.key > >/sys/lib/tls/acmed/mydomain.com.csr > > webfs > auth/acmed -t http -o /sys/www/mydomain.com/.well-known/acme-challenge > i...@mydomain.com /sys/lib/tls/acmed/mydomain.com.csr > >/sys/lib/tls/acmed/mydomain.com.crt > > I think acmed do the job because the certificate is generated and stored in > the proper location. > DNS is in place and working fine, the dir > /sys/www/mydomain.com/.well-known/acme-challenge is already in place as is > served by rc-httpd. > > This a (trimmed) decode of the certificate: > auth/pemdecode 'CERTIFICATE' /sys/lib/tls/acmed/mydomain.com.crt | > auth/x5092pub > key proto=rsa size=2048 ek=10001 > n=1E71BLABLABLABLABAE0CA13254122D600BLABLABLABD4D89D18EB7D7E0BLABLABLABLAC69 > subject=mydomain.com > > Then I try to serve https with: > aux/listen1 tcp!*!443 tlssrv -c /sys/lib/tls/acmed/mydomain.com.crt > /rc/bin/rc-httpd/rc-httpd > > And rc-gemd with: > aux/listen1 tcp!*!1965 tlssrv -c /sys/lib/tls/acmed/mydomain.com.crt > /rc/bin/rc-gemd/rc-gemd > > Problem is when I try to connect to https://mydomain.com I got this from the > server side: > tlssrv: tls reports failed: factotum_rsa_open: no key matches proto=rsa > service=tls role=client > > The same error occurs when I try to connect to gemini using a client: > tlssrv: tls reports failed: factotum_rsa_open: no key matches proto=rsa > service=tls role=client > > Trying to add the keys to factotum using this: > cat /sys/lib/tls/acmed/i...@mydomain.com.key >/mnt/factotum/ctl > cat /sys/lib/tls/acmed/mydomain.com.key >/mnt/factotum/ctl > > I'm still wondering if factotum is aware of these keys... anyway I checked if > the factotum process is running: > > cpu% pstree | grep -i factotum > 130 ├factotum > 408 │└factotum > 4986 ├factotum > 5119 │└factotum > 11793 │└grep -i factotum > > But I still got the same error from factotum when I try to use the > certificates using tlssrv :-( > > What I'm missing? How to debug the problem? > > Any help very appreciated :) > > Many thanks in advance. > > Iban. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Te82df98419e38504-M8e647fed602d71bb73a3cfb7 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription