使用 HTTPS 访问 Leanote 站点

原文地址

在上一篇文章《群晖 Docker 搭建自有 Leanote 服务》中,介绍了如何在群晖 Docker 中部署 Leanote 服务,最终做到了在浏览器中通过 HTTP 协议访问服务。

但是 HTTP 并不安全,对于我们博客站点,比较蛋疼的缺陷就是运营商会在页面注入广告,这不能忍。

那么切换到 HTTPS 就很有必要了。

准备证书

群晖 DSM 系统很贴心,已经为我们提供了默认证书,同时也可以用图形化界面的方式生成证书。

进入“控制面板->安全性->证书”,即可看到有哪些信息:

image

这块的基本配置过程比较简单,此处不赘述。

反向代理服务器

实际上,配置成功之后,我们期望用户的请求处理流程是这样的:

  • HTTPS 请求进入反向代理服务;
  • 反向代理服务通过配置得到该请求的目标服务器(Docker 容器)信息,然后用 HTTP 方式向目标服务器发起请求;
  • 目标服务器响应反向代理服务的请求,发送 HTTP 响应报文;
  • 反向代理服务器拿到 HTTP 响应报文后,将其转换为 HTTPS 响应报文,发送给用户。

调整 Docker 容器及 Leanote 配置

由于配置成功后,我们还想使用之前的 9000 端口来访问服务,因此不能直接在 Docker 处做端口映射,停掉 Docker 服务,然后删掉之前配置的 9000 端口映射即可。

另外,/data/leanote/conf/app.confsite.url 也要改成 https 形式。

调整完之后,启动容器。

配置反向代理规则

进入“控制面板->Synology 应用程序门户->反向代理服务器”,可以在这里管理反向代理规则。

点击“新增”按钮,填上如下配置:

image

由于 HTTP2 有多路复用优化,所以此处启用了 HTTP2。

HSTS 主要是让 HTTPS 更加安全。因为现在处于 HTTP -> HTTP2 的过度时期,很多时候访问服务器的不会一上来就声明采用 HTTPS 方式。比如用户在地址栏里面输入:www.baidu.com,实际上浏览器会首先将这个地址补全为 http://www.baidu.com,然后执行后续流程,但是 www.baidu.com 这边又只提供了 HTTPS 服务,这个时候就需要将 HTTP 转换成 HTTPS。

问题是,在这个过程中,浏览器怎么知道应该转换呢?在之前,有一种方案:

  • 浏览器将 http://www.baidu.com 请求发给服务器;
  • 服务器收到请求之后,返回一个重定向响应(3xx),让浏览器重新发起一个 HTTPS 请求。

很明显,这个过程会存在中间人攻击风险(SSL 剥离攻击)。于是有人提出了另一种方案:

  • 浏览器将 http://www.baidu.com 请求发送给服务器,服务器直接返回错误页面;
  • 用户通过某种途径(可能手动地址栏输入,可能点击了某个其他站点的链接),发送 https://www.baidu.com 到服务器,服务器在响应头中包含 Strict-Transport-Security 字段,告诉浏览器,在之后多长时间内,浏览器将相关域名的 HTTP 请求,全部转换成 HTTPS,而不是直接向服务器发送 HTTP 请求。

这样一来,就有效规避了 SSL 剥离攻击。

Enjoy yourself

配置完毕,在浏览器地址栏中输入:https://test.synology.me:9000,尽情享用吧!

别忘了调整客户端

由于之前配置客户端的时候,写的“自建服务地址”是使用 HTTP 协议的,改成 HTTPS 后,这些客户端也要做相应的调整。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容