OpenSSL 自签名
参考文档:unigui开发人员工作手册2021
参考文章:保姆级OpenSSL下载及安装教程-CSDN博客
下载
Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions
进入后向下拉找到下载位置,建议下载二进制版本的精简版,注意几个版本的区别
默认版本:适合开发者使用
light版本:适合用户使用
arm版本:适合arm处理器上使用
可能会提示可能造成计算机损坏,无视,继续下载
安装
安装
双击执行,忽略安全警告直接运行
同意,下一步
之后步骤全部默认,直接傻瓜式安装
全部取消勾选,完成finish
配置环境变量
文件夹中进入到下载路径的bin文件夹中,将路径复制
win+R,在出现窗口执行命令sysdm.cpl
sysdm.cpl
高级 -> 环境变量,双击path -> 新建 -> 将复制的路径粘贴进去 -> 一路点击确定,直到环境变量界面关闭
验证
在文件的安装路径中,输入cmd到命令提示符下
输入指令:openssl version
openssl version
如图所示,成功!
生成一个自签名的根证书
创建一个自签名的根证书
执行完后的命令提示符下,继续执行命令
注意!!!一定要在文件路径bin的pem中唤醒cmd!!!!!!!否则root.pem和root.key文件都会存到c盘中!!!!!!!
openssl genrsa -out root.key 1024
这将创建一个强度为 1024 位的新 root.key 文件,通常,1024 位就足够了
对根证书进行自签名
继续输入命令,其中365是证书有效天数
openssl req -x509 -days 365 -new -nodes -key root.key -out root.pem
结果将提示您提供签署证书所需的一些详细信息,直接一路enter,直到出现新的命令行
这将在当前文件夹中放置一个新的 root.pem 文件。该文件将在您的 uniGUI 服务器中使用。
生成一个自签名的密钥
该步骤将生成key.pem 和 cert.pem 文件
命令提示符下,执行命令
openssl req -x509 -days 365 -nodes -newkey rsa:1024 -keyout key.pem -out cert.pem
完成上述所有过程后,最终将得到三个名为root.pem,key.pem和cert.pem的文件,这三个文件是在SSL模式下设置和运行项目所必需的。这些文件必须与服务器可执行二进制文件放在同一文件夹中。
SSL参数配置
将...\bin\PEM中的cert.pem root.pem和key.pem都复制到文件路径\Win32\Debug中
我之前执行命令提示符的时候直接就是默认路径,结果这三个文件全都下载到c盘里去了,我死也找不到,死也找不到啊/(ㄒoㄒ)/~~
还需要OpenSSL标准DLL库文件。libeay32.dll,ssleay32.dll在unigui下载文件夹Framework\uniGUI\SSL\dll\x86中,D:\GouGu\DownLoad\UniGUI\9225e-main\Framework\uniGUI\SSL\dll\x86,将它们复制在与uniGUI服务器相同的文件夹中,即复制到运行某个程序的文件夹中的\Win32\Debug文件夹中。
打开一个已经创建好了的web项目,如何创建一个web项目参考文章:Delphi 12 UniGUI 控件资源下载-CSDN博客
在项目右侧的项目管理器中找到ServerModule,并打开
在左侧对象监视器中修改属性,按照图中红色框起的部分进行修改。
其中port默认端口是8077,也可以自己修改,如果出于某种原因需要在同一站点同 时使用 http 和 https 协议,则可以通过为每个协议分配不同的端口来启用它们
ServerModule->SSL->SSLPort = 443
ServerModule->Port = 8077
在上述配置中,您可以从端口 8077 访问标准的 HTTP 协议,并可以通过端口 443 访问 https 协议。
测试
执行程序,但是不打开
去浏览器中访问本地网址https://127.0.0.1(127.0.0.1是本地网址),提示不安全,忽略不安全提示