操作
機能 #409
未完了機能 #369: kagamidai 用の TLS 証明書管理
kagamidai でのプライベート CA による証明書の利用
開始日:
2024/06/17
期日:
進捗率:
70%
一時中断:
はい
pinned:
いいえ
確認予定日:
前回確認日:
2024/10/02
管理外残件あり:
いいえ
説明
HTTP でアクセスしていた諸々のサービスを LAN 向けには HTTPS 化する。
nop_thread さんが5ヶ月前に更新
- ステータス を 新規 から 進行中 に変更
- 開始日 を 2024/06/17 にセット
- 前回確認日 を 2024/06/17 にセット
ひとまず apt でそのまま入る Caddy から試してみるか。
nop_thread さんが5ヶ月前に更新
{
email <EMAIL_ADDR>
acme_ca https://<STEP_CA>/acme/acme/directory
acme_ca_root /etc/caddy/kagamidai-root.crt
}
navidrome.<INTERNAL> {
reverse_proxy localhost:4533
tls <EMAIL_ADDR> {
ca https://<STEP_CA>/acme/acme/directory
ca_root /etc/caddy/kagamidai-root.crt
}
}
これでいけた。
nop_thread さんが5ヶ月前に更新 · 編集済み
- 進捗率 を 0 から 30 に変更
Navidrome と Adguard を HTTPS 化。
ただし Adguard は Step CA のマシンを壊したときにアクセスできる方が良いので、 HTTP to HTTPS のリダイレクトは無効化して plain HTTP でもアクセスできるようにしてある。
nop_thread さんが5ヶ月前に更新 · 編集済み
Thanos は GRPC を使っており、 reverse proxy 側がどうにかなったとしてもクライアント側での TLS 対応状況もよくわからないので面倒そうだ。
そもそも Thanos は LAN 内に閉じた通信しかしないと (今のところは) 想定して良いので、 TLS 利用のメリットは盗聴への対抗だけ。
本当に困るなら仮想マシンを分けるのをやめて各種コンポーネントを単一のコンテナにまとめる手もあるので、優先度は低いかもしれない。
とりあえず HTTP のエンドポイントだけ HTTPS 化してしまえば良いか。
nop_thread さんが5ヶ月前に更新
- 前回確認日 を 2024/06/17 から 2024/06/19 に変更
NetBox も kagamidai を弄るとき不可欠なので、 Cloudflare Tunnel に依存しない形でアクセスできるようにしておきたい。
NetBox 自体は自身のドメイン名を知っている必要はなさそうなので、複数のドメインから使えるようにできるはず。
nop_thread さんが5ヶ月前に更新
- 進捗率 を 30 から 70 に変更
- 前回確認日 を 2024/06/19 から 2024/06/24 に変更
Cloudflare Tunnel 用:
cftunnel.navidrome.nukobu.internal {
reverse_proxy localhost:4533 {
header_up Host <PUBLIC_HOSTNAME>
# For Cloudflare Tunnels.
# Replace untrusted headers from the client.
#
# Note that `X-Forwarded-For` from Cloudflare might come from the client (see
# <https://developers.cloudflare.com/fundamentals/reference/http-request-headers/#x-forwarded-for>),
# so it cannot be trusted and `CF-Connecting-IP` should be used instead.
# About `CF-Connecting-IP`, see
# <https://developers.cloudflare.com/fundamentals/reference/http-request-headers/#cf-connecting-ip>.
header_up X-Real-IP {http.request.header.CF-Connecting-IP}
header_up X-Forwarded-For {http.request.header.CF-Connecting-IP}
header_up X-Forwarded-Host <PUBLIC_HOSTNAME>
# Remove untrusted headers from the client.
header_up -Forwarded
}
tls <EMAIL_ADDR> {
acme_ca https://<STEP_CA>/acme/acme/directory
acme_ca_root /etc/caddy/kagamidai-root.crt
}
}
操作