d2ray/run.sh

63 lines
1.4 KiB
Bash
Raw Normal View History

2021-04-10 08:21:07 +00:00
#!/bin/sh
2021-04-10 10:07:21 +00:00
set +xe
2021-04-10 08:21:07 +00:00
2021-04-10 09:46:39 +00:00
mkdir -p /opt/config
mkdir -p /opt/config/logs
mkdir -p /opt/config/certs
mkdir -p /opt/config/logs/nginx
mkdir -p /opt/config/logs/xray
mkdir -p /opt/config/logs/crond
2021-04-10 09:29:44 +00:00
BUCKET_HASH=3bd6b2ce5101e791b665d709aa8518ce
2021-04-10 09:46:39 +00:00
2021-04-10 09:40:04 +00:00
echo ""
2021-04-10 08:21:07 +00:00
echo "===== Checking Environment Variables ====="
if [ -z "$FQDN" ]; then
echo "FQDN must be set"
exit 1
else
echo "FQDN = $FQDN"
fi
if [ -z "$SALT" ]; then
echo "SALT must be set"
exit 1
else
echo "SALT = $SALT"
fi
if [ -z "$KEY" ]; then
echo "KEY must be set"
exit 1
else
echo "KEY = $KEY"
fi
2021-04-10 09:40:04 +00:00
echo ""
2021-04-10 08:21:07 +00:00
echo "===== Checking Certificates ===="
if [ ! -d "/etc/letsencrypt/live/$FQDN" ]; then
echo "Generating new certificates..."
2021-04-10 09:42:49 +00:00
certbot certonly -n --standalone -m dummy@dummy.com --agree-tos --no-eff-email -d $FQDN
2021-04-10 08:21:07 +00:00
else
echo "Certificate exists. Checking renewal..."
certbot renew
fi
2021-04-10 09:40:04 +00:00
echo ""
2021-04-10 08:21:07 +00:00
echo "===== Downloading configuration file ====="
2021-04-10 09:29:44 +00:00
hash=$(echo -n "$FQDN.$SALT" | openssl dgst -md5 | sed -E 's/\(stdin\)= (.*)/\1/')
2021-04-10 08:21:07 +00:00
echo "Host hash is $hash"
2021-04-16 09:02:16 +00:00
wget -q http://$BUCKET_HASH.s3-website-us-west-1.amazonaws.com/config/$hash -O /opt/$hash
openssl aes-256-cbc -d -md sha512 -pbkdf2 -in /opt/$hash -out /opt/$FQDN.json -k $KEY
rm /opt/$hash
2021-04-10 08:21:07 +00:00
2021-04-10 09:40:04 +00:00
echo ""
2021-04-10 08:21:07 +00:00
echo "===== Starting services ====="
crond -L /opt/config/logs/crond/log.txt
2021-04-16 09:02:16 +00:00
nginx -c /opt/nginx/nginx.conf
2021-04-10 08:21:07 +00:00
2021-04-10 09:40:04 +00:00
echo ""
2021-04-10 08:21:07 +00:00
echo "===== Starting xray ====="
2021-04-10 10:44:36 +00:00
exec /opt/xray/xray -c /opt/$FQDN.json