为 Caddy 增加客户端证书认证,做只为自己服务的反代

2017-10-15 10:55:37 +08:00
 testcaoy7
使用 easy-rsa 可以很方便的完成这个任务。
首先编辑 vars 文件,创建符合自己的模板,然后就是创建证书,命令如下:
1、init-pki
2、build-ca nopass
3、build-client-full <client> nopass
4、export-p12 <client>

caddyFile 如下(以反代 rime.im 为例,可以作死的改成某大型搜索引擎):

https://xxx.xxx {
gzip
tls xxx.cer xxx.key {
clients require /root/EasyRSA-3.0.3/pki/ca.crt
}
proxy / http://rime.im/
}

http://xxx.xxx {
redir https://xxx.xxx
}

最后是下载<client>.p12 导入到 Firefox 中去,或者装到计算机里去。这样除非装了证书,别人都访问不了反代的小秘密了。
2943 次点击
所在节点    程序员
6 条回复
abmin521
2017-10-16 08:39:33 +08:00
思路不错 不过手机电脑 都需要一个个导入
testcaoy7
2017-11-03 10:30:34 +08:00
今天才发现 xxx.xxx 是一个 HSWZ ……
纯属巧合,不是我故意的
find456789
2018-05-13 14:52:55 +08:00
你好,
我按照你的步骤最后生成的文件里, 没有 xxx.cer 这样的文件,
请问是我的步骤不对吗,

我用的 ubuntu,
在 github 官方下载的 easy-rsa 3.0.4 版本的
find456789
2018-05-13 14:54:11 +08:00
issued/ 目录下有个 xxx.crt

private/ 目录下有 ca.key xxx.key xxx.p12
find456789
2018-05-13 15:01:18 +08:00
http://xxx.xxx {
gzip
tls xxx.cer xxx.key {
clients require /root/EasyRSA-3.0.3/pki/ca.crt
}
proxy / http://xxx.xx/
}

http://xxx.xxx {
redir https://xxx.xxx
}


我是这样的配置, 我猜测有可能是 http://xxx.xxx 我没有改成 https 的,因为我是在本地测试,稍后我放上服务器看看
testcaoy7
2019-01-29 08:31:04 +08:00
今天更正一下:
将“ clients require /root/EasyRSA-3.0.3/pki/ca.crt ” 中的“ require ”删去
有“ require ”表示“ requires a client certificate, but will not verify it.”

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/397736

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX