Help us shape the future of Go! Take the 2026 Go Developer Survey

acmedns

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2018 License: BSD-3-Clause Imports: 4 Imported by: 0

README

acmedns implements ACME-based TLS certificate renewal (read: Let's Encrypt) via a standalone DNS server.

The acmedns/autocert package is modeled after golang.org/x/crypto/acme/autocert. It needs a DNS backend to work.

The acmedns/dns/dnsserver package implements an simple, authoritative DNS server.

autocert and dnsserver can be combined in a single Go program using the acmedns/dns/dnszone package, which implements an in-memory DNS zone database.

The aforementioned packages can also be combined with custom components, e.g. to implement certificate renewal via a remote DNS server (replacing direct dnszone usage with RPC calls) or via a cloud DNS service.

This repository includes a modified copy of acme/autocert. It is licensed under the same terms as all other code in this repository, but it's copyright is held by The Go Authors.

Documentation

Overview

Package acmedns provides ACME-based TLS certificate renewal via a standalone DNS server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AcquireAuthorization

func AcquireAuthorization(ctx context.Context, client *acme.Client, authz *acme.Authorization, dns DNS, zone string) (*acme.Authorization, error)

func FulfillChallenge

func FulfillChallenge(ctx context.Context, client *acme.Client, chal *acme.Challenge, dns DNS, zone string) error

func Verify

func Verify(ctx context.Context, client *acme.Client, dns DNS, serverName, zone string) (err error)

Types

type DNS

type DNS interface {
	ModifyTXTRecord(ctx context.Context, zone, node string, values []string, ttl uint32) error
}

DNS can create/update TXT records on name servers. It doesn't have to be instantaneous.

Directories

Path Synopsis
cmd
acmednsserver command
dns
internal
acme/autocert
Package autocert provides automatic access to certificates from Let's Encrypt and any other ACME-based CA.
Package autocert provides automatic access to certificates from Let's Encrypt and any other ACME-based CA.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL