Caddy:修订间差异
FL.YL.BANxS(留言 | 贡献) 小无编辑摘要 |
小 维护清理 |
||
(未显示9个用户的16个中间版本) | |||
第1行: | 第1行: | ||
{{NOT|球僮 (高尔夫球)}} |
|||
{{roughtranslation|time=2017-04-03T10:11:58+00:00}} |
{{roughtranslation|time=2017-04-03T10:11:58+00:00}} |
||
{{NoteTA|G1=IT|G2=FL}} |
|||
{{Infobox software |
{{Infobox software |
||
|name=Caddy |
|name=Caddy |
||
第6行: | 第8行: | ||
|author=Matthew Holt |
|author=Matthew Holt |
||
|released={{Start date and age|df=yes|2015|4|28}} |
|released={{Start date and age|df=yes|2015|4|28}} |
||
|programming language=[[Go]] |
|||
|latest release version=0.10.14 |
|||
⚫ | |||
|latest release date={{Start date and age|df=yes|2018|4|20}} |
|||
|genre=[[Web服务器]], [[代理服务器|反向代理服务器]] |
|||
|status=Active |
|||
⚫ | |||
|programming language=[[Go]]<ref name="Go1.6Blog">{{ cite web | url = https://blog.golang.org/go1.6 | title = Go 1.6 is released | first = Andrew |
|||
| last = Gerrand |
|||
| website = golang.org |
|||
| date = 17 February 2016 |
|||
⚫ | |||
⚫ | |||
|website={{Official}}}} |
|website={{Official}}}} |
||
'''Caddy服务器'''(或 |
'''Caddy服务器'''(或称'''Caddy Web''')是一个开源的,使用 [[Go|Golang]] 编写,支持 [[HTTP/2]] 的 Web 服务端。它使用 [[Go|Golang]] 标准库提供 [[超文本传输协议|HTTP]] 功能。 |
||
Caddy 一个显著的特性是默认启用 [[超文本传输安全协议|HTTPS]]。<ref name="VolumeLabs">{{Cite web|url=https://volumelabs.net/better-web-server-with-free-ssl/|title=A Better Web Server with Free SSL|accessdate=5 March 2016|date=23 February 2016|last=Johnson|first=Brad}}</ref><ref name="RyanMartinsen">{{Cite web|url=https://ryanmartinsen.com/article/automatic-https-with-caddy/|title=Automatic HTTPS with Caddy Server|accessdate=5 March 2016|date=18 December 2015}}</ref>它是第一个无需额外配置即可提供 [[超文本传输安全协议|HTTPS]] 特性的 Web 服务器。<ref name="DmitryChestnykh">{{Cite tweet|number=677640782392786944|user=dchest|title=Caddy is the first general-purpose web server to default to HTTPS without user intervention (using Let's Encrypt)|author=Dmitry Chestnykh|date=17 December 2015}}</ref> |
Caddy 一个显著的特性是默认启用 [[超文本传输安全协议|HTTPS]]。<ref name="VolumeLabs">{{Cite web|url=https://volumelabs.net/better-web-server-with-free-ssl/|title=A Better Web Server with Free SSL|accessdate=5 March 2016|date=23 February 2016|last=Johnson|first=Brad|archive-date=2017-08-02|archive-url=https://web.archive.org/web/20170802123034/https://volumelabs.net/better-web-server-with-free-ssl/|dead-url=no}}</ref><ref name="RyanMartinsen">{{Cite web|url=https://ryanmartinsen.com/article/automatic-https-with-caddy/|title=Automatic HTTPS with Caddy Server|accessdate=5 March 2016|date=18 December 2015|archive-date=2017-08-02|archive-url=https://web.archive.org/web/20170802095433/https://ryanmartinsen.com/article/automatic-https-with-caddy/|dead-url=no}}</ref>它是第一个无需额外配置即可提供 [[超文本传输安全协议|HTTPS]] 特性的 Web 服务器。<ref name="DmitryChestnykh">{{Cite tweet|number=677640782392786944|user=dchest|title=Caddy is the first general-purpose web server to default to HTTPS without user intervention (using Let's Encrypt)|author=Dmitry Chestnykh|date=17 December 2015}}</ref> |
||
作者 Matt Holt 于 2014 年 12 月开始开发 Caddy ,并于 2015 年 4 月发布第一个版本。<ref name="ShowHN">{{Cite web|url=https://news.ycombinator.com/item?id=9452606|title=Show HN: Caddy, a cross-platform HTTP/2 web server|date=28 April 2015}}</ref> 在发布后的一年里,它的下载量超过了 20000 次,并在 [[GitHub]] 上获得了 4500 |
作者 Matt Holt 于 2014 年 12 月开始开发 Caddy ,并于 2015 年 4 月发布第一个版本。<ref name="ShowHN">{{Cite web|url=https://news.ycombinator.com/item?id=9452606|title=Show HN: Caddy, a cross-platform HTTP/2 web server|date=28 April 2015|accessdate=2017-04-03|archive-date=2017-04-22|archive-url=https://web.archive.org/web/20170422124432/https://news.ycombinator.com/item?id=9452606|dead-url=no}}</ref> 在发布后的一年里,它的下载量超过了 20000 次,并在 [[GitHub]] 上获得了 4500 个 Star。<ref name="IsCaddyFree">{{Cite web |url=https://caddyserver.com/blog/is-caddy-free |title=Is Caddy Free? |accessdate=2017-04-03 |archive-date=2017-04-22 |archive-url=https://web.archive.org/web/20170422124428/https://caddyserver.com/blog/is-caddy-free |dead-url=no }}</ref> |
||
Caddy 支持各种 Web 技术,提供静态编译的二进制文件,支持 [[Intel 80386|i386]]、[[X86-64|amd64]] 和 [[ARM架構|ARM]] 架构上的 [[Microsoft Windows|Windows]]、[[MacOS|Mac]]、[[Linux]]、[[Android]] 和 [[BSD]] 操作系统。 |
Caddy 支持各种 Web 技术,提供静态编译的二进制文件,支持 [[Intel 80386|i386]]、[[X86-64|amd64]] 和 [[ARM架構|ARM]] 架构上的 [[Microsoft Windows|Windows]]、[[MacOS|Mac]]、[[Linux]]、[[Android]] 和 [[BSD]] 操作系统。 |
||
== 功能 == |
== 功能 == |
||
Caddy 可以提供各种网站技术,它也可以作为反向代理和负载均衡器。Caddy 的大部分功能都 |
Caddy 可以提供各种网站技术,它也可以作为反向代理和负载均衡器。Caddy 的大部分功能都以中间件的形式实现,并通过 Caddyfile 中的指令(用于配置 Caddy 的文本文件)进行控制。<ref name="DocsCaddyfile">{{Cite web|url=https://caddyserver.com/docs/caddyfile|title=The Caddyfile|accessdate=29 February 2016|archive-date=2017-04-20|archive-url=https://web.archive.org/web/20170420015804/https://caddyserver.com/docs/caddyfile|dead-url=no}}</ref> |
||
* HTTP/1.1 (原始的HTTP) and [[HTTP/2]] (HTTPS的推荐连接方案) |
* HTTP/1.1 (原始的HTTP) and [[HTTP/2]] (HTTPS的推荐连接方案) |
||
* [[超文本传输安全协议|HTTPS]],同时接受自动签发和手动管理 |
* [[超文本传输安全协议|HTTPS]],同时接受自动签发和手动管理 |
||
** TLS 1.2 临时性支持(旧协议)<ref name="DocsTLS">{{Cite web|url=https://caddyserver.com/docs/tls|title=tls - Caddy Directives|accessdate=8 March 2016}}</ref> |
** TLS 1.2 临时性支持(旧协议)<ref name="DocsTLS">{{Cite web|url=https://caddyserver.com/docs/tls|title=tls - Caddy Directives|accessdate=8 March 2016|archive-date=2017-03-17|archive-url=https://web.archive.org/web/20170317100723/https://caddyserver.com/docs/tls|dead-url=no}}</ref> |
||
** [[服务器名称指示|SNI]] |
** [[服务器名称指示|SNI]] |
||
** [[OCSP装订|OCSP]]证书交换验证 |
** [[OCSP装订|OCSP]]证书交换验证 |
||
第36行: | 第33行: | ||
* 静态文件分发 |
* 静态文件分发 |
||
* 平滑重启/重载 |
* 平滑重启/重载 |
||
* 反向代理 (HTTP或[[WebSocket]]) |
* [[反向代理]] (HTTP或[[WebSocket]]) |
||
* 负载均衡和健康性检查 |
* [[负载均衡]]和健康性检查 |
||
* [[FastCGI]]支持<ref name="JixeePHPFPM">{{Cite web|url=https://blog.jixee.me/how-to-setup-the-caddy-web-server-with-php-fpm/|title=How to Setup the Caddy Web Server with php-fpm|access-date=2017-04-03|archive-url=https://web.archive.org/web/20170818000829/http://blog.jixee.me/how-to-setup-the-caddy-web-server-with-php-fpm/|archive-date=2017-08-18|dead-url=yes}}</ref><ref name="DenBeke">{{Cite web|url=https://denbeke.be/blog/servers/caddy-server-and-wordpress-php-fpm/|title=Caddy Server and WordPress (PHP-FPM)|date=21 August 2015|last=Beke|first=Mathias}}</ref> |
* [[FastCGI]]支持<ref name="JixeePHPFPM">{{Cite web|url=https://blog.jixee.me/how-to-setup-the-caddy-web-server-with-php-fpm/|title=How to Setup the Caddy Web Server with php-fpm|access-date=2017-04-03|archive-url=https://web.archive.org/web/20170818000829/http://blog.jixee.me/how-to-setup-the-caddy-web-server-with-php-fpm/|archive-date=2017-08-18|dead-url=yes}}</ref><ref name="DenBeke">{{Cite web|url=https://denbeke.be/blog/servers/caddy-server-and-wordpress-php-fpm/|title=Caddy Server and WordPress (PHP-FPM)|date=21 August 2015|last=Beke|first=Mathias|accessdate=2017-04-03|archive-date=2016-05-03|archive-url=https://web.archive.org/web/20160503041255/https://denbeke.be/blog/servers/caddy-server-and-wordpress-php-fpm/|dead-url=no}}</ref> |
||
* 配置文件模板 |
* 配置文件模板 |
||
* [[Markdown]]渲染 |
* [[Markdown]]渲染 |
||
第51行: | 第48行: | ||
== 安全 == |
== 安全 == |
||
Caddy 免于很多已知的 [[通用漏洞披露|CVEs]] 攻击 (包括 [[心脏出血漏洞|Heartbleed]], DROWN, POODLE, 和 [[傳輸層安全協議|BEAST]])<ref name="Qualys">{{Cite web|url=https://www.ssllabs.com/ssltest/analyze.html?d=caddyserver.com|title=SSL Server Test: caddyserver.com (Powered by Qualys SSL Labs)|accessdate=5 March 2016}}</ref>,另外, Caddy 使用 TLS_FALLBACK_SCSV 以防止协议降级攻击。 |
Caddy 免于很多已知的 [[通用漏洞披露|CVEs]] 攻击 (包括 [[心脏出血漏洞|Heartbleed]], DROWN, POODLE, 和 [[傳輸層安全協議|BEAST]])<ref name="Qualys">{{Cite web|url=https://www.ssllabs.com/ssltest/analyze.html?d=caddyserver.com|title=SSL Server Test: caddyserver.com (Powered by Qualys SSL Labs)|accessdate=5 March 2016|archive-date=2021-04-10|archive-url=https://web.archive.org/web/20210410091738/https://www.ssllabs.com/ssltest/analyze.html?d=caddyserver.com}}</ref>,另外, Caddy 使用 TLS_FALLBACK_SCSV 以防止协议降级攻击。 |
||
2015 年 6 月 2 日,版本 0.7.1 修复了 Caddy 简单服务器鉴权中间件中时间欺诈攻击的漏洞。<ref name="Caddy0.7.1">{{cite web|url=https://github.com/mholt/caddy/releases/tag/v0.7.1|title=Release 0.7.1 · mholt/caddy|date=2 June 2015}}</ref> |
2015 年 6 月 2 日,版本 0.7.1 修复了 Caddy 简单服务器鉴权中间件中时间欺诈攻击的漏洞。<ref name="Caddy0.7.1">{{cite web|url=https://github.com/mholt/caddy/releases/tag/v0.7.1|title=Release 0.7.1 · mholt/caddy|date=2 June 2015|accessdate=2017-04-03|archive-date=2019-02-15|archive-url=https://web.archive.org/web/20190215184111/https://github.com/mholt/caddy/releases/tag/v0.7.1|dead-url=no}}</ref> |
||
关于协议和密码套件,Caddy 使用 TLS 1.0-1.2,并且倾向于 ECDHE ECDSA 与 [[高级加密标准|AES256]]-GCM-SHA384,支持十几种不同的加密方式。[[Cloudflare]] 已经使用了 Caddy 作为 TLS 1.3 的实现方案。<ref name="TwitterTLS1.3">{{cite tweet|user=grittygrease|number=705929028142673924|date=4 Mar 2016|author=Nick Sullivan|title=It's built in Go using custom versions @rlbarnes's Mint and @mholt6's Caddy}}</ref> |
关于协议和密码套件,Caddy 使用 TLS 1.0-1.2,并且倾向于 ECDHE ECDSA 与 [[高级加密标准|AES256]]-GCM-SHA384,支持十几种不同的加密方式。[[Cloudflare]] 已经使用了 Caddy 作为 TLS 1.3 的实现方案。<ref name="TwitterTLS1.3">{{cite tweet|user=grittygrease|number=705929028142673924|date=4 Mar 2016|author=Nick Sullivan|title=It's built in Go using custom versions @rlbarnes's Mint and @mholt6's Caddy}}</ref> |
||
传统的特权降级无法工作在 Golang 程序上。<ref name="GoIssue1435">{{Cite web|url=https://github.com/golang/go/issues/1435|title=syscall: Setuid/Setgid doesn't apply to all threads on Linux|accessdate=5 March 2016|date=21 January 2011}}</ref> 为了绑定低于 1024 的端口, Caddy 必须使用 root 账户运行 (不建议) 或通过 <code>setcap</code> 给予低位端口使用权限 (建议的) 。 并且,在将来的版本中会尝试使用非特级子进程运行。<ref name="CaddyIssue528">{{Cite web|url=https://github.com/mholt/caddy/issues/528|title=Implement privilege de-escalation|date=21 January 2016}}</ref> |
传统的特权降级无法工作在 Golang 程序上。<ref name="GoIssue1435">{{Cite web|url=https://github.com/golang/go/issues/1435|title=syscall: Setuid/Setgid doesn't apply to all threads on Linux|accessdate=5 March 2016|date=21 January 2011|archive-date=2018-02-07|archive-url=https://web.archive.org/web/20180207223710/https://github.com/golang/go/issues/1435|dead-url=no}}</ref> 为了绑定低于 1024 的端口, Caddy 必须使用 root 账户运行 (不建议) 或通过 <code>setcap</code> 给予低位端口使用权限 (建议的) 。 并且,在将来的版本中会尝试使用非特级子进程运行。<ref name="CaddyIssue528">{{Cite web|url=https://github.com/mholt/caddy/issues/528|title=Implement privilege de-escalation|date=21 January 2016|accessdate=2017-04-03|archive-date=2017-04-22|archive-url=https://web.archive.org/web/20170422124538/https://github.com/mholt/caddy/issues/528|dead-url=no}}</ref> |
||
Caddy 没有自动启动 [[HTTP严格传输安全|HTTP Strict Transport Security]],推荐通过 Caddy 的 <code>header</code> 配置启用 HSTS。<ref name="CIO">{{Cite web|url=https://https.cio.gov/hsts/#configuration-for-common-web-servers|title=HTTP Strict Transport Security|accessdate=8 March 2016}}</ref> |
Caddy 没有自动启动 [[HTTP严格传输安全|HTTP Strict Transport Security]],推荐通过 Caddy 的 <code>header</code> 配置启用 HSTS。<ref name="CIO">{{Cite web|url=https://https.cio.gov/hsts/#configuration-for-common-web-servers|title=HTTP Strict Transport Security|accessdate=8 March 2016|archive-date=2017-04-26|archive-url=https://web.archive.org/web/20170426214300/https://https.cio.gov/hsts/#configuration-for-common-web-servers|dead-url=no}}</ref> |
||
=== 自动签发 HTTPS === |
=== 自动签发 HTTPS === |
||
Caddy 默认通过检查域名来启用 HTTPS (通过 ACME protocol 检查域名并签发证书), 并且重定向 HTTP 请求到 HTTPS。<ref name="AutoHTTPS">{{Cite web|url=https://caddyserver.com/docs/automatic-https|title=Automatic HTTPS|accessdate=5 March 2016}}</ref> 它在启动期间根据需要签发证书,并在服务器的使用期间自动重签发。 [[Let's Encrypt]] 是默认的证书颁发机构,但用户可以自定义所使用的 ACME CA,这在测试配置时是必要的。在 2016 年第一季度, 有百分之二的 Let's Encrypt 证书是由 Caddy 签发的。 |
Caddy 默认通过检查域名来启用 HTTPS (通过 ACME protocol 检查域名并签发证书), 并且重定向 HTTP 请求到 HTTPS。<ref name="AutoHTTPS">{{Cite web|url=https://caddyserver.com/docs/automatic-https|title=Automatic HTTPS|accessdate=5 March 2016|archive-date=2017-03-17|archive-url=https://web.archive.org/web/20170317101810/https://caddyserver.com/docs/automatic-https|dead-url=no}}</ref> 它在启动期间根据需要签发证书,并在服务器的使用期间自动重签发。 [[Let's Encrypt]] 是默认的证书颁发机构,但用户可以自定义所使用的 ACME CA,这在测试配置时是必要的。在 2016 年第一季度, 有百分之二的 Let's Encrypt 证书是由 Caddy 签发的。 |
||
一个可选的配置允许 Caddy 在需要时签发一个证书 "按需 TLS"<ref name="AutoHTTPS-OnDemand">{{Cite web|url=https://caddyserver.com/docs/automatic-https#on-demand|title=On-Demand TLS|accessdate=5 March 2016}}</ref> 使用这种方案时,用户必须指定可通过该方案配置的证书数量。 当 Caddy 收到一个没有配置证书的请求时, 它会自动通过 ACME 签发并配置, 然后将证书存储于内存和硬盘。 这个过程通常需要几秒钟的时间,并且受到限制。 |
一个可选的配置允许 Caddy 在需要时签发一个证书 "按需 TLS"<ref name="AutoHTTPS-OnDemand">{{Cite web|url=https://caddyserver.com/docs/automatic-https#on-demand|title=On-Demand TLS|accessdate=5 March 2016|archive-date=2017-03-17|archive-url=https://web.archive.org/web/20170317101810/https://caddyserver.com/docs/automatic-https#on-demand|dead-url=no}}</ref> 使用这种方案时,用户必须指定可通过该方案配置的证书数量。 当 Caddy 收到一个没有配置证书的请求时, 它会自动通过 ACME 签发并配置, 然后将证书存储于内存和硬盘。 这个过程通常需要几秒钟的时间,并且受到限制。 |
||
当使用 TLS, Caddy 会自动切换会话密钥以保证安全性。<ref>{{Cite journal|title=Measuring the Security Harm of TLS Crypto Shortcuts|url=http://doi.acm.org/10.1145/2987443.2987480|last=Springall|first=Drew|last2=Durumeric|first2=Zakir|date=2016-01-01|journal=Proceedings of the 2016 ACM on Internet Measurement Conference|publisher=ACM|doi=10.1145/2987443.2987480|series=IMC '16|location=New York, NY, USA|pages=33–47|isbn=9781450345262|last3=Halderman|first3=J. Alex}}</ref> |
当使用 TLS, Caddy 会自动切换会话密钥以保证安全性。<ref>{{Cite journal|title=Measuring the Security Harm of TLS Crypto Shortcuts|url=http://doi.acm.org/10.1145/2987443.2987480|last=Springall|first=Drew|last2=Durumeric|first2=Zakir|date=2016-01-01|journal=Proceedings of the 2016 ACM on Internet Measurement Conference|publisher=ACM|doi=10.1145/2987443.2987480|series=IMC '16|location=New York, NY, USA|pages=33–47|isbn=9781450345262|last3=Halderman|first3=J. Alex}}</ref> |
||
第73行: | 第70行: | ||
== 外部連結 == |
== 外部連結 == |
||
* {{Official website|https://caddyserver.com/}} |
* {{Official website|https://caddyserver.com/}} |
||
* {{GitHub| |
* {{GitHub|caddyserver/caddy}} |
||
{{Web服务器软件}} |
|||
[[Category:自由跨平台軟體]] |
[[Category:自由跨平台軟體]] |
||
[[Category:自由网络服务器软件]] |
[[Category:自由网络服务器软件]] |
||
[[Category:反向代理]] |
[[Category:反向代理]] |
||
[[Category:用Go編程的自由軟件]] |
|||
[[Category:Linux代理服务器软件]] |
|||
[[Category:Unix网络相关软件]] |
|||
[[Category:Linux网络相关软件]] |
|||
[[Category:自由代理服务器]] |
2023年8月3日 (四) 13:19的最新版本
此條目翻譯品質不佳。 (2017年4月3日) |
原作者 | Matthew Holt |
---|---|
首次发布 | 2015年4月28日 |
当前版本 |
|
源代码库 | |
编程语言 | Go |
操作系统 | Android,BSD variants,Linux,OS X及Windows |
类型 | Web服务器, 反向代理服务器 |
许可协议 | Apache许可证2.0 |
网站 | 官方网站 |
Caddy服务器(或称Caddy Web)是一个开源的,使用 Golang 编写,支持 HTTP/2 的 Web 服务端。它使用 Golang 标准库提供 HTTP 功能。
Caddy 一个显著的特性是默认启用 HTTPS。[2][3]它是第一个无需额外配置即可提供 HTTPS 特性的 Web 服务器。[4]
作者 Matt Holt 于 2014 年 12 月开始开发 Caddy ,并于 2015 年 4 月发布第一个版本。[5] 在发布后的一年里,它的下载量超过了 20000 次,并在 GitHub 上获得了 4500 个 Star。[6]
Caddy 支持各种 Web 技术,提供静态编译的二进制文件,支持 i386、amd64 和 ARM 架构上的 Windows、Mac、Linux、Android 和 BSD 操作系统。
功能
[编辑]Caddy 可以提供各种网站技术,它也可以作为反向代理和负载均衡器。Caddy 的大部分功能都以中间件的形式实现,并通过 Caddyfile 中的指令(用于配置 Caddy 的文本文件)进行控制。[7]
- HTTP/1.1 (原始的HTTP) and HTTP/2 (HTTPS的推荐连接方案)
- HTTPS,同时接受自动签发和手动管理
- 虚拟主机 (多个站点工作在单个端口上)[9]
- 原生IPv4和IPv6支持
- 静态文件分发
- 平滑重启/重载
- 反向代理 (HTTP或WebSocket)
- 负载均衡和健康性检查
- FastCGI支持[10][11]
- 配置文件模板
- Markdown渲染
- CGI通过WebSocket
- Gzip压缩
- 简单服务器鉴权
- URL重写
- 重定向
- 文件浏览服务
- 访问日志
- 实验性QUIC支持
安全
[编辑]Caddy 免于很多已知的 CVEs 攻击 (包括 Heartbleed, DROWN, POODLE, 和 BEAST)[12],另外, Caddy 使用 TLS_FALLBACK_SCSV 以防止协议降级攻击。
2015 年 6 月 2 日,版本 0.7.1 修复了 Caddy 简单服务器鉴权中间件中时间欺诈攻击的漏洞。[13]
关于协议和密码套件,Caddy 使用 TLS 1.0-1.2,并且倾向于 ECDHE ECDSA 与 AES256-GCM-SHA384,支持十几种不同的加密方式。Cloudflare 已经使用了 Caddy 作为 TLS 1.3 的实现方案。[14]
传统的特权降级无法工作在 Golang 程序上。[15] 为了绑定低于 1024 的端口, Caddy 必须使用 root 账户运行 (不建议) 或通过 setcap
给予低位端口使用权限 (建议的) 。 并且,在将来的版本中会尝试使用非特级子进程运行。[16]
Caddy 没有自动启动 HTTP Strict Transport Security,推荐通过 Caddy 的 header
配置启用 HSTS。[17]
自动签发 HTTPS
[编辑]Caddy 默认通过检查域名来启用 HTTPS (通过 ACME protocol 检查域名并签发证书), 并且重定向 HTTP 请求到 HTTPS。[18] 它在启动期间根据需要签发证书,并在服务器的使用期间自动重签发。 Let's Encrypt 是默认的证书颁发机构,但用户可以自定义所使用的 ACME CA,这在测试配置时是必要的。在 2016 年第一季度, 有百分之二的 Let's Encrypt 证书是由 Caddy 签发的。
一个可选的配置允许 Caddy 在需要时签发一个证书 "按需 TLS"[19] 使用这种方案时,用户必须指定可通过该方案配置的证书数量。 当 Caddy 收到一个没有配置证书的请求时, 它会自动通过 ACME 签发并配置, 然后将证书存储于内存和硬盘。 这个过程通常需要几秒钟的时间,并且受到限制。
当使用 TLS, Caddy 会自动切换会话密钥以保证安全性。[20]
參考資料
[编辑]- ^ Release 2.8.4. 2024年6月2日 [2024年6月20日].
- ^ Johnson, Brad. A Better Web Server with Free SSL. 23 February 2016 [5 March 2016]. (原始内容存档于2017-08-02).
- ^ Automatic HTTPS with Caddy Server. 18 December 2015 [5 March 2016]. (原始内容存档于2017-08-02).
- ^ Dmitry Chestnykh [@dchest]. Caddy is the first general-purpose web server to default to HTTPS without user intervention (using Let's Encrypt) (推文). 17 December 2015 –通过Twitter.
- ^ Show HN: Caddy, a cross-platform HTTP/2 web server. 28 April 2015 [2017-04-03]. (原始内容存档于2017-04-22).
- ^ Is Caddy Free?. [2017-04-03]. (原始内容存档于2017-04-22).
- ^ The Caddyfile. [29 February 2016]. (原始内容存档于2017-04-20).
- ^ tls - Caddy Directives. [8 March 2016]. (原始内容存档于2017-03-17).
- ^ Benedetti, Benoit. Caddy, Le Serveur Web Facile [Caddy, The Easy Web Server]. GNU/Linux Magazine France (France). November 2015 (法语).
- ^ How to Setup the Caddy Web Server with php-fpm. [2017-04-03]. (原始内容存档于2017-08-18).
- ^ Beke, Mathias. Caddy Server and WordPress (PHP-FPM). 21 August 2015 [2017-04-03]. (原始内容存档于2016-05-03).
- ^ SSL Server Test: caddyserver.com (Powered by Qualys SSL Labs). [5 March 2016]. (原始内容存档于2021-04-10).
- ^ Release 0.7.1 · mholt/caddy. 2 June 2015 [2017-04-03]. (原始内容存档于2019-02-15).
- ^ Nick Sullivan [@grittygrease]. It's built in Go using custom versions @rlbarnes's Mint and @mholt6's Caddy (推文). 4 Mar 2016 –通过Twitter.
- ^ syscall: Setuid/Setgid doesn't apply to all threads on Linux. 21 January 2011 [5 March 2016]. (原始内容存档于2018-02-07).
- ^ Implement privilege de-escalation. 21 January 2016 [2017-04-03]. (原始内容存档于2017-04-22).
- ^ HTTP Strict Transport Security. [8 March 2016]. (原始内容存档于2017-04-26).
- ^ Automatic HTTPS. [5 March 2016]. (原始内容存档于2017-03-17).
- ^ On-Demand TLS. [5 March 2016]. (原始内容存档于2017-03-17).
- ^ Springall, Drew; Durumeric, Zakir; Halderman, J. Alex. Measuring the Security Harm of TLS Crypto Shortcuts. Proceedings of the 2016 ACM on Internet Measurement Conference. IMC '16 (New York, NY, USA: ACM). 2016-01-01: 33–47. ISBN 9781450345262. doi:10.1145/2987443.2987480.