remove certmagic; gemini's TOFU model doesn't benefit from short-lived certs

This commit is contained in:
2020-09-14 16:38:45 -04:00
parent e73ebd7fac
commit 187e002913
4 changed files with 14 additions and 503 deletions

25
main.go
View File

@@ -14,8 +14,6 @@ import (
"net/url"
"os"
"path/filepath"
"github.com/caddyserver/certmagic"
)
var responseCodes = map[string]int{
@@ -218,30 +216,25 @@ func handleConnection(log Logger, conn net.Conn, h geminiHandler) {
}
func main() {
log := NewLogger(&log.Logger{}, true)
log := NewLogger(true)
err := mime.AddExtensionType(".gemini", "text/gemini")
if err != nil {
log.Info("Could not add text/gemini to mime-type database;", err)
}
magic := certmagic.NewDefault()
myACME := certmagic.NewACMEManager(magic, certmagic.DefaultACME)
err = magic.CacheUnmanagedCertificatePEMFile("./cert.pem", "./key.pem", []string{})
cer, err := tls.LoadX509KeyPair("./cert.pem", "./key.pem")
if err != nil {
log.Info(err)
log.Info("", err)
return
}
go func() {
err := http.ListenAndServe(":80", myACME.HTTPChallengeHandler(&genericHTTPHandler{}))
if err != nil {
log.Info(err)
}
}()
tlsc := tls.Config{
Certificates: []tls.Certificate{cer},
MinVersion: tls.VersionTLS12,
}
listener, err := tls.Listen("tcp", "localhost:1965", magic.TLSConfig())
listener, err := tls.Listen("tcp", "localhost:1965", &tlsc)
if err != nil {
log.Info(err)
return