国密SSL证书是指采用中国自主研发的密码算法标准(如SM2、SM3、SM4等)颁发的安全套接字层(SSL)证书。随着国家对信息安全的重视,国内很多企业和服务开始支持国密标准以增强数据传输的安全性。Nginx是一款广泛使用的高性能HTTP和反向代理服务器,支持多种加密协议包括国密SSL标准。本文将详细介绍如何在Nginx服务器上安装并部署国密SSL证书。
一、操作场景
1、Nginx 版本以 nginx/1.25.4 为例。
2、当前服务器的操作系统为 Kylin Advanced Server V10,由于操作系统的版本不同,详细操作步骤略有区别。
3、安装 SSL 证书前,请在 Nginx 服务器上开启 “443” 端口,避免证书安装后无法启用 HTTPS。
二、前提条件
1、已准备远程文件拷贝软件。
2、已准备远程登录工具,例如 PuTTY 或者 Xshell(建议从官方网站获取最新版本)。
3、已购买国密标准SSL 证书,并且已经上传到服务器中。
三、操作步骤
1、说明
为在Nginx服务器上安装国密标准SSL证书,首先需要确保Nginx服务器具备相关环境支持模块。接下来的内容将引导您如何编译配置支持国密标准SSL证书的Nginx服务器。
下述步骤中的目录皆是测试环境的目录,具体路径请根据实际环境与需求进行确定。
2、远程登录 Nginx 服务器。例如,使用 PuTTY 工具登录。
3、安装编译工具:如果系统是全新的,请先在服务器上安装 C++ 开发环境、pcre-devel、zlib-devel 软件为编译提供环境支持。可以使用如下命令进行安装。
#安装 C++ 开发环境:yum install -y gcc gcc-c++ #安装 pcre-devel:yum install pcre-devel -y #安装 zlib-devel:yum install zlib-devel -y
4、下载并编译安装 Nginx:可以通过在服务器上按以下顺序输入命令,下载 Nginx 国密版和国密模块至服务器并编译安装,由于操作系统的版本不同,详细操作步骤略有区别。
- Nginx演示版本:nginx-1.25.4;
- 操作目录为/opt,nginx安装目录为/usr/local/nginx。(可根据实际情况修改)
(1)编译支持国密openssl版本的nginx。上传nginx和ssl压缩包。
压缩包文件解压到/opt目录下。解压nginx压缩包nginx-1.25.2.tar.gz和解压openssl.zip。 openssl.zip见文档最下附件。
(2)修改配置文件。
cd /opt/nginx-1.25.2/auto/lib/openssl/
编辑conf文件,找到下面所示的四行代码:
CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include" CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
改为:
CORE_INCS="$CORE_INCS $OPENSSL/include" CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libcrypto.a"
(3)编译nginx.
- 进入nginx解压后的目录:cd /opt/nginx-1.25.2;
- 执行:./configure –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-openssl=/opt/openssl;
- 完成后再执行:make && make install。
5、配置国密证书文件
将生成的国密证书放到/opt/certs/ 目录下。 测试国密证书见附件certs.zip。
(1)修改nginx.conf:
cd /usr/local/nginx/conf
- SS.crt:为签发国密证书生成的签名证书;
- SS.key:为签发国密证书生成的签名密钥;
- SE.crt:为签发国密证书生成的加密证书;
- SE.key:为签发国密证书生成的加密密钥。
(2)检查Nginx配置文件是否正确:
/usr/local/nginx/sbin/nginx -t
(3)如果配置文件正确,启动Nginx:
/usr/local/nginx/sbin/nginx
(4)测试验证nginx:
安装零信浏览器进行访问,验证Nginx是否已成功部署国密SSL证书:
国密标准SSL证书的使用能够有效保护网站数据的传输安全,提升用户对网站的信任度,希望本教程能够帮助大家顺利完成Nginx服务器的配置。
-
广告合作
-
QQ群号:707632017