Files
server-core/serverrun/encrypt-certs.sh
T

24 lines
647 B
Bash
Raw Normal View History

#!/bin/bash
# 证书加密打包(参考 PineSoundServer encrypt-certs.sh
# 用途:微信/HTTPS 证书加密归档,不入库。
set -euo pipefail
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT"
ENC_KEY="${ENC_KEY:-}"
if [ -z "$ENC_KEY" ]; then
echo "错误:请设置 ENC_KEY" >&2
exit 1
fi
CERT_DIR="serverdata/keys/certs"
if [ ! -d "$CERT_DIR" ]; then
echo "目录不存在:$CERT_DIR(先放置证书)" >&2
exit 1
fi
tar -czf - -C "$CERT_DIR" . | openssl enc -aes-256-cbc -pbkdf2 -salt \
-out serverrun/certs.tar.gz.enc -pass pass:"$ENC_KEY"
echo "已加密:serverrun/certs.tar.gz.enc"