Linux下生成能用的SSL证书的步骤
1个回答
展开全部
我们首先要设置 openssl 的全局配置文件
在debian下他的配置文件在 /usr/lib/ssl/openssl.cnf
需要修改的内容:
具体怎么改可以自己决定
在CA目录下创建两个初始文件:
为了安全起见,修改cakey.pem私钥文件权限为600或400,也可以使用子shell生成( umask 077; openssl genrsa -out private/cakey.pem 2048 ),下面不再重复。
使用req命令生成自签证书:
然后会有提示,之后再出现也是这样填,不再重复
以上都是在CA服务器上做的操作,而且只需进行一次,现在转到nginx服务器上执行:
这里测试的时候CA中心与要申请证书的服务器是同一个。
另外在极少数情况下,上面的命令生成的证书不能识别,试试下面的命令:
上面签发过程其实默认使用了-cert cacert.pem -keyfile cakey.pem,这两个文件就是前两步生成的位于/etc/pki/CA下的根密钥和根证书。将生成的crt证书发回nginx服务器使用。
到此我们已经拥有了建立ssl安全连接所需要的所有文件,并且服务器的crt和key都位于配置的目录下,剩下的是如何使用证书的问题。
因为这是个人生成的证书,浏览器第一次可能会报错,只要添加信任之后就可以正常使用了!
在debian下他的配置文件在 /usr/lib/ssl/openssl.cnf
需要修改的内容:
具体怎么改可以自己决定
在CA目录下创建两个初始文件:
为了安全起见,修改cakey.pem私钥文件权限为600或400,也可以使用子shell生成( umask 077; openssl genrsa -out private/cakey.pem 2048 ),下面不再重复。
使用req命令生成自签证书:
然后会有提示,之后再出现也是这样填,不再重复
以上都是在CA服务器上做的操作,而且只需进行一次,现在转到nginx服务器上执行:
这里测试的时候CA中心与要申请证书的服务器是同一个。
另外在极少数情况下,上面的命令生成的证书不能识别,试试下面的命令:
上面签发过程其实默认使用了-cert cacert.pem -keyfile cakey.pem,这两个文件就是前两步生成的位于/etc/pki/CA下的根密钥和根证书。将生成的crt证书发回nginx服务器使用。
到此我们已经拥有了建立ssl安全连接所需要的所有文件,并且服务器的crt和key都位于配置的目录下,剩下的是如何使用证书的问题。
因为这是个人生成的证书,浏览器第一次可能会报错,只要添加信任之后就可以正常使用了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询