实现Nginx代理WSS协议

实现Nginx代理WSS协议

如果说我比别人看得更远些,那是因为我站在了巨人的肩上-----牛顿

获取/更新Https证书脚本

一个快速获取/更新 Let's encrypt 证书的 shell script

GitHub 完整说明文档 http://t.cn/R1At25t

想折腾!!!自己动手生成证书可以参考这个篇博客

http://t.cn/R1AtGvm

以下为文档详细内容以及我测试环境的配置,贴过来是为了方便离线阅读

脚本中是调用 acme_tiny.py 认证、获取、更新证书,不需要额外的依赖。

下载到本地

配置文件

只需要修改 DOMAIN_KEY DOMAIN_DIR DOMAINS 为你自己的信息

执行过程中会自动生成需要的 key 文件。其中 为账户密钥, 为域名私钥, 为域名指向的目录, 为要签的域名列表, 需要 证书时取消 的注释,需要为 生成 文件时,取消 的注释。

运行

注意

需要已经绑定域名到 目录,即通过 可以访问到 目录,用于域名的验证

将会生成如下几个文件

在 nginx 里添加 ssl 相关的配置

cron 定时任务

每个月自动更新一次证书,可以在脚本最后加入 service nginx reload等重新加载服务。

生成证书后的目录结构

比如域名为: 那么子域名前缀为

示例配置

脚本配置文件

letsencrypt.conf将其中的修改为自己的域名

Nginx配置

配置文件在

主要配置日志格式以及引用外部的配置文件。避免所有配置都配置到一个配置文件导致臃肿。

配置文件可以放在

生成证书之前只需要配置80端映射到中指定的目录,生成证书后就可以配置https测试。

wss协议转发

你没看错转发配置就是这么简单

如果有更好的解决方案或者疑问欢迎留言一起讨论。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180531G094EP00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券