最近项目在做安全扫描时,出现这样一个问题,经查是采用https访问,且是自己生成的证书过期了,之前做证书的同事离职了,所以自己记录一下生成证书的过程。
目的是为了过这个扫描,所以采用自己生成证书。我是windows环境下生成的
第一步:下载openssl,下载的链接:http://slproweb.com/products/Win32OpenSSL.html
我下载的是64位的:Win64OpenSSL_Light-1_1.exe,exe安装大家都会,直接下一步,安装完了之后会什么多少钱一次跳转支付界面,直接关掉即可。
安装完成后,进入安装的路劲,bin目录:例:
使用cmd打开该路劲:
第二步:开始生成crt文件和key文件
1、执行如下命令生成一个key
openssl genrsa -des3 -out test.key 1024
执行完之后会输入2次密码,强制性的输入,如果需要不加密的key文件的话,可以生成了之后替换掉test.key
1.1备份test.key,生成不加密的key文件
openssl rsa -in test.key -out test2.key
test.key就是带密码的,test2.key就是不带密码的,从第二步开始你就选择带不带密码吧。
2、根据key文件生成证书请求文件(我这里选的是加密的)
openssl req -new -key test.key -out test.csr
执行后会输入很多内容
需要依次输入国家,地区,组织,email。
此处有一个点需要注意:
如果为了https申请,这个必须和域名吻合,否则会引发浏览器警报。在输入common name时:必须要输入你https的路径(https://**.**.**.**);
3、根据1 2的文件生成crt证书文件
openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey test.key -in centnet.csr -out test.crt
执行了3步之后,就在bin目录先生成了3个文件,我这边是用了Nginx,只需要.key和.crt。
我在Nginx配置的话可以截个图
https的server
其他的配置网上百度应该是一大把;
配置好了之后项目再进行Acunetix扫描,这个高位漏洞就没有了。仅仅记录一下。