All Projects → okayrunner → Spring Boot Starter Acme

okayrunner / Spring Boot Starter Acme

Licence: apache-2.0
Generate SSL certs easily for Spring Boot apps

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Spring Boot Starter Acme

Crypt Le
Crypt::LE - Let's Encrypt / Buypass / ACME client and library in Perl for obtaining free SSL certificates (inc. generating RSA/ECC keys and CSRs). HTTP/DNS verification is supported out of the box, easily extended with plugins, easily dockerized.
Stars: ✭ 277 (+233.73%)
Mutual labels:  ssl, acme
Trustme
#1 quality TLS certs while you wait, for the discerning tester
Stars: ✭ 355 (+327.71%)
Mutual labels:  ssl, ssl-certificate
Getaltname
Extract subdomains from SSL certificates in HTTPS sites.
Stars: ✭ 320 (+285.54%)
Mutual labels:  ssl, ssl-certificate
acme-1key
Acme.sh 域名证书一键申请脚本
Stars: ✭ 19 (-77.11%)
Mutual labels:  ssl, acme
Docker Letsencrypt Nginx Proxy Companion
Automated ACME SSL certificate generation for nginx-proxy
Stars: ✭ 6,350 (+7550.6%)
Mutual labels:  ssl, acme
ACMECert
PHP client library for Let's Encrypt (ACME v2 - RFC 8555)
Stars: ✭ 83 (+0%)
Mutual labels:  ssl, acme
Cas
Apereo CAS - Enterprise Single Sign On for all earthlings and beyond.
Stars: ✭ 9,154 (+10928.92%)
Mutual labels:  spring-boot, apache2
acmed
ACME (RFC 8555) client daemon
Stars: ✭ 121 (+45.78%)
Mutual labels:  acme, ssl-certificate
Acme client
Java ACME Client application
Stars: ✭ 77 (-7.23%)
Mutual labels:  ssl, acme
Pem
Create private keys and certificates with node.js
Stars: ✭ 496 (+497.59%)
Mutual labels:  ssl, ssl-certificate
freshcerts
ACME certificate protocol (Let's Encrypt) proxy client with a dashboard and monitoring
Stars: ✭ 59 (-28.92%)
Mutual labels:  ssl, acme
Greenlock
Automatic SSL renewal for NodeJS
Stars: ✭ 30 (-63.86%)
Mutual labels:  ssl, acme
docker-nginx-certbot
Automatically create and renew website certificates for free using the Let's Encrypt certificate authority.
Stars: ✭ 367 (+342.17%)
Mutual labels:  ssl, acme
acme-companion
Automated ACME SSL certificate generation for nginx-proxy
Stars: ✭ 6,434 (+7651.81%)
Mutual labels:  ssl, acme
ngxpkg
a cli tool for nginx
Stars: ✭ 22 (-73.49%)
Mutual labels:  acme, ssl-certificate
Acme Client
Let's Encrypt / ACME client written in PHP for the CLI.
Stars: ✭ 337 (+306.02%)
Mutual labels:  ssl, acme
wile
Stripped down letsencrypt (ACME) client
Stars: ✭ 15 (-81.93%)
Mutual labels:  ssl, acme
cie-cns-apache-docker
L'obiettivo di questo progetto è quello di fornire un template pronto all'uso che realizza un sistema di autenticazione tramite la Smart Card TS-CNS (o CNS) e la CIE (Carta d'Identità Elettronica) basato su Apache HTTP. Ognuno può poi modificare o specializzare questo progetto sulla base delle proprie esigenze Si tratta di un progetto docker per…
Stars: ✭ 48 (-42.17%)
Mutual labels:  ssl, apache2
Dnsrobocert
Orchestrate Certbot and Lexicon together to provide Let's Encrypt TLS certificates validated by DNS challenges
Stars: ✭ 420 (+406.02%)
Mutual labels:  ssl, ssl-certificate
Springboot Learning
🚕 spring boot学习案例,方便spring boot 初学者快速掌握相关知识
Stars: ✭ 724 (+772.29%)
Mutual labels:  spring-boot, ssl

Spring Boot Starter ACME

A Spring Boot module that is meant to ease the pain of generating a valid SSL Certificate using the Automatic Certificate Management Environment (ACME) protocol.

This project depends on the acme4j library.

Dependencies

This module depends on having openssl on the PATH to convert the certificate to PKCS12 format.

Maven

<dependency>
  <groupId>com.creactiviti</groupId>
  <artifactId>spring-boot-starter-acme</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</dependency>

<repositories>
   <repository>
      <id>maven-snapshots</id>
      <url>http://oss.sonatype.org/content/repositories/snapshots</url>
      <layout>default</layout>
      <releases>
         <enabled>false</enabled>
      </releases>
      <snapshots>
         <enabled>true</enabled>
      </snapshots>
   </repository>
</repositories>

Usage

  1. Add the module to your pom.xml file as a dependency.

  2. Build your project.

  3. Deploy it to a target machine and point your domain name to the IP address of that machine. LetsEncrypt validates your ownership of the domain by making a callback to the http://your-domain/.well-known/acme-challenge/{token} endpoint exposed by this module.

  4. Make sure that your server has openssl available on its $PATH.

  5. To activate spring-boot-starter-acme and generate a certificate execute:

sudo java -Dserver.port=80 -Dacme.enabled=true -Dacme.domain-name=<YOUR_DOMAIN_NAME> -Dacme.accept-terms-of-service=true -jar mysecureapp-0.0.1-SNAPSHOT.jar
  1. Check your console for a confirmation that the certificate was successfully generated.

  2. Stop your application and configure it to make use of the generated certificate:

server.port=443
server.ssl.key-store=keystore.p12
server.ssl.key-store-password=password
server.ssl.keyStoreType=PKCS12

Configuration

Name Description Type Default Value
acme.enabled Activate the spring-boot-starter-acme module boolean false
acme.accept-terms-of-service Accepts the CA's terms of service boolean false
acme.domain-name The domain name to register the SSL cert for string
acme.user-key-file The location of the user private key file string user.key
acme.domain-key-file The location of the domain private key file string domain.key
acme.domain-csr-file The location of the domain csr file string domain.csr
acme.domain-chain-file The location of the domain chain file string domain-chain.crt
acme.key-store-file The location of the keystore file string keystore.p12
acme.key-store-password The keystore password string password
acme.endpoint The acme endpoint to generate the cert with string acme://letsencrypt.org

Endpoints

CA Env URL
LetsEncrypt Staging acme://letsencrypt.org/staging
LetsEncrypt Prod acme://letsencrypt.org

License

Version 2.0 of the Apache License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].