これをしたい
flexible(サイトに来る人 - SSL - cloudflare - plain - 自サーバー)
これだけでもまー良さそうではある。が、一応cloudflare自身もオススメしていないので、full (strict)に設定したい。
as a last resort (最終手段)
それぞれの違い
- off 言うまでもなく何も防御なし
- flexible 見る人からcloudflareまではSSL
- full cloudflareから自サーバーまでもSSL(self-certificate)
- full(strict) cloudflareから自サーバーまでもSSL(certificateはcloudflareから)
Caddyを使ってる
caddyは最初からlet's encryptでcertificateを用意してくれるので...cloudfareがドメイン管理してて、そっちでlet's encrypt使ってくれてるから、???
となる。
多分一番簡単なやり方
-
まず、間違いなく80と443ポートはファイヤーウォールから外れていることを確認
-
caddyはv2だ
-
cloudflareの自ドメインで、SSL/TLS→origin server→create certificateと行く

-
出てきたcertificateとprivate keyを各ファイルにする
/etc/ssl/certs/certificate.pem
/etc/ssl/private/key.pem

-
Caddyfileを書き換える
-
caddy runする -
cloudflareのSSL modeを
full (strict)に切り替える(多分10秒ぐらいは待ったほうが良い)
Caddyfileを書き換え
example.com {
tls /etc/ssl/certs/certificate.pem /etc/ssl/private/key.pem
respond "Hello, world!"
}
参考:



