如何获取Sprinthost托管Node.js项目的SSL证书访问权限实现数据加解密
Let's Encrypt通配符证书权限获取与Node.js场景使用指引
核心认知澄清
常见认知误区:由Let's Encrypt签发的域名验证类通配符证书,不存在仅能用于展示HTTPS安全锁标识的功能限制,只要获取到证书对应的完整文件,即可完全支持自定义业务场景下的加解密操作。
实操步骤
1. SSH登录服务器定位证书存储路径
- 登录Sprinthost对应运行节点后,可通过全局检索命令快速定位平台自动部署的证书文件位置:
find / -name "fullchain.pem" -type f 2>/dev/null - 常规存储路径分为两类:
- 站点专属路径:站点根目录下的隐藏
.ssl文件夹 - 系统统一路径:
/etc/letsencrypt/live/对应域名/目录
- 站点专属路径:站点根目录下的隐藏
2. 确认并调整证书文件访问权限
定位到证书目录后,需确认三类核心文件的可读权限匹配业务需求:
fullchain.pem:包含公钥与完整CA信任链的证书文件,需保证运行Node.js服务的用户拥有读取权限privkey.pem:与证书匹配的私钥文件,需严格控制访问范围,可通过命令调整权限:chmod 600 privkey.pem
私钥文件严禁对外泄露,否则会导致证书信任链完全失效chain.pem:CA中间证书文件,用于补全证书校验的信任关系
3. Node.js技术栈下的证书调用方式
- 搭建基础HTTPS服务时,可直接将读取到的证书、私钥传入原生
https.createServer初始化参数,无需额外平台适配 - 自定义加解密场景下,可直接使用Node.js内置
crypto模块,加载读取到的公钥、私钥内容,实现非对称加密、签名、验签等自定义操作,不受证书默认用途限制 - 通配符证书的生效范围仅限同主域名下的子域名,跨域使用时会触发域名校验不通过
内容的提问来源于stack exchange,提问作者Георгий Шапоренко
相关产品推荐
相关产品推荐

