Caddy2.0使用进阶

  |   0 评论   |   0 浏览

  

01.起因

  有小伙伴问到关于 caddy2.0 的高阶使用,之前只是简单的使用,以及自己的博客维护,于是乎搞之!

  原文地址:《Https 就是这么简单之 Caddy2

  待解决如下:
1.关于 curl localhost:2019/load 这个接口的防护
2.docker 版的 autos ave. JSON 配置文件路径和普通的配置文件 auto save. 路径不一样,无论放哪里都一样,关键是如何更改这个路径?caddy envrion 只能打印出这个路径,但是没有说怎么配置这个路径,用 JSON 配置吗?如何配置?
3.caddy2 能不能配置成 systemd 服务了

02. upload 接口防护

  貌似研究了半天,貌似是 API 是运行着的,应该是内嵌到底层的,不过这个问题也没有什么问题,因为他只能通过 localhost 的方式调用,除非黑进系统了,但黑进系统的话,那不运行 API 服务也是可以修改文件的,所以这个问题不大

03. docker 版的 autos ave. JSON 配置文件路径修改

  大致看了下,docker 版本的 caddy 是做成服务的,每次直接自动转换 caddyfile 到
autos ave. JSON 这个文件里面, JSON 文件的话,路径没有必要手动指定,因为你改了/etc/caddy/caddyfile 这个文件,会自动适配到 JSON 文件的。

  使用指定路经的 JSON

1curl localhost:2019/load \
2  -X POST \
3  -H "Content-Type: application/json" \
4  -d @caddy.json

  用这个就可以了 @后面写 JSON 的路径

04. caddy2 能不能配置成 systemd 服务

  这个在官方文档是有说到的,如下图位置
image.png

4.1 手动安装为 Linux 服务

  要求:
一个 caddy 二进制您下载或从源代码构建
系统版本 232 或更高版本
超级用户权限
将 caddy 二进制文件移到您的中 $PATH,例如:

1sudo mv caddy /usr/bin/

  测试它是否有效:

1caddy version

  创建一个名为的组 caddy:

1groupadd --system caddy

  创建一个名为的用户 caddy,该用户具有可写的主文件夹:

1useradd --system \
2	--gid caddy \
3	--create-home \
4	--home-dir /var/lib/caddy \
5	--shell /usr/sbin/nologin \
6	--comment "Caddy web server" \
7	caddy

  接下来,获取此 systemd 单位文件并将其保存到/etc/systemd/system/caddy.service。仔细检查 ExecStart 和 ExecReload 指令-确保二进制文件的位置和命令行参数对于您的安装是正确的。

  在继续之前,请仔细检查您的 systemd 和 Caddy 配置是否正确。确保您的配置文件在命令中指定的位置。

  要首次启动该服务,请执行通常的 systemctl 舞蹈:

1sudo systemctl daemon-reload
2sudo systemctl enable caddy
3sudo systemctl start caddy

  验证它正在运行:

1systemctl status caddy

  使用我们的官方服务文件运行时,Caddy 的输出将重定向到 journalctl:

1journalctl -u caddy

  要对配置文件进行任何更改(如果使用的话):

1sudo systemctl reload caddy

  您可以通过以下方式停止服务:

1sudo systemctl stop caddy

4.2 使用 yum 安装 caddy,并设置自启动

  • RHEL/CentOS 7
1yum-config-manager --add-repo https://copr.fedorainfracloud.org/coprs/g/caddy/caddy/repo/epel-7/group_caddy-caddy-epel-7.repo
2
3
  • RHEL/CentOS 7
1yum install caddy

  启动

1service caddy start

  设置开机自启动

1systemctl enable caddy
---------------------------------------------------------------
>> 博客地址:https://blog.mufengs.com
>> 邮箱地址:[email protected]
>> 微信帐号:Do8080
>> Github : https://github.com/mufengcoding
---------------------------------------------------------------