[PR #1216] Develop installer update #3792

Open
opened 2026-03-14 07:39:12 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/amidaware/tacticalrmm/pull/1216
Author: @ninjamonkey198206
Created: 7/19/2022
Status: 🔄 Open

Base: developHead: develop-installer-update


📝 Commits (10+)

  • 3ff4242 Update meshcentral.conf
  • fbd0164 Update rmm.conf
  • 1f30e57 Update config.json
  • 84e941b Update local_settings.py
  • 9a97fae Merge branch 'amidaware:develop' into develop
  • 757104a Merge branch 'amidaware:develop' into develop
  • 9a9789d Update app.ini
  • 31e0aad Merge branch 'amidaware:develop' into develop
  • ebc5fc2 Merge branch 'amidaware:develop' into develop
  • 9b99d9b Update frontend.conf

📊 Changes

31 files changed (+3795 additions, -2 deletions)

View changed files

📝 .vscode/settings.json (+3 -0)
📝 api/tacticalrmm/core/management/commands/pre_update_tasks.py (+1 -1)
📝 api/tacticalrmm/tacticalrmm/utils.py (+1 -1)
default-configs/celery/celery.conf (+16 -0)
default-configs/mesh/config.json (+34 -0)
default-configs/nginx/frontend.conf (+41 -0)
default-configs/nginx/meshcentral.conf (+47 -0)
default-configs/nginx/nginx.conf (+25 -0)
default-configs/nginx/rmm.conf (+88 -0)
default-configs/python/local_settings.py (+25 -0)
default-configs/uwsgi/app.ini (+24 -0)
installer-util.sh (+448 -0)
script-cfg/01-InputAndError.cfg (+47 -0)
script-cfg/02-MiscFunctions.cfg (+391 -0)
script-cfg/03-SystemInfoFunctions.cfg (+114 -0)
script-cfg/04-UserInput.cfg (+266 -0)
script-cfg/05-NetworkFunctions.cfg (+70 -0)
script-cfg/06-InstallFunctions.cfg (+363 -0)
script-cfg/07-DatabaseFunctions.cfg (+21 -0)
script-cfg/08-CertificateFunctions.cfg (+235 -0)

...and 11 more files

📄 Description

Merged all scripts into a single cfg file, then split into further function type specific cfg files with their own update checks.

Added menu with options for previous individual script functions.

Added commenting in many locations.

Combined previous scripts into reusable functions where possible.

Added default config and service files, reducing the required output for those functions to a simple copy and sed command for each.

Added menu options for dev installs per Dinger and Silver.

Added option to select dev repo during dev install.

Added DH generation and config to nginx config files.

Added STS setting to nginx configs per https://syslink.pl/cipherlist/

Added check for localhost per https://github.com/amidaware/tacticalrmm/issues/779

Updated gpg key import for repos to modern method, as previous method is now deprecated.

Added option to import existing cert, key, and ca chain cert using vim editor. Muahahahahahahaha!

Imported certs are created in the same location if letsencrypt certs are not generated.

Added input verification where appropriate to prevent user error during entry.

Added option for manual input of usernames and passwords.

Added option for Fail2ban install.

Added LetsEncrypt cert renewal function.

Added check to verify if user running script is tactical user.

Added check to verify tactical user has sudo privileges.

Added tactical user creation if it does not exist.

Added command-line argument usage for automated installs.

Included checks to ensure all args necessary are included, are valid, and in the correct format, or script will fail with an error message.

Removed need for prompts in troubleshooting function if nginx conf files exist, if not, prompt for input.

Added repo url verification.

Added DNS tests to hopefully ensure install won't occur if DNS not properly configured.

Reworked hostname and root domain input verification to allow for domains ending in .co.uk and similar.

Added troubleshooting, backup, and restore via cli args.

Added webroot letsencrypt certificate option with automatic post renewal service restart.

Added generation of log files for each major function/section.

Added sudo password cli arg for fully automated runs, with automated removal of script run command and passed password from history.

Added backup of existing nginx conf files (including default nginx.conf) during install, update, and restore.

Added default nginx.conf file to replace version shipped with OS, as it often has insecure options enabled by default.

Ran through shellscript checker to "clean up" potential issues with formatting and syntax.

Reworked postgres db import command to avoid occasional failure during restore operation.

Added removal of old nginx enabled-mods from prior to 0.14.3

Added pre-start command in daphne service definition to remove old stinky socks in case of system crash/power loss per https://github.com/amidaware/tacticalrmm/issues/1210

Modified mesh variable case structure to match mesh documentation.

Added DNS txt check during cert generation to prevent timeouts and over limit attempts per https://github.com/amidaware/tacticalrmm/issues/1227

Added support for Ubuntu 22.04 via manual installation of libssl1.1.1l


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/amidaware/tacticalrmm/pull/1216 **Author:** [@ninjamonkey198206](https://github.com/ninjamonkey198206) **Created:** 7/19/2022 **Status:** 🔄 Open **Base:** `develop` ← **Head:** `develop-installer-update` --- ### 📝 Commits (10+) - [`3ff4242`](https://github.com/amidaware/tacticalrmm/commit/3ff42423c54fd0cf21d322492ad79ea204dbba8c) Update meshcentral.conf - [`fbd0164`](https://github.com/amidaware/tacticalrmm/commit/fbd01646209061b2e4f734ca5b0ba01f36473f00) Update rmm.conf - [`1f30e57`](https://github.com/amidaware/tacticalrmm/commit/1f30e57db25b9a618329b035f4a4fd3bdd508e8b) Update config.json - [`84e941b`](https://github.com/amidaware/tacticalrmm/commit/84e941b72ae9ebe069a23b811b0d1c07b7b5c3f5) Update local_settings.py - [`9a97fae`](https://github.com/amidaware/tacticalrmm/commit/9a97faed110a09bb01f2a8baabbe2fa8f01c4fa2) Merge branch 'amidaware:develop' into develop - [`757104a`](https://github.com/amidaware/tacticalrmm/commit/757104a3dbcb2b56b3cb1a4fd360b7aba3980ca6) Merge branch 'amidaware:develop' into develop - [`9a9789d`](https://github.com/amidaware/tacticalrmm/commit/9a9789de2c4f269e6500f7b9f188fed561dd2cce) Update app.ini - [`31e0aad`](https://github.com/amidaware/tacticalrmm/commit/31e0aad57a7969979f31dd93f6cde8bd60f8e32a) Merge branch 'amidaware:develop' into develop - [`ebc5fc2`](https://github.com/amidaware/tacticalrmm/commit/ebc5fc2e682b157f1575d302f56590455cc4ad37) Merge branch 'amidaware:develop' into develop - [`9b99d9b`](https://github.com/amidaware/tacticalrmm/commit/9b99d9b56abe7f6f5b37662710a37a06909da6b8) Update frontend.conf ### 📊 Changes **31 files changed** (+3795 additions, -2 deletions) <details> <summary>View changed files</summary> 📝 `.vscode/settings.json` (+3 -0) 📝 `api/tacticalrmm/core/management/commands/pre_update_tasks.py` (+1 -1) 📝 `api/tacticalrmm/tacticalrmm/utils.py` (+1 -1) ➕ `default-configs/celery/celery.conf` (+16 -0) ➕ `default-configs/mesh/config.json` (+34 -0) ➕ `default-configs/nginx/frontend.conf` (+41 -0) ➕ `default-configs/nginx/meshcentral.conf` (+47 -0) ➕ `default-configs/nginx/nginx.conf` (+25 -0) ➕ `default-configs/nginx/rmm.conf` (+88 -0) ➕ `default-configs/python/local_settings.py` (+25 -0) ➕ `default-configs/uwsgi/app.ini` (+24 -0) ➕ `installer-util.sh` (+448 -0) ➕ `script-cfg/01-InputAndError.cfg` (+47 -0) ➕ `script-cfg/02-MiscFunctions.cfg` (+391 -0) ➕ `script-cfg/03-SystemInfoFunctions.cfg` (+114 -0) ➕ `script-cfg/04-UserInput.cfg` (+266 -0) ➕ `script-cfg/05-NetworkFunctions.cfg` (+70 -0) ➕ `script-cfg/06-InstallFunctions.cfg` (+363 -0) ➕ `script-cfg/07-DatabaseFunctions.cfg` (+21 -0) ➕ `script-cfg/08-CertificateFunctions.cfg` (+235 -0) _...and 11 more files_ </details> ### 📄 Description Merged all scripts into a single cfg file, then split into further function type specific cfg files with their own update checks. Added menu with options for previous individual script functions. Added commenting in many locations. Combined previous scripts into reusable functions where possible. Added default config and service files, reducing the required output for those functions to a simple copy and sed command for each. Added menu options for dev installs per Dinger and Silver. Added option to select dev repo during dev install. Added DH generation and config to nginx config files. Added STS setting to nginx configs per https://syslink.pl/cipherlist/ Added check for localhost per https://github.com/amidaware/tacticalrmm/issues/779 Updated gpg key import for repos to modern method, as previous method is now deprecated. Added option to import existing cert, key, and ca chain cert using vim editor. Muahahahahahahaha! Imported certs are created in the same location if letsencrypt certs are not generated. Added input verification where appropriate to prevent user error during entry. Added option for manual input of usernames and passwords. Added option for Fail2ban install. Added LetsEncrypt cert renewal function. Added check to verify if user running script is tactical user. Added check to verify tactical user has sudo privileges. Added tactical user creation if it does not exist. Added command-line argument usage for automated installs. Included checks to ensure all args necessary are included, are valid, and in the correct format, or script will fail with an error message. Removed need for prompts in troubleshooting function if nginx conf files exist, if not, prompt for input. Added repo url verification. Added DNS tests to hopefully ensure install won't occur if DNS not properly configured. Reworked hostname and root domain input verification to allow for domains ending in .co.uk and similar. Added troubleshooting, backup, and restore via cli args. Added webroot letsencrypt certificate option with automatic post renewal service restart. Added generation of log files for each major function/section. Added sudo password cli arg for fully automated runs, with automated removal of script run command and passed password from history. Added backup of existing nginx conf files (including default nginx.conf) during install, update, and restore. Added default nginx.conf file to replace version shipped with OS, as it often has insecure options enabled by default. Ran through shellscript checker to "clean up" potential issues with formatting and syntax. Reworked postgres db import command to avoid occasional failure during restore operation. Added removal of old nginx enabled-mods from prior to 0.14.3 Added pre-start command in daphne service definition to remove old stinky socks in case of system crash/power loss per https://github.com/amidaware/tacticalrmm/issues/1210 Modified mesh variable case structure to match mesh documentation. Added DNS txt check during cert generation to prevent timeouts and over limit attempts per https://github.com/amidaware/tacticalrmm/issues/1227 Added support for Ubuntu 22.04 via manual installation of libssl1.1.1l --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/tacticalrmm#3792
No description provided.