This repository provides base libraries to implement an ACME-compliant (RFC 8555) server. It consists of 4 base nuget packages and one storage implementation. This is not a runnable product and it needs an implementation for certificate issuance (separately available).
If you are looking for a prebuild server, this list provides some runnable products for your needs:
Made for Entities running Active Directory Certificate Services (ACDS), wanting to issue certificates via ACME.
License: free for non-profit, proprietary for commercial use.
https://github.com/glatzert/ACME-Server-ACDS
The libraries are distributed via NuGet.org.
https://www.nuget.org/packages/TGIT.ACME.Server.Core
Contains nearly everything neccessary to run an acme server on asp.net core.
Reference this, if you want to provide your own deployable server, but do not want to implement API endpoints.
https://www.nuget.org/packages/TGIT.ACME.Protocol.Storage.FileStore Contains a storage provider based on files. Reference this, if you want to provide your own deployable server and do not want to implement the storage layer.
https://www.nuget.org/packages/TGIT.ACME.Protocol.Model
Contains model classes for internal use of the implementations as well as http-model classes for use with ACME servers.
https://www.nuget.org/packages/TGIT.ACME.Protocol.Abstractions
Contains interfaces uses by the core server and protocol implementations.
Reference this, if you want to create own storage or issuance providers.
https://www.nuget.org/packages/TGIT.ACME.Protocol
Contains a default implementation for all services (besides storage and issuance) defined in Protocol.Abstractions.
Reference this, if you want to create an own implementation of the http layer, but do not want to create the service implementations.
Yes. To make it a fully runnable server, you need to Implement ICertificateIssuer and register it in your source code.