Node.js环境安装SSL证书

使用帮助 作者:SSL证书超市 2025-04-09 20:28:22 阅读:15

如果轻量应用服务器已绑定了域名,可以为域名设置HTTPS加密访问,以较低的成本将数据传输协议从HTTP转换成HTTPS,实现网站的身份验证和数据加密传输,防止数据在传输过程中被篡改或信息泄露。本文以部署Node.js环境的轻量应用服务器为例,介绍如何在服务器中安装SSL证书,并开启HTTPS加密访问。

前提条件

已购买域名。通过阿里云购买域名的操作,请参见注册通用域名。

如果您的轻量应用服务器部署在中国内地,需要确保域名已备案。更多信息,请参见什么是ICP备案。

域名已经绑定到轻量应用服务器并完成域名解析。具体操作,请参见绑定并解析域名。

背景信息

Node.js是一个基于Chrome V8引擎的JavaScript运行环境,用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。更多信息,请参见Node.js官网。

通过数字证书管理服务(Certificate Management Service)完成证书购买、申请,并将证书部署到您的Web服务器后,Web服务将会通过HTTPS加密协议来传输数据。HTTPS加密传输协议可激活客户端浏览器到网站服务器之间的SSL加密通道(SSL协议),从而实现高强度单向加密传输,防止传输数据被泄露或篡改。HTTPS加密传输为手机App、小程序应用、代码程序、控件等上线应用市场或应用生态必备特征。HTTPS加密传输可为网站带来以下优势:

安全合规:满足对应App市场或应用生态的要求。

加密传输网络数据:加密网站用户与网站间的数据通信,实现传输数据的防劫持、防篡改、防监听,保障数据传输安全。

提升网站安全性:规避钓鱼事件发生。网站用户在访问网站时浏览器提示安全可信,可以提升网站的可信度、访问流量和搜索排名。

更多信息,请参见什么是数字证书管理服务。

步骤一:创建Node.js轻量应用服务器

登录轻量应用服务器管理控制台。

在左侧导航栏,单击服务器。

在轻量应用服务器售卖页,完成资源配置。

创建轻量应用服务器的具体操作,请参见创建轻量应用服务器。

其中,您需要在镜像区域,选择应用镜像为Node.js 14.15.2。

步骤二:申请SSL证书

阿里云支持申请免费证书、付费证书或者在其他服务商申请的证书。免费证书建议用于测试、个人试用等场景,org、jp等特殊域名存在无法申请的情况,正式环境建议使用付费正式证书,本步骤以申请免费证书为例介绍。如果您需要申请付费正式证书,请参见购买SSL证书。

购买免费SSL证书

登录数字证书管理服务控制台。

在左侧导航栏,选择证书管理 > SSL证书管理。

在个人测试证书(原免费证书)页签,单击立即购买。

在立即购买面板,参考下表购买个人测试证书,仔细阅读并勾选服务协议,单击立即购买并完成支付。

步骤三:配置SSL证书

证书签发后,证书状态将变更为已签发,您需要下载和配置证书。关于证书下载和安装的更多信息,请参见SSL证书安装指南。

下载证书。

在证书所在行的操作列,单击下载。

在证书下载对话框中,根据服务器类型下载证书。

本示例使用Nginx做转发,所以下载Nginx版本。

警告

下载证书后,请妥善保存,避免证书泄露导致您的网站被攻击。

压缩包解压之后会得到2个文件,具体如下图所示。

使用WinSCP、Xshell等工具上传.key证书文件和.pem证书私钥文件到轻量应用服务器的指定目录,例如:/home。

远程连接轻量应用服务器。具体操作,请参见远程连接Linux服务器。

执行以下命令,新建https_server_test.js项目文件。

 cd /homesudo touch https_server_test.js

执行以下命令,修改https_server_test.js文件。

 vim https_server_test.js

按i键进入编辑模式,并将以下内容添加至https_server_test.js文件中。内容如下所示:

 // 启动https服务需要https包// 读取文件需要fs包const https = require('https');const fs = require('fs');// 将两个证书文件读取放到options对象中// 使用readFileSync()方法,顺序地执行读文件和启动服务操作const options = {    key: fs.readFileSync('/home/cert-file-name.key'),    cert: fs.readFileSync('/home/cert-file-name.pem')};// 创建服务器,启动服务器,设置监听端口号https.createServer(options, (req, res) => {    res.end('hello world\n');}).listen(443);

说明如下:

/home/cert-file-name.key:需替换为实际上传私钥文件的绝对路径。

/home/cert-file-name.pem:您需要输入实际上传SSL证书文件的绝对路径。

重要

证书文件的路径需要配置正确,否则证书配置失败,无法使用HTTPS访问。

添加完成后,按Esc键退出编辑模式,并输入:wq后按Enter键,保存并退出文件。

执行以下命令,使SSL证书生效。

 sudo node https_server_test.js

使用浏览器访问https://轻量应用服务器对应的域名。

如果浏览器地址栏中出现小锁标志,表示证书已经安装成功。

如果网站无法通过HTTPS正常访问,需确认您安装证书的轻量应用服务器443端口是否已开启或被其他工具拦截。放行443端口的具体操作,请参见管理防火墙。

赞助链接
在线咨询

Copyright © 2015 untrust All rights reserved.

蜀ICP备20006130号-5