diff --git a/docs/HowToHelp/DevSetupPipVScode.md b/docs/HowToHelp/DevSetupPipVScode.md index 6c6b5729..1cdbfffb 100644 --- a/docs/HowToHelp/DevSetupPipVScode.md +++ b/docs/HowToHelp/DevSetupPipVScode.md @@ -139,7 +139,7 @@ open VS Code Explorer to the location of the FreeTAKServer project ### FTS YAML File -In the folder containing FreeTakServer repo create a file: +In the folder containing the FreeTakServer repo create a file: `FTSConfig.yaml` diff --git a/docs/Installation/mechanism/Ansible/ZeroTouchInstall.md b/docs/Installation/mechanism/Ansible/ZeroTouchInstall.md index 0564260f..976ca2b0 100644 --- a/docs/Installation/mechanism/Ansible/ZeroTouchInstall.md +++ b/docs/Installation/mechanism/Ansible/ZeroTouchInstall.md @@ -40,9 +40,11 @@ This `ZTI` installs and configures FreeTAKHub components on a single device. ### Services Status This command will output the status of these services ``` -sudo systemctl status fts.service fts-ui.service mumble-server.service nodered.service mediamtx.service +sudo systemctl status fts.service fts-ui.service mumble-server.service nodered.service rtsp-simple-server.service ``` +Note:: `rtsp-simple-server` is also known as `mediamtx`. + [how to start / stop / enable a service?](../../../Troubleshooting/Service.md) @@ -220,7 +222,7 @@ wget -qO - bit.ly/freetakhub2 | sudo bash -s -- --legacy ??? tip "testing a forked repository." ```console - export MY_IPA=10.2.118.124 + export MY_IPA=10.2.118.126 export MY_REPO=babeloff wget -qO - https://raw.githubusercontent.com/${MY_REPO}/FreeTAKHub-Installation/main/scripts/easy_install.sh | sudo bash -s -- --ip-addr ${MY_IPA} --repo https://github.com/${MY_REPO}/FreeTAKHub-Installation.git ``` diff --git a/docs/Installation/mechanism/Manual/Installation.md b/docs/Installation/mechanism/Manual/Installation.md index 6cff2c94..70d9abae 100644 --- a/docs/Installation/mechanism/Manual/Installation.md +++ b/docs/Installation/mechanism/Manual/Installation.md @@ -2,7 +2,7 @@ # FreeTAK Server Installation This guide will walk you through installing FreeTAKServer 2.x -## 0. Document Goals +## Document Goals - Prepare host OS - Install FreeTAKServer @@ -13,7 +13,7 @@ This guide will walk you through installing FreeTAKServer 2.x - **TBD** ~~Install the [Video Service](../../../administration/brokered/Video/Installation.md)~~ --- -## Note: Linux Distributions +### Note: Linux Distributions The main supported OS is Ubuntu 22.04. Due to cross-compatibility, Debian 10 and the latest Raspbian also work. @@ -21,7 +21,7 @@ Due to cross-compatibility, Debian 10 and the latest Raspbian also work. Centos/RHEL/Fedora installation instructions are provided on a best-effort volunteer basis. --- -## 1. Update OS Packages +## Update OS Packages Update OS Packages before proceeding with the installation @@ -46,7 +46,7 @@ sudo dnf update --- -## 2. Pre-requisite Software +## Pre-requisite Software Install packages from the distro repo @@ -100,7 +100,7 @@ source venv/bin/activate --- -## 3. Install Python Libraries +## Install Python Libraries
@@ -128,7 +128,7 @@ pip install wheel pycairo
--- -## 4. Remove Old Installation +## Remove Old Installation **YOU MUST DO THIS IF:** - Free TAK Server has been installed before @@ -172,7 +172,7 @@ sudo rm /opt/FTS/FTSDataBase.db --- -## 5. Install FreeTAKServer +## Install FreeTAKServer Install the FreeTAKServer and the associated Web UI
@@ -223,7 +223,7 @@ This will download and install version 0.2.0.13 of FreeTAKServer. If no version
--- -## 6. Check Installation +## Check Installation The pip utility allows the user to check the installation and dependency status of a package. @@ -237,7 +237,7 @@ Otherwise, there was an issue with the pip installation, and you should investigate the pip-generated installation logs for more information. --- -## 7. Configure and Run FreeTAKServer +## Configure and Run FreeTAKServer FTS versions older than 1.9 are not configured this way. For versions <1.9 you will need to locate older versions of this document in the repo history. @@ -309,12 +309,12 @@ In virtualenv installations, it is inside the virtualenv directory. The wizard creates the YAML configuration file under the location you selected, -the default location is `/opt/FTSConfig.yaml`. +the default location is `/opt/fts/FTSConfig.yaml`. FreeTAKServer will then proceed start all the services. --- -## 7. FTS Configuration +## FTS Configuration ### Manual `FTSConfig.yaml` !!! warning @@ -335,7 +335,8 @@ ConnectionMessage = f'Welcome to FreeTAKServer {version}. The Parrot is not dead ``` --- -## 9. FTS-UI Configuration + +## FTS-UI Configuration Edit the `config.py` file in the `FreeTAKServer-UI` directory where it was installed by pip @@ -423,7 +424,7 @@ app.config['SYSSTATUSINTERVAL'] = '600000'; app.config['DATAPACKAGESIZELIMIT'] = '15360000'; ``` -### 10. Start UI +### Start UI In the terminal, navigate to the `FreeTAKServer-UI` directory wherever it was installed by the pip utility. @@ -459,7 +460,7 @@ to that shown below. ``` --- -## 11. Next Steps +## Next Steps ### Create a service @@ -486,7 +487,7 @@ IP = '[FTS external IP]' APPIP = '[FTS-UI internal IP]' ``` -## 12. Check Installation +## Check Installation After finishing all the steps, make sure your configuration is acceptable and server running properly. diff --git a/docs/Installation/mechanism/Manual/Manual.md b/docs/Installation/mechanism/Manual/Manual.md index 31ffae29..ffcb6ab5 100644 --- a/docs/Installation/mechanism/Manual/Manual.md +++ b/docs/Installation/mechanism/Manual/Manual.md @@ -31,7 +31,7 @@ if you are running as root, `/root` is a good choice. Original Value ```python # this should be set before startup -DBFilePath = str(r'/opt/FTSDataBase.db') +DBFilePath = str(r'/opt/fts/FTSDataBase.db') ``` As roots Home Folder diff --git a/docs/Installation/platform/Cloud/AWS.md b/docs/Installation/platform/Cloud/AWS.md index 04a13113..82a9567d 100644 --- a/docs/Installation/platform/Cloud/AWS.md +++ b/docs/Installation/platform/Cloud/AWS.md @@ -67,7 +67,7 @@ If anything fails, check IP values in the following files: ### config.py -ZTI installs this file in /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py +ZTI installs this file in /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py * APPIP: Internal IP * IP: Public IP diff --git a/docs/Installation/platform/Windows/Windows_Manual_Install.md b/docs/Installation/platform/Windows/Windows_Manual_Install.md index 39205be0..8b5661aa 100644 --- a/docs/Installation/platform/Windows/Windows_Manual_Install.md +++ b/docs/Installation/platform/Windows/Windows_Manual_Install.md @@ -169,14 +169,14 @@ Configure the `FreeTakServer` by editing the `\FreeTAKServer\core Path examples: * native Windows install: `C:\Software\python\Lib\site-packages\FreeTAKServer\core\configuration\MainConfig.py` -* ZTI python virtual environment: `/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/core/configuration/MainConfig.py` +* ZTI python virtual environment: `/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/core/configuration/MainConfig.py` * conda env named `tak`: `C:\Users\user\micromamba\envs\tak\Lib\site-packages\FreeTAKServer\core\configuration\MainConfig.py` Configure the `FreeTAKServer-UI` by editing the `\FreeTAKServer-UI\config.py` file. Path examples: * native Windows install: `C:\Software\python\Lib\site-packages\FreeTAKServer-UI\config.py` -* ZTI python virtual environment: `/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py` +* ZTI python virtual environment: `/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py` * conda env named `tak`: `C:\Users\user\micromamba\envs\tak\Lib\site-packages\FreeTAKServer-UI\config.py` ```text diff --git a/docs/Troubleshooting/ManualConfiguration.md b/docs/Troubleshooting/ManualConfiguration.md index 914a34f2..021b5dc2 100644 --- a/docs/Troubleshooting/ManualConfiguration.md +++ b/docs/Troubleshooting/ManualConfiguration.md @@ -31,14 +31,14 @@ if you are running as root, `/root` is a good choice. Original Value ```python # this should be set before startup -DBFilePath = str(r'/opt/FTSDataBase.db') +DBFilePath = str(r'/opt/fts/FTSDataBase.db') ``` As roots Home Folder ```python # this should be set before startup -DBFilePath = str(r'/root/FTSDataBase.db') +DBFilePath = str(r'/opt/fts/FTSDataBase.db') ``` ### MySQL database FTS supports an abstraction layer, so it's easy to use a different database like MySQL. diff --git a/docs/Troubleshooting/Service.md b/docs/Troubleshooting/Service.md index 04021a34..560d6eba 100644 --- a/docs/Troubleshooting/Service.md +++ b/docs/Troubleshooting/Service.md @@ -32,7 +32,7 @@ While they can grow to be complex, they are usually very simple. ### background The main directive is ExecStart, which specifies the command that should be run when the service is started. The command is ```bash -/usr/bin/python3 /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py. +/usr/bin/python3 /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py. ``` Here's what each part of the command does: @@ -42,12 +42,12 @@ Here's what each part of the command does: -m : This option tells Python to run a module as a script. -/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py +/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py : This is the path to the Python module that should be run as a script. So when the service is started, the Python interpreter will run the `run.py` module -located in the `/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/` directory. +located in the `/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/` directory. This code above is running `FreeTAKServer-UI`, which is a user interface for `FreeTAKServer`. diff --git a/docs/Troubleshooting/SocketIssue.md b/docs/Troubleshooting/SocketIssue.md index 62abda70..e299982d 100644 --- a/docs/Troubleshooting/SocketIssue.md +++ b/docs/Troubleshooting/SocketIssue.md @@ -36,7 +36,7 @@ sudo reboot -n !!! note The FTS certs directory can generally be found at ```shell - /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs + /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs ``` # SSL issue: Change the Number of max file open diff --git a/docs/Troubleshooting/fts-core-server.md b/docs/Troubleshooting/fts-core-server.md index 8324feac..61b74d48 100644 --- a/docs/Troubleshooting/fts-core-server.md +++ b/docs/Troubleshooting/fts-core-server.md @@ -3,31 +3,66 @@ ![image](../Installation/images/zero-touch-deply-default.png) -Some of these services have a secure and a clear instance. -The core consists of the following logical elements (with the indicated default ports): +## Components -* API Service - * REST instance (port 19023) - * websocket instance (port 19023) -* DP Service - * SSL instance (port 8443) - * Clear instance (port 8080) -* Federation Service - * Clear instance (port 9000) -* CoT Service - * SSL instance (port 8089) - * Clear instance (port 8087) +The core consists of several logical components. +They are all TCP ports, some encrypted via SSL and some in the clear. -## API Service +Note:: The indicated ports are default values. +### Application Programming Interface (API) Service -## DP Service +* REST instance (port 19023) +* websocket instance (port 19023) +### Digital Py (DP) Service -## Federation Service +* SSL instance (port 8443) +* Clear instance (port 8080) +### Federation Service + +* Clear instance (port 9000) ## CoT Service +* SSL instance (port 8089) +* Clear instance (port 8087) + +## Reconfiguration + +The `ZeroTouch` installer makes assumptions configuring the system. +There are corner cases which `ZeroTouch` will miss. +For example, `ZTI` acquires the IP address by, effectively using: +```bash +curl https://ifconfig.me/ip +``` +In several environments this produces the desired result. +In the case where the server is not on the public internet, +this result will be incorrect. +The following is more likely to provide the IP address you want. +```bash +ip addr +``` + +[Verify and/or Edit the `fts` configuration file](../administration/usingConsole.md) +``` +/opt/fts/FTSConfig.yaml +``` + +Here is a fragment of that configuration file. +```yaml +Addresses: + FTS_COT_PORT: 8087 + FTS_SSLCOT_PORT: 8089 + FTS_DP_ADDRESS: 127.0.0.1 + FTS_USER_ADDRESS: 127.0.0.1 + FTS_API_PORT: 19023 + FTS_FED_PORT: 9000 + FTS_API_ADDRESS: 127.0.0.1 +``` +Adjust `FTS_DP_ADDRESS`, `FTS_USER_ADDRESS` & `FTS_API_ADDRESS` +to reflect your IP (or ZeroTier IP) address. + diff --git a/docs/Troubleshooting/fts-server.md b/docs/Troubleshooting/fts-server.md deleted file mode 100644 index a4230748..00000000 --- a/docs/Troubleshooting/fts-server.md +++ /dev/null @@ -1,40 +0,0 @@ - -# Free TAK Server : core - -![image](../Installation/images/zero-touch-deply-default.png) - -## Zero Touch Installer - -`ZeroTouch` makes assumptions configuring the system. -However, there are many corner cases which `ZeroTouch` may miss. -For example, `ZTI` acquires the IP address by, effectively using: -```bash -curl http://ifconfig.me/ip -``` -In many environments this produces the desired result. -In cases, not on the public internet, this result will be incorrect. -The following is more likely to be what you want. -```bash -ip addr -``` - -Validate the properties set in the `fts-ui` configuration file. - -[Verify and/or Edit the `fts` configuration file](../administration/usingConsole.md) -``` -/opt/FTSConfig.yaml -``` -Here is a fragment of that configuration file. -```yaml -Addresses: - FTS_COT_PORT: 8087 - FTS_SSLCOT_PORT: 8089 - FTS_DP_ADDRESS: 127.0.0.1 - FTS_USER_ADDRESS: 127.0.0.1 - FTS_API_PORT: 19023 - FTS_FED_PORT: 9000 - FTS_API_ADDRESS: 127.0.0.1 -``` -Adjust `FTS_DP_ADDRESS`, `FTS_USER_ADDRESS` & `FTS_API_ADDRESS` -to reflect your IP (or ZeroTier IP) address. - diff --git a/docs/Troubleshooting/fts-ui-server.md b/docs/Troubleshooting/fts-ui-server.md index 57760b47..ef46dbac 100644 --- a/docs/Troubleshooting/fts-ui-server.md +++ b/docs/Troubleshooting/fts-ui-server.md @@ -40,7 +40,7 @@ Validate the properties set in the `fts-ui` configuration file. [Verify and/or Edit the `fts-ui` configuration file](../administration/usingConsole.md) Use of a python virtual environment (here the ZTI location) is recommended. ``` -/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py +/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py ``` Here is a sample fragment of that file. ```python diff --git a/docs/Troubleshooting/fts-ui.service b/docs/Troubleshooting/fts-ui.service index 55f53243..e12f3f75 100644 --- a/docs/Troubleshooting/fts-ui.service +++ b/docs/Troubleshooting/fts-ui.service @@ -7,7 +7,7 @@ StartLimitIntervalSec=0 Type=simple Restart=always RestartSec=1 -ExecStart=/usr/bin/python3 -m /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py +ExecStart=/usr/bin/python3 -m /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/docs/Troubleshooting/troubleshooting_faq.md b/docs/Troubleshooting/troubleshooting_faq.md index 094d58ac..3d7031f8 100644 --- a/docs/Troubleshooting/troubleshooting_faq.md +++ b/docs/Troubleshooting/troubleshooting_faq.md @@ -38,34 +38,35 @@ Addresses: FTS_FED_PORT: 9000 FTS_API_ADDRESS: [YOUREXTERNALIP] FileSystem: - FTS_CONFIG_PATH: /opt/FTSConfig.yaml - FTS_DB_PATH: /opt/FreeTAKServer.db + FTS_CONFIG_PATH: /opt/fts/FTSConfig.yaml + FTS_DB_PATH: /opt/fts/FreeTAKServer.db FTS_COT_TO_DB: True - FTS_MAINPATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer - FTS_CERTS_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs - FTS_EXCHECK_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck - FTS_EXCHECK_TEMPLATE_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck/template - FTS_EXCHECK_CHECKLIST_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck/checklist - FTS_DATAPACKAGE_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/FreeTAKServerDataPackageFolder - FTS_LOGFILE_PATH: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/Logs + FTS_MAINPATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer + FTS_CERTS_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs + FTS_EXCHECK_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck + FTS_EXCHECK_TEMPLATE_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck/template + FTS_EXCHECK_CHECKLIST_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/ExCheck/checklist + FTS_DATAPACKAGE_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/FreeTAKServerDataPackageFolder + FTS_LOGFILE_PATH: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/Logs Certs: - FTS_SERVER_KEYDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key - FTS_SERVER_PEMDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.pem - FTS_TESTCLIENT_PEMDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/Client.pem - FTS_TESTCLIENT_KEYDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/Client.key - FTS_UNENCRYPTED_KEYDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key.unencrypted - FTS_SERVER_P12DIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.p12 - FTS_CADIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/ca.pem - FTS_CAKEYDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/ca.key - FTS_FEDERATION_CERTDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.pem - FTS_FEDERATION_KEYDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key - FTS_CRLDIR: /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/FTS_CRL.json + FTS_SERVER_KEYDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key + FTS_SERVER_PEMDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.pem + FTS_TESTCLIENT_PEMDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/Client.pem + FTS_TESTCLIENT_KEYDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/Client.key + FTS_UNENCRYPTED_KEYDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key.unencrypted + FTS_SERVER_P12DIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.p12 + FTS_CADIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/ca.pem + FTS_CAKEYDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/ca.key + FTS_FEDERATION_CERTDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.pem + FTS_FEDERATION_KEYDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/server.key + FTS_CRLDIR: /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer/certs/FTS_CRL.json FTS_FEDERATION_KEYPASS: [YOURPASS] FTS_CLIENT_CERT_PASSWORD: [YOURPASS] FTS_WEBSOCKET_KEY: [YOURPASS] ``` ## after XXX months of use the disk is full + * FTS writes the output of the service to a log located here: ``` /var/log/fts/fts-stdout.log @@ -73,14 +74,15 @@ Certs: * depending on inbound traffic, this can become very large and subsequently, need to be manually deleted ## My XXX component is not connecting / showing + for fts check out ``` -/opt/FTSConfig.yaml +/opt/fts/FTSConfig.yaml ``` for the UI check out ``` -/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py +/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py or /usr/local/lib/python3.11/dist-packages/FreeTAKServer-UI/config.py ``` diff --git a/docs/administration/.pages b/docs/administration/.pages index e5b02373..dcbe4848 100644 --- a/docs/administration/.pages +++ b/docs/administration/.pages @@ -1,4 +1,5 @@ nav: + - Configuration: Operation - Command Line Interface (CLI): CLI.md - Secure Socket Layer (SSL): SSL.md - Using the Console: usingConsole.md diff --git a/docs/administration/Operation/fts-config.md b/docs/administration/Operation/fts-config.md index b34c1cef..eccc20c8 100644 --- a/docs/administration/Operation/fts-config.md +++ b/docs/administration/Operation/fts-config.md @@ -6,7 +6,7 @@ However, there are many corner cases which `ZeroTouch` may miss. ### [Verify and/or Edit the `fts-ui` configuration file](../usingConsole.md) ```text -/root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py +/opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/config.py or /usr/local/lib/python3.11/dist-packages/FreeTAKServer-UI/config.py ``` @@ -17,8 +17,8 @@ see [these notes](../../Troubleshooting/fts-ui-server.md). ### [Verify and/or Edit the `fts` configuration file](../usingConsole.md) ```text -/opt/FTSConfig.yaml +/opt/fts/FTSConfig.yaml ``` For specific instructions on validating the configuration, -see [these notes](../../Troubleshooting/fts-server.md). \ No newline at end of file +see [these notes](../../Troubleshooting/fts-core-server.md). \ No newline at end of file diff --git a/docs/administration/Web_Admin.md b/docs/administration/Web_Admin.md index 4fa8dca2..0a138f92 100644 --- a/docs/administration/Web_Admin.md +++ b/docs/administration/Web_Admin.md @@ -68,7 +68,7 @@ nohup sudo python3 -m FreeTAKServer.controllers.services.FTS Start the WebUI ```bash -nohup sudo python3 /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py +nohup sudo python3 /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/run.py ``` # Basics diff --git a/docs/administration/brokered/Voice/VoiceServer.md b/docs/administration/brokered/Voice/VoiceServer.md index 6779364a..b5b7400d 100644 --- a/docs/administration/brokered/Voice/VoiceServer.md +++ b/docs/administration/brokered/Voice/VoiceServer.md @@ -106,7 +106,7 @@ users= registerName=ftsmurmur ; If you have generated a proper SSL certificate using the instructions above, you can provide the filenames here. ; Otherwise, Murmur will create its own certificate automatically. -sslCert=/opt/ftsmurmur.cer -sslKey=/opt/ftsmurmur.key +sslCert=/opt/fts/ftsmurmur.cer +sslKey=/opt/fts/ftsmurmur.key ``` examine the complete file for more settings. diff --git a/docs/administration/usingConsole.md b/docs/administration/usingConsole.md index 54b0c417..a5058e6e 100644 --- a/docs/administration/usingConsole.md +++ b/docs/administration/usingConsole.md @@ -5,12 +5,12 @@ The suggested way to edit Configuration files is by using [WinSCP](../Installati However, if you need to edit files in the console you need to use `vim`. * Open a console - * go to ```cd /root/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/app``` + * go to ```cd /opt/fts.venv/lib/python3.11/site-packages/FreeTAKServer-UI/app``` * type ```ls``` to see the list of files * type ```vim __init__.py``` - * To go into write mode type 'i'. - * do your edits - * to exit from insert mode by pressing the Esc key. - * To write a command type semicolon - and then type the command `:wq!` or `:x!` (both do the same thing) - * hit ENTER (to save and exit). + * begin insert mode by typing 'i'. + * insert your edits + * leave insert mode by pressing the `Esc` key. + * write and quit by entering either `:wq!` or `:x!` (both do the same thing) + * starting command mode is via `:` + * hit ENTER (to save and exit) diff --git a/docs/index.md b/docs/index.md index f1b2ec8a..1465ddae 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,9 +1,58 @@ # FreeTAKServer + FTS Logo -FreeTAKServer (FTS) is a Python3 implementation of the TAK Server -which services client devices like +FreeTAKServer (FTS) is a Python3 implementation of a TAK Server. + +## Quick Start + +The easiest way to install FTS is to use our Ansible based ZeroTouch Installer. + +There are two recommended platforms. +you may be able to simply use one of the following: + +### Cloud: DigitalOcean + +[Create a droplet with Ubuntu 22.04 as the OS.](./Installation/platform/Cloud/DigitalOcean.md) +```bash +wget -qO - bit.ly/freetakhub2 | sudo bash +``` +??? tip "Alternate, full path." + ```bash + wget -qO - https://raw.githubusercontent.com/FreeTAKTeam/FreeTAKHub-Installation/main/scripts/easy_install.sh | sudo bash + ``` + +### Single Board Computer: Raspberry Pi 4 + +[Create an `sdcard` with Ubuntu 22.04 server x64 as the OS](./Installation/platform/RaspberryPi/Installation.md). + +This case is not quite 'zero-touch' as you will need to first identify the IP address of your Raspberry Pi +and set an environment variable. +```bash +export MY_IPA= +``` +??? example "Here is an example capturing the wired LAN address:" + ```bash + export MY_IPA=$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}') + ``` + +```bash +wget -qO - bit.ly/freetakhub2 | sudo bash -s -- --ip-addr ${MY_IPA} +``` +??? tip "Alternate, full path." + ```bash + wget -qO - https://raw.githubusercontent.com/FreeTAKTeam/FreeTAKHub-Installation/main/scripts/easy_install.sh | sudo bash -s -- --ip-addr ${MY_IPA} + ``` + +### Other + +We can not predict all the ways in which these base cases may vary. +In that case you will need to read the [ZeroTouch Installer](Installation/mechanism/Ansible/ZeroTouchInstall.md). + +## Overview + +A TAK Server, like FTS, services end user devices running client applications such as... [`ATAK-CIV`](https://play.google.com/store/apps/details?id=com.atakmap.app.civ), [`WinTAK`](https://www.civtak.org/2020/09/23/wintak-is-publicly-available/), and [`iTAK`](https://apps.apple.com/us/app/itak/id1561656396). @@ -33,9 +82,6 @@ The following features are in the pipeline for the 2.x family: Check out our [roadmap](https://github.com/FreeTAKTeam/FreeTakServer/milestones?direction=asc&sort=due_date&state=open) to see everything we have planned. -## Shut Up and take my money! -The easiest way to install FTS is to use our signature [ZeroTouch Installer](Installation/mechanism/Ansible/ZeroTouchInstall.md). - ## Community This project is currently in the *Early Production Stage*. @@ -56,10 +102,12 @@ We have created the [FreeTAKTeam YouTube channel is @freetakteam](https://www.yo ### Tell us what you think! To discuss with our active developers, you may use: + - The [FTS Discord](https://discord.gg/m8cBzQM2te) Server ### Others - - Are you a fellow Redditor? Join us on the [TAK subreddit](https://www.reddit.com/r/ATAK/)! + +- Are you a fellow Redditor? Join us on the [TAK subreddit](https://www.reddit.com/r/ATAK/)! ### Donate Back The FreeTAKTeam is working daily developing an open solution.