首页 > 数据治理 > 数据治理 > 如何使用Docker生成SSL证书
使用Docker生成SSL证书(anxinssl.com)大多数开发人员并没有想这么做过。但是这么做很简洁也很方便。你可能会问为什么会想用Docker容器来为主机生成SSL证书呢。为什么不能在主机上完成呢?
是的,可以在主机上完成。但是你必须已经在主机上安装了正确的工具(比如OpenSSL)。并且如果你想让Docker服务器尽可能简洁的话,你很可能不想安装类似OpenSSl这样的工具。另外,你可能并不是使用的生产环境Docker服务器,而是使用的Docker测试环境。如果你和我一样,那么这个测试环境实际上就是你的个人笔记本,很可能没有安装OpenSSL或者其他服务器工具。
不在主机上生成证书,而是使用Docker容器生成SSL证书,这对我来说很好。也很简单,按照如下步骤即可。
首先,使用Docker Hub Nginx镜像拉取一个支持SSL证书创建的容器镜像。该镜像已经内建安装了OpenSSL。
示例令:
docker pull nginx
接下来,需要创建私钥和证书签署请求:
docker run -v $PWD:/work -it nginx openssl req -out /work/CSR.csr -new
-newkey rsa:2048 -nodes -keyout /work/privateKey.key
现在可以看到主机上的working目录包含文件privateKey.key和CSR.csr。如果想要使用它们创建自签名的证书,运行如下命令:
docker run -v $PWD:/work -it nginx openssl req -x509 -sha256 -nodes
-days 365 -newkey rsa:2048 -keyout privateKey.key -out
/work/certificate.crt
现在主机的working目录已经有了签名的证书, certificate.crt。好了,我们已经使用OpenSSL创建出了SSL证书,而实际上并没有在主机系统上运行OpenSSL。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69933154/viewspace-2932287/ ,如需转载,请注明出处,否则将追究法律责任。