某用户国密改造测试,涉及B/S架构和C/S架构,本贴为C/S架构业务改造。
二、C/S架构国密改造:
改造场景及原理概述:
客户原先C/S业务通信未采用国密SSL进行加密,现测试通过代理服务器方式实现业务访问的国密改造。搭建代理服务器并与SSL安全网关之间建立国密SLL的加密通信隧道,代理服务器启用对应端口监听数据,将监听到的数据通过国密SSL通信隧道发送给SSL安全网关,SSL安全网关将数据调度到对应的服务器,实现C/S架构的国密改造。 C/S架构图示
国密设备均需先激活国密卡。 关于国密卡激活步骤,详情见上一篇关于B/S业务的改造: https://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=135987#/pid1840163
配置步骤和测试效果:
① 搭建代理服务器:
此测试项目安装Centos7操作系统,并安装nginx服务程序。(也可以安装Windows server 2012操作系统,并安装proxy服务程序) 本次测试在客户的虚拟化环境里创建一台Centos7的服务器, 上传安装包rpm -ivh nginx_sm-1.0.0-1.x86_64.rpm, 在上传目录下赋予执行权限,chmod u+x rpm -ivh nginx_sm-1.0.0-1.x86_64.rpm, 然后安装 ./ rpm -ivh nginx_sm-1.0.0-1.x86_64.rpm。
/usr/local/nginx/conf/nginx.conf这个是我们的配置文件,主要修改内容都在这里。下面是主要内容的示例:
stream { server{ listen 80; 代理监听的端口 proxy_pass 15.1.1.205:443; 表示后端服务器(AD)的地址,需要指定域名或者 ip 和端口。 proxy_ssl on; 表示启用 ssl 加密 #proxy_ssl_verify on; 表示启用服务器证书认证 #proxy_ssl_trusted_certificateca.pem; 表示服务器证书 CA proxy_ssl_protocols GMv1.1; proxy_ssl_ciphers ECC-SM2-SM4-SM3; proxy_ssl_ukey off; proxy_ssl_certificateserver.crt; proxy_ssl_certificate_keyserver.key; proxy_ssl_ext_certificateserver.crt; proxy_ssl_ext_certificate_keyserver.key; proxy_ssl_authJ+Q3ROM4RJj7AztgCUTMSZPYEdg3gZmnvLgLuPGbEcCE1q21Xw2CLczcaV/tsAZnlQ83wlH2AdPWLQWs6db2VHnHTNwFpdWRGHXM9h3DJehBg5qBHXiC8ytM7IxcCBixkfocx/3nntnWoreHMnt9mTJHibzHaoVP0q9trMlwjRQunmj/T3Pn4xXrL68RNjZFWz7Dh3vZQqZDGFIw+qLgaPy+cz61jAyRSB5GCG0fuVkvlTWG1dhLBmBufWFI0EOgidSiDqzrzODnxf6+P5oGsMb7IUgWddii4DhC9w+2BcgX2P3nVX1kcBZmaLSe+OrPQdGVcIaP7rbAHDnHYnfwDw==; } }
如果有多条隧道需要建立,则再增加server就可以。
通常不需要启用UKEY证书测试,本次测试也没有使用。不启用UKEY证书测试还需要将server.crt和 server.key 拷贝到/usr/local/nginx/conf目录下。否则运行会报错。
完成配置我们就可以运行nginx测试一下,注意的是无论是下面的test或是start命令都会让你输入pin码,随便输入回车即可。
/etc.init.d/nginx test
/etc/init.d/nginx start
/etc/init.d/nginx status查看进程是否运行
/etc/init.d/nginx stop 停止代理程序
/etc/init.d/nginx restart 重启代理程序
② SSL安全网关上配置SSL卸载策略以及虚拟负载服务:
配置时注意选择国密协议
③ 测试效果展示: 本次测试使用B/S类型的资源做效果展示,也帮助大家再理解下原理图。从原理图可知,与B/S国密改造改变客户访问方式不同(http访问变为https访问)。C/S国密改造不会改变原先的访问方式,通过代理服务器和AD之间做加密隧道传输数据实现需求。
抓包验证:(需要使用支持国密的wireshark)
PS:本文所需的安装包等文件需联系研发获取。 |