Windows Server 部署REDcap(七)— SSL

Configuration Check 中 Secondary tests 第 1 项异常就是REDCap系统没有使用 SSL 证书:

%title插图%num

安全套接层Secure Sockets Layer,SSL)是一种安全协议,已成为互联网上保密通信的工业标准。

SSL证书让网站实现加密传输,可以很好的防止用户隐私信息如用户名、密码、交易记录、居住信息等被窃取和纂改。

%title插图%num

更多内容:

维基百科

B站 SSL 介绍

我们使用REDCap 主要用来储存和交换数据,为了数据安全,SSL证书是必备的,好在阿里云有免费版本 SSL 证书,根据指南安装也很简单。

打开443端口(HTTPS服务默认端口):

登录ECS控制台

选中REDCap 实例,点击 — 本实例安全组 — 配置规则:

%title插图%num

设置如下:

%title插图%num

确定退出。

申请SSL 证书:

登录阿里云,控制台 — 产品与服务 — 安全(云盾) — SSL证书 — 购买证书,选择免费版(个人)DV:

%title插图%num

这是免费的单域名证书,购买时长1年,1年后可以再次购买。

%title插图%num

确认支付后回到 SSL 控制台,点击证书申请:

%title插图%num

填写域名和相关信息:

填写已申请的 REDCap 域名,申请人资料默认的注册阿里云账号个人信息,域名验证方式 — 自动 DNS 验证。

%title插图%num

点击下一步,一般自动审核,几分钟就可签发。

%title插图%num

部署SSL证书

参考:阿里云 – 在Apache服务器上安装SSL证书

下载 SSL 证书

SSL 证书签发后,控制台右侧会出现下载选项:

%title插图%num

选择 Apache 下载:

%title插图%num

上传 SSL 证书到服务器

将下载证书文件解压:得到3个文件 ,命名格式为数字+域名+后缀,后缀分别是 .key, chain.crt、pulic.crt。

%title插图%num

登录服务器,在 C:/xampp/apche 下新建文件夹 cert,并将上述3个证书文件上传到C:/xampp/apche/cert。

配置 SSL 证书

Apache 加载 SSL 模块:

记事本打开 Apache/conf/httpd.conf 文件:

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl

注意行首前有无#,有则删除 # 并保存。

设置 SSL 协议和加密模块:

记事本打开 Apache/conf/extra/httpd-ssl.conf:

SSLEngine on   
SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM   
SSLHonorCipherOrder on

注意行首前有无#,有则删除 # 并保存。

修改服务器端口为443:

在 Apache/conf/extra/httpd-ssl.conf文件:

把 ServerName 你的域名后添加:443​
%title插图%num
SSLCertificateFile 替换成 "cert/自己SSL 证书中以 pulic.crt 结尾文件名"。
注意行首前有无#,有则删除 # 并保存
%title插图%num
SSLCertificateKeyFile  替换成"cert/自己SSL 证书中以 .key结尾的文件名”。
注意行首前有无#,有则删除 # 并保存。
%title插图%num
SSLCertificateChainFile 替换成"cert/自己SSL 证书中以 .chain.crt 结尾文件名"。
注意行首前有无#,有则删除 # 并保存。
%title插图%num

保存,重启Apache。

配置检查

使用https://你的域名 登录网站,如果网页地址栏出现小锁标志,表示证书安装成功。

%title插图%num

再次Configuration Check,显示已经使用 SSL:

%title插图%num

但有新问题, REDCap base URL没有使用https:

%title插图%num

.

回到 Control Center:

%title插图%num

把 REDCap base URL 替换成 https://你的域名:

%title插图%num

再次 Configuration Check,又有新问题,需要在php.ini 设置 session.cookie_secure 为 on:

%title插图%num

打开C:\xampp\php\php.ini:

%title插图%num

去掉 session.cookie_secure = 前面的“ ;”并修改为:

 session.cookie_secure = on
%title插图%num

重启Apache,再次 Configuration Check,没有 SSL 异常了,REDCap 又加了一道安全屏障。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注