Compare commits
16 Commits
bc380a60a4
...
cpvid
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8b29410e02 | ||
|
|
5e8ef4749b | ||
|
|
932cf86be9 | ||
|
|
89abf6db4a | ||
|
|
c233149571 | ||
|
|
1a4d1bc7a3 | ||
|
|
5962d51caf | ||
|
|
32101302c3 | ||
|
|
ea1c20b80d | ||
|
|
12eee71ff5 | ||
|
|
97e2c4c32e | ||
|
|
335811b267 | ||
|
|
e66f3b779c | ||
|
|
ab66358bb0 | ||
|
|
fe206531f6 | ||
|
|
4f06b7fa70 |
@@ -1 +1 @@
|
|||||||
Some scripts to automate VPS setup
|
Scripts to automate VPS setup and maintenance
|
||||||
|
|||||||
7
cert/clientRenew
Executable file
7
cert/clientRenew
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash -e
|
||||||
|
SDIR=$(cd "$(dirname "$0")" ; pwd -P)
|
||||||
|
T=$SDIR/../step
|
||||||
|
|
||||||
|
STEP=0
|
||||||
|
source $T/ensureRootUser
|
||||||
|
source $T/renewCertbot
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash -e
|
||||||
# https://habr.com/ru/articles/735712/
|
# https://habr.com/ru/articles/735712/
|
||||||
brew install certbot
|
brew install certbot
|
||||||
23
cert/vpsRenew
Executable file
23
cert/vpsRenew
Executable file
@@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash -e
|
||||||
|
SDIR=$(cd "$(dirname "$0")" ; pwd -P)
|
||||||
|
T=$SDIR/../step
|
||||||
|
|
||||||
|
ACME_FILE=$1
|
||||||
|
ACME_VALUE=$2
|
||||||
|
|
||||||
|
if [ -z "$ACME_FILE" ] || [ -z "$ACME_VALUE" ]; then
|
||||||
|
echo "Usage: $0 ACME_FILE ACME_VALUE"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
ACME_DIR="/var/www/html/.well-known/acme-challenge"
|
||||||
|
|
||||||
|
STEP=0
|
||||||
|
source $T/ensureRootUser
|
||||||
|
source $T/copyNginxACMEConfig
|
||||||
|
source $T/restartNginx
|
||||||
|
source $T/createACMEChallenge
|
||||||
|
source $T/waitForReturnKey
|
||||||
|
source $T/deleteACMEChallenge
|
||||||
|
source $T/copyNginxProdConfig
|
||||||
|
source $T/restartNginx
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
apt install nginx
|
|
||||||
cp nginx/cfg /etc/nginx/sites-enabled/default
|
|
||||||
systemctl restart nginx
|
|
||||||
10
nginx/acme.cfg
Normal file
10
nginx/acme.cfg
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# Serve only through HTTP while updating the certificate
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name kornerr.ru;
|
||||||
|
root /var/www/html;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -5,6 +5,7 @@ server {
|
|||||||
return 301 https://$server_name$request_uri;
|
return 301 https://$server_name$request_uri;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Serve through HTTPS only
|
||||||
server {
|
server {
|
||||||
listen 443 ssl;
|
listen 443 ssl;
|
||||||
server_name kornerr.ru;
|
server_name kornerr.ru;
|
||||||
9
nginx/setup
Executable file
9
nginx/setup
Executable file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash -e
|
||||||
|
SDIR=$(cd "$(dirname "$0")" ; pwd -P)
|
||||||
|
T=$SDIR/../step
|
||||||
|
|
||||||
|
STEP=0
|
||||||
|
source $T/ensureRootUser
|
||||||
|
source $T/installNginx
|
||||||
|
source $T/copyNginxProdConfig
|
||||||
|
source $T/restartNginx
|
||||||
@@ -15,7 +15,9 @@ fi
|
|||||||
# Get the latest changes
|
# Get the latest changes
|
||||||
cd $REPO_DIR
|
cd $REPO_DIR
|
||||||
git checkout -f $MAIN_BRANCH
|
git checkout -f $MAIN_BRANCH
|
||||||
|
git clean -fd
|
||||||
git fetch --all
|
git fetch --all
|
||||||
|
git pull
|
||||||
|
|
||||||
# Find out the latest commit in the whole repo
|
# Find out the latest commit in the whole repo
|
||||||
#git branch -av --sort=-committerdate
|
#git branch -av --sort=-committerdate
|
||||||
|
|||||||
@@ -13,3 +13,4 @@ rsync -aivc --delete $DBG_DIR/ $DST_DIR
|
|||||||
cd $DST_DIR
|
cd $DST_DIR
|
||||||
ln -s ../cbr
|
ln -s ../cbr
|
||||||
ln -s ../dbg
|
ln -s ../dbg
|
||||||
|
ln -s ../vid
|
||||||
|
|||||||
5
step/copyNginxACMEConfig
Normal file
5
step/copyNginxACMEConfig
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Копируем настройки Nginx для ACME"
|
||||||
|
cp $SDIR/../nginx/acme.cfg /etc/nginx/sites-enabled/default
|
||||||
5
step/copyNginxProdConfig
Normal file
5
step/copyNginxProdConfig
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Копируем боевые настройки Nginx"
|
||||||
|
cp $SDIR/../nginx/prod.cfg /etc/nginx/sites-enabled/default
|
||||||
6
step/createACMEChallenge
Normal file
6
step/createACMEChallenge
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Создаём файл проверки для ACME"
|
||||||
|
mkdir -p $ACME_DIR
|
||||||
|
echo "$ACME_VALUE" > "$ACME_DIR/$ACME_FILE"
|
||||||
6
step/deleteACMEChallenge
Normal file
6
step/deleteACMEChallenge
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Удаляем файл проверки для ACME"
|
||||||
|
rm $ACME_DIR/$ACME_FILE
|
||||||
|
rmdir $ACME_DIR
|
||||||
9
step/ensureRootUser
Normal file
9
step/ensureRootUser
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# https://askubuntu.com/a/15856
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Проверяем запуск из-под root"
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
echo "ОШИБКА: Перезапустите как root"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
5
step/installNginx
Normal file
5
step/installNginx
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Устанавливаем Nginx"
|
||||||
|
apt install nginx
|
||||||
5
cert.renew → step/renewCertbot
Executable file → Normal file
5
cert.renew → step/renewCertbot
Executable file → Normal file
@@ -1,3 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash -e
|
||||||
# https://habr.com/ru/articles/735712/
|
# https://habr.com/ru/articles/735712/
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Просим certbot обновить"
|
||||||
certbot certonly --manual --preferred-challenges http -d "kornerr.ru"
|
certbot certonly --manual --preferred-challenges http -d "kornerr.ru"
|
||||||
5
step/restartNginx
Normal file
5
step/restartNginx
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Перезапускаем Nginx"
|
||||||
|
systemctl restart nginx
|
||||||
5
step/waitForReturnKey
Normal file
5
step/waitForReturnKey
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STEP=$((STEP+1))
|
||||||
|
echo -e "\n> > > > Шаг №$STEP. Ожидаем нажатия клавиши Return"
|
||||||
|
read -p "Нажмите Return..."
|
||||||
Reference in New Issue
Block a user