From d139b218b9476f4d274ee0161c70aefc8a90efb5 Mon Sep 17 00:00:00 2001 From: octospacc Date: Fri, 4 Aug 2023 23:43:57 +0200 Subject: [PATCH] Upd --- Lib.sh | 6 +- .../Root/Server/Scripts/Backup/CloudBackup.sh | 36 +++++++-- .../Scripts/Backup/ExternalDataBackup.sh | 4 + .../Server/Scripts/Backup/ServerDataBackup.sh | 22 ++++-- .../Root/Server/Scripts/OneShot.AfterBoot.sh | 1 + .../etc/nginx/sites-available/SpaccBBS.conf | 75 +++++++++++++++++++ .../etc/nginx/sites-available/XSpacc.conf | 62 +++++++++++++++ .../etc/nginx/sites-available/fediii.conf | 10 ++- .../etc/nginx/sites-available/wordpress.conf | 16 ++++ .../etc/systemd/system/CringeInoltro.service | 2 +- .../etc/systemd/system/SpaccCraft.service | 4 +- Server/Root/etc/systemd/system/WinDog.service | 2 +- 12 files changed, 219 insertions(+), 21 deletions(-) create mode 100644 Server/Root/etc/nginx/sites-available/SpaccBBS.conf create mode 100644 Server/Root/etc/nginx/sites-available/XSpacc.conf create mode 100644 Server/Root/etc/nginx/sites-available/wordpress.conf diff --git a/Lib.sh b/Lib.sh index 1c05451..fd57d31 100644 --- a/Lib.sh +++ b/Lib.sh @@ -18,8 +18,7 @@ CpItem(){ CpItems(){ for p in $@ - do - CpItem "$p" + do CpItem "$p" done } @@ -27,8 +26,7 @@ CpSub(){ LBase="$1"; shift RBase="$1"; shift for s in $@ - do - CpItems ${LBase}${s}${RBase} + do CpItems /${LBase}${s}${RBase} done } diff --git a/Server/Root/Server/Scripts/Backup/CloudBackup.sh b/Server/Root/Server/Scripts/Backup/CloudBackup.sh index b8770e8..a5a52b2 100755 --- a/Server/Root/Server/Scripts/Backup/CloudBackup.sh +++ b/Server/Root/Server/Scripts/Backup/CloudBackup.sh @@ -1,6 +1,7 @@ #!/bin/sh # Upload a backup of the Local Cloud and of local services backups to other clouds +set -e . "$(dirname "$(realpath "$0")")/BackupGlobals.cfg" GitPush() { @@ -37,13 +38,34 @@ EchoExec cp -rp "../shiori-data/Latest.d" "./shiori-data" GitPush cd .. -#McServer="SpaccCraft" -#McEdition="Beta-1.7.3" -#cd "/Server/${McServer}/spacccraft-b1.7.3-backup4" -#cp ../*.sh ./ -#cp -rT "${BackupsBase}/${McServer}/${McEdition}/Latest" "./${McEdition}" -#GitPush -#cd "${BackupsBase}" +exit + +cd ./SpaccBBS-Backup-phpBB-2023 +EchoExec rm -rf ./SpaccBBS || true +EchoExec cp -rp ../SpaccBBS/Latest.d ./SpaccBBS +EchoExec cp ../SpaccBBS/Db.Latest.sql.tar.xz ./Db.sql.tar.xz +for File in \ + ./Db.sql.tar.xz \ + ./SpaccBBS/config.php \ + ./SpaccBBS/arrowchat/includes/config.php \ +; do ccencryptNow "$File" "$BackupKey_Git_SpaccBBS" +done +GitPush +cd .. + +McServer="SpaccCraft" +McEdition="Beta-1.7.3" +McGit="spacccraft-b1.7.3-backup4" +DestPath="${BackupsBase}/${McServer}/${McGit}" +if [ -d "${DestPath}" ] +then + #cd "/Server/${McServer}" + cd "${BackupsBase}/${McServer}" + rm -rf "${DestPath}/${McEdition}" + cp ./*.sh "${DestPath}/" + cp -r "./${McEdition}/Latest.d" "${DestPath}/${McEdition}" + GitPullPushPath "${DestPath}" +fi GitPullPushPath "/Cloud/Repos/Personal-Game-Saves" #GitPullPushPath "/media/Disk/Configs" diff --git a/Server/Root/Server/Scripts/Backup/ExternalDataBackup.sh b/Server/Root/Server/Scripts/Backup/ExternalDataBackup.sh index 0b02ede..c25e146 100755 --- a/Server/Root/Server/Scripts/Backup/ExternalDataBackup.sh +++ b/Server/Root/Server/Scripts/Backup/ExternalDataBackup.sh @@ -1,14 +1,18 @@ #!/bin/sh # Make local backups of our data from various third-party services +set -e . "$(dirname "$(realpath "$0")")/BackupGlobals.cfg" # Invidious personal JSON dump +InvidiousPersonalJsonDump(){ Name="Invidious-User" mkdir -vp "./${Name}" curl \ "${Invidious_Backup_URL}/subscription_manager?action_takeout=1&format=json" \ -H "${Invidious_Backup_Cookie}" \ | 7z a -mmt1 -mx9 "./${Name}/${RunDate}.7z" -si && cp -v "./${Name}/${RunDate}.7z" "./${Name}/Latest.7z" +} +#InvidiousPersonalJsonDump WriteLastLog diff --git a/Server/Root/Server/Scripts/Backup/ServerDataBackup.sh b/Server/Root/Server/Scripts/Backup/ServerDataBackup.sh index d5755b3..6fd87c8 100755 --- a/Server/Root/Server/Scripts/Backup/ServerDataBackup.sh +++ b/Server/Root/Server/Scripts/Backup/ServerDataBackup.sh @@ -1,25 +1,37 @@ #!/bin/sh # Make local backups of the data from the hosted services +set -e . "$(dirname "$(realpath "$0")")/BackupGlobals.cfg" -SimpleBackup() { +SimpleCompress(){ + EchoExec tar cJSf "$1.tar.xz" "$2" +} + +SimpleBackup(){ # $1: Folder # $2: Optional prefix relative to path in /Server mkdir -vp "./$1" #tar cvJSf "./$1/${RunDate}.tar.xz" "/Server/$2/$1" && \ #cp "./$1/${RunDate}.tar.xz" "./$1/Latest.tar.xz" - EchoExec rm -rf "./$1/Latest.d" + EchoExec rm "./$1/Latest.tar.xz" || true + EchoExec rm -rf "./$1/Latest.d" || true EchoExec cp -rp "/Server/$2/$1" "./$1/Latest.d" - EchoExec tar cJSf "./$1/${RunDate}.tar.xz" "./$1/Latest.d" && \ - cp -v "./$1/${RunDate}.tar.xz" "./$1/Latest.tar.xz" + SimpleCompress "./$1/${RunDate}" "./$1/Latest.d" + #cp -v "./$1/${RunDate}.tar.xz" "./$1/Latest.tar.xz" + EchoExec ln -s "./${RunDate}.tar.xz" "./$1/Latest.tar.xz" } #SimpleBackup "wallabag-data" SimpleBackup "FreshRSS-data" SimpleBackup "shiori-data" "Shiori" -rm -v "./shiori-data/Latest.d/archive/*" +rm -v ./shiori-data/Latest.d/archive/* || true + +SimpleBackup SpaccBBS www +EchoExec mariadb-dump phpBB > ./SpaccBBS/Db.Latest.sql +SimpleCompress "./SpaccBBS/Db.${RunDate}.sql" ./SpaccBBS/Db.Latest.sql +EchoExec ln -s "./Db.${RunDate}.sql.tar.xz" ./SpaccBBS/Db.Latest.sql.tar.xz # GoToSocial #Name="GoToSocial" diff --git a/Server/Root/Server/Scripts/OneShot.AfterBoot.sh b/Server/Root/Server/Scripts/OneShot.AfterBoot.sh index 80947c9..b5b7157 100755 --- a/Server/Root/Server/Scripts/OneShot.AfterBoot.sh +++ b/Server/Root/Server/Scripts/OneShot.AfterBoot.sh @@ -1,6 +1,7 @@ #!/bin/sh cd "$( dirname "$( realpath "$0" )" )" +sh -c 'while true; do echo "nameserver 127.0.0.1" > /etc/resolv.conf; sleep 30; done' & sh ./MountRoots.sh & while true; do sleep 30; done diff --git a/Server/Root/etc/nginx/sites-available/SpaccBBS.conf b/Server/Root/etc/nginx/sites-available/SpaccBBS.conf new file mode 100644 index 0000000..9aaa35d --- /dev/null +++ b/Server/Root/etc/nginx/sites-available/SpaccBBS.conf @@ -0,0 +1,75 @@ +upstream php { + server unix:/var/run/php/php7.4-fpm.sock; +} + +server { + listen 80; + listen 443 ssl; + server_name bbs.spacc.eu.org; + ssl_certificate /etc/letsencrypt/live/bbs.spacc.eu.org/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/bbs.spacc.eu.org/privkey.pem; + ssl_prefer_server_ciphers on; + root /Server/www/SpaccBBS; + index index.php index.html index.htm; + + # Loggers + error_log /var/log/nginx/SpaccBBS.error.log warn; + access_log /var/log/nginx/SpaccBBS.access.log; + + location / { + try_files $uri $uri/ @rewriteapp; + + # Pass the php scripts to FastCGI server specified in upstream declaration. + location ~ \.php(/|$) { + include fastcgi.conf; + fastcgi_split_path_info ^(.+\.php)(/.*)$; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT $realpath_root; + try_files $uri $uri/ /app.php$is_args$args; + fastcgi_pass php; + } + + # Deny access to internal phpbb files. + location ~ /(config\.php|common\.php|cache|files|images/avatars/upload|install.bak|(?' '

Content Proxied from X by Spacc Inc.Upstream

'; + sub_filter_once off; + } +} + +server { + listen 443 ssl; + server_name reddit.x.spacc.eu.org; + ssl_certificate /etc/letsencrypt/live/reddit.x.spacc.eu.org/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/reddit.x.spacc.eu.org/privkey.pem; + ssl_prefer_server_ciphers on; + location / { + proxy_http_version 1.1; + proxy_pass https://old.reddit.com; + proxy_set_header Host old.reddit.com; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Accept-Encoding ''; # Needed for sub_filter + sub_filter '' ''; + sub_filter '

Content Proxied from X by Spacc Inc.Upstream

' ''; + sub_filter ''; sub_filter_once on; } + location /.well-known/mercure { + proxy_pass http://192.168.1.157:3000$request_uri; + proxy_http_version 1.1; + proxy_set_header Connection ""; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Proto $scheme; + } location /fediii-static/ { root /Server/www/; add_header Access-Control-Allow-Origin *; diff --git a/Server/Root/etc/nginx/sites-available/wordpress.conf b/Server/Root/etc/nginx/sites-available/wordpress.conf new file mode 100644 index 0000000..7bc0adb --- /dev/null +++ b/Server/Root/etc/nginx/sites-available/wordpress.conf @@ -0,0 +1,16 @@ +server { + listen 443 ssl; + server_name wp-testing.octt.eu.org; + ssl_certificate /etc/letsencrypt/live/wp-testing.octt.eu.org/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/wp-testing.octt.eu.org/privkey.pem; + ssl_prefer_server_ciphers on; + location / { + proxy_http_version 1.1; + proxy_pass http://192.168.1.157:8048; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } +} diff --git a/Server/Root/etc/systemd/system/CringeInoltro.service b/Server/Root/etc/systemd/system/CringeInoltro.service index 7312df3..fa0431a 100644 --- a/Server/Root/etc/systemd/system/CringeInoltro.service +++ b/Server/Root/etc/systemd/system/CringeInoltro.service @@ -7,6 +7,6 @@ Type=simple Restart=always RestartSec=15 User=pi -ExecStart=/Server/CringeInoltro/StartCringeInoltro.py +ExecStart=/Server/Bots/CringeInoltro/StartCringeInoltro.py [Install] WantedBy=multi-user.target diff --git a/Server/Root/etc/systemd/system/SpaccCraft.service b/Server/Root/etc/systemd/system/SpaccCraft.service index 56f76ee..65f199b 100644 --- a/Server/Root/etc/systemd/system/SpaccCraft.service +++ b/Server/Root/etc/systemd/system/SpaccCraft.service @@ -6,8 +6,8 @@ StartLimitIntervalSec=0 Type=simple Restart=always RestartSec=10 -CPUQuota=75% -MemoryMax=350M +#CPUQuota=75% +#MemoryMax=384M User=pi ExecStart=script /dev/null -c "export TERM=vt100; screen -S SpaccCraft sh /Server/SpaccCraft/StartSpaccCraft.sh" [Install] diff --git a/Server/Root/etc/systemd/system/WinDog.service b/Server/Root/etc/systemd/system/WinDog.service index c3c1d02..e377534 100644 --- a/Server/Root/etc/systemd/system/WinDog.service +++ b/Server/Root/etc/systemd/system/WinDog.service @@ -7,6 +7,6 @@ Type=simple Restart=always RestartSec=10 User=pi -ExecStart=/Server/WinDog/StartWinDog +ExecStart=/Server/Bots/WinDog/StartWinDog [Install] WantedBy=multi-user.target