summaryrefslogtreecommitdiff
path: root/vpn
diff options
context:
space:
mode:
Diffstat (limited to 'vpn')
-rw-r--r--vpn/install.sh4
-rw-r--r--vpn/renew-cert.sh8
2 files changed, 11 insertions, 1 deletions
diff --git a/vpn/install.sh b/vpn/install.sh
index 3dc29bc..42088c0 100644
--- a/vpn/install.sh
+++ b/vpn/install.sh
@@ -45,6 +45,10 @@ awk '/BEGIN CERTIFICATE/{n++} n==1' "$CERT_DIR/server.crt" > "$CERT_DIR/server-l
awk '/BEGIN CERTIFICATE/{n++} n>1' "$CERT_DIR/server.crt" > "$CERT_DIR/server-chain.crt"
mv "$CERT_DIR/server-leaf.crt" "$CERT_DIR/server.crt"
+# Android 用 CA 証明書 (YE1 中間 CA) を Caddy で配信
+awk '/BEGIN CERTIFICATE/{n++} n==1' "$CERT_DIR/server-chain.crt" > "$CADDY_DIR/ca.pem"
+echo "Android 用 CA 証明書を ${CADDY_DIR}/ca.pem に配置しました。"
+
echo "証明書を $CERT_DIR/ に保存しました。"
# VPN コンテナ起動
diff --git a/vpn/renew-cert.sh b/vpn/renew-cert.sh
index 50f8784..b199350 100644
--- a/vpn/renew-cert.sh
+++ b/vpn/renew-cert.sh
@@ -14,5 +14,11 @@ docker compose -f "$CADDY_DIR/docker-compose.yml" exec -T caddy \
cat "${CADDY_CERT_BASE}.key" > certs/server.key
chmod 600 certs/server.key
-docker compose exec vpn swanctl --load-creds --noprompt
+# チェーン分割 + Android 用 CA 証明書更新
+awk '/BEGIN CERTIFICATE/{n++} n==1' certs/server.crt > certs/server-leaf.crt
+awk '/BEGIN CERTIFICATE/{n++} n>1' certs/server.crt > certs/server-chain.crt
+mv certs/server-leaf.crt certs/server.crt
+awk '/BEGIN CERTIFICATE/{n++} n==1' certs/server-chain.crt > "$CADDY_DIR/ca.pem"
+
+docker compose restart
echo "完了。証明書を更新してリロードしました。"