我使用这些命令创建了一个自签名证书
sudo keytool -genkeypair -alias <MyAlias> -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore <MyCert>.p12 -validity 3650
sudo keytool -genkeypair -alias <MyAlias> -keyalg RSA -keysize 2048 -keystore <MyCert>.jks -validity 3650
sudo keytool -importkeystore -srckeystore <MyCert>.jks -destkeystore <MyCert>.p12 -deststoretype pkcs12
它创建了一个P12文件和一个jks文件。 如果我远程登录到我的服务器,则会阻止连接,并显示一条错误,指示您的连接不是私有的,因为证书不受信任。 我该如何解决这个问题? 也许我应该将证书链接到另一个证书? (例如:使用Let的加密)?
您可以创建证书颁发机构证书,然后使用您自己的CA签署证书,然后将您的CA添加到系统密钥链。
更多关于https://gist.github.com/Soarez/9688998的信息
...但是,使用Let的加密客户端可能要容易得多。
我是作者,所以你可以把我的意见搞砸了,但Greenlock是最简单的Let's Encrypt / ACME工具套件。
如果您使用DNS质询,您也可以轻松获得具有内部IP地址的私有域的证书。
如果你想要它自动你可以使用像Greenlock CLI或Greenlock Express (for node.js)
还有certbot,但由于它的大小,各种依赖性和RAM使用,它可能更难安装。 Greenlock只有大约100kb并且没有外部依赖性,因此它在家庭服务器和内存受限的IoT设备上工作正常(这正是我第一次编写时遇到的问题)。