Create self signed tls certificates without OpenSSL.
npm install -g mkcert
$ mkcert create-ca --help
Options:
--organization [value] organization name (default: "Test CA")
--country-code [value] country code (default: "US")
--state [value] state name (default: "California")
--locality [value] locality address (default: "San Francisco")
--validity [days] validity in days (default: 365)
--key [file] output key file (default: "ca.key")
--cert [file] output certificate file (default: "ca.crt")
-h, --help display help for command
$ mkcert create-cert --help
Options:
--ca-key [file] ca private key file (default: "ca.key")
--ca-cert [file] ca certificate file (default: "ca.crt")
--validity [days] validity in days (default: 365)
--key [file] output key file (default: "cert.key")
--cert [file] output certificate file (default: "cert.crt")
--organization [value] optional organization name
--email [value] optional email address
--domains, --domain [values...] domains or ip addresses (default: ["localhost","127.0.0.1"])
-h, --help display help for command
import{createCA,createCert}from"mkcert";constca=awaitcreateCA({organization: "Hello CA",countryCode: "NP",state: "Bagmati",locality: "Kathmandu",validity: 365});constcert=awaitcreateCert({ca: {key: ca.key,cert: ca.cert},domains: ["127.0.0.1","localhost"],validity: 365});console.log(cert.key,cert.cert);// certificate infoconsole.log(`${cert.cert}${ca.cert}`);// create full chain certificate by merging CA and domain certificates