summaryrefslogtreecommitdiff
path: root/caddy
diff options
context:
space:
mode:
Diffstat (limited to 'caddy')
-rw-r--r--caddy/Caddyfile32
-rw-r--r--caddy/README.md13
2 files changed, 24 insertions, 21 deletions
diff --git a/caddy/Caddyfile b/caddy/Caddyfile
index d5624c5..90abecb 100644
--- a/caddy/Caddyfile
+++ b/caddy/Caddyfile
@@ -2,46 +2,45 @@
order forward_proxy before redir
}
-golive.yyamashita.com {
+(noindex) {
header Referrer-Policy "no-referrer"
header X-Robots-Tag "noindex, nofollow"
+}
+(crawler_bypass) {
@crawler_bypass header X-Crawler-Access "f9a3c1e847b2d056"
header @crawler_bypass -X-Robots-Tag
+}
+golive.yyamashita.com {
+ import noindex
+ import crawler_bypass
reverse_proxy tokyo-app:3000
}
whoisband.yyamashita.com {
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
-
- @crawler_bypass header X-Crawler-Access "f9a3c1e847b2d056"
- header @crawler_bypass -X-Robots-Tag
-
+ import noindex
+ import crawler_bypass
reverse_proxy whois-app:3000
}
+
code.yyamashita.com {
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
+ import noindex
reverse_proxy 172.19.0.1:8080
}
git.yyamashita.com {
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
+ import noindex
reverse_proxy cgit:80
}
hetzner-admin.yyamashita.com {
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
+ import noindex
reverse_proxy hetzner-admin:5000
}
blog.yyamashita.com {
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
+ import noindex
reverse_proxy microblog-app:3000
}
@@ -51,8 +50,7 @@ vpn.yyamashita.com {
tls {
key_type rsa4096
}
- header Referrer-Policy "no-referrer"
- header X-Robots-Tag "noindex, nofollow"
+ import noindex
route /ca.pem {
header Content-Type "application/x-pem-file"
header Content-Disposition "attachment; filename=\"vpn-ca.pem\""
diff --git a/caddy/README.md b/caddy/README.md
index 2faf232..f3222a4 100644
--- a/caddy/README.md
+++ b/caddy/README.md
@@ -1,11 +1,16 @@
# caddy
-Caddy によるリバースプロキシ設定。`git push` で自動デプロイされる。
+Caddy によるリバースプロキシ + フォワードプロキシ設定。`git push` で自動デプロイされる。
| ファイル | 内容 |
|---|---|
-| `Caddyfile` | ホスト別ルーティング定義 |
-| `docker-compose.yml` | Caddy コンテナ定義 |
+| `Caddyfile` | ホスト別ルーティング定義(共通ヘッダーはスニペット `(noindex)` / `(crawler_bypass)`) |
+| `Dockerfile` | forwardproxy プラグイン入りの Caddy を xcaddy でビルド |
+| `entrypoint.sh` | 起動時に `/tmp/proxy_forward.caddy` を生成(Basic 認証 + 日本 IP 限定フィルタ) |
+| `docker-compose.yml` | Caddy コンテナ定義(`PROXY_NO_AUTH=1` でプロキシ認証を無効化中) |
| `deploy.sh` | post-receive フックから呼ばれるデプロイスクリプト |
-新しいホストを追加する場合は `Caddyfile` を編集して push する。
+- 新しいホストを追加する場合は `Caddyfile` を編集して push する。
+- フォワードプロキシは `proxy.yyamashita.com:80/443`。認証は無効(`PROXY_NO_AUTH=1`)で、
+ 代わりに ipdeny.com の JP CIDR リストで日本国内 IP のみ許可している。
+- `entrypoint.sh` の変更はイメージ再ビルドが必要(`deploy.sh` の `--build` で push だけで反映される)。