提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在研究nginx国密ssl的时候发现了两个
- GmSSL是由北京大学自主开发的国产商用密码开源库,实现了对国密算法、标准和安全通信协议的全面功能覆盖,支持包括移动端在内的主流操作系统和处理器,支持密码钥匙、密码卡等典型国产密码硬件,提供功能丰富的命令行工具及多种编译语言编程接口。
- GMSSL是一个提供国密SSL相关软件/工具/服务的网站,网站简称国密SSL实验室。
GMSSL可用于学习、研究、测试和教育,该情况下本网站软件/工具/服务永久免费。 GMSSL欢迎各种建议、意见、交流和合作。
GMSSL是国密SSL实验室的注册商标。
这两个方式我都试验过了第一种一路坎坷,问题最多,结果卡在了一个错误上我看github上有issue跟我一样的问题但是没有整明白,果断放弃了采用第二种方案了我把两种方案的安装过程都发出来提供参考
但是第二种方案有限制不建议线上使用官方说的
限制
- 免费版本每年年底失效,程序会自动退出,需更新库,重新链接。请勿用于正式/生产环境,后果自负。
- 需要正式版本请与我们联系。
官网给的方案都很详细了按照说明操作就行,我记录下我的过程
一、国密SSL实验室
1.openssl国密版(x64/linux)
2.安装 gmssl_openssl依赖
gmssl_openssl_b2025.0331_x64.tar.gz
上传到任意位置解压到/usr/local/就行
[root@localhost gmssl_openssl]# tar -zxvf gmssl_openssl_b2025.0331_x64.tar.gz
[root@localhost gmssl_openssl]# ls
gmssl gmssl_openssl_b2025.0331_x64.tar.gz
[root@localhost gmssl_openssl]# cp -R gmssl /usr/local/
[root@localhost local]# ls
bin etc games gmssl include lib lib64 libexec sbin share src
[root@localhost local]# pwd
/usr/local
[root@localhost local]#
3.安装 nginx(1.24.0)
进入目录 cd /opt/nginx
编辑auto/lib/openssl/conf,将全部 O P E N S S L / . o p e n s s l / 修改为 OPENSSL/.openssl/修改为 OPENSSL/.openssl/修改为OPENSSL/并保存
[root@localhost nginx]# ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE man README src
[root@localhost nginx]# cd auto/
[root@localhost auto]# ls
cc define endianness feature have have_headers headers include init install lib make module modules nohave options os sources stubs summary threads types unix
[root@localhost auto]# cd lib/
[root@localhost lib]# ls
conf geoip google-perftools libatomic libgd libxslt make openssl pcre perl zlib
[root@localhost lib]# cd openssl/
[root@localhost openssl]# ls
conf make makefile.bcc makefile.msvc
[root@localhost openssl]# vim conf
在文件39行
编译配置
./configure \
--without-http_gzip_module \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_v2_module \
--with-stream \
--with-file-aio \
--with-openssl="/usr/local/gmssl"