parent
87008043db
commit
ff3e3dcd0f
64
server/README.md
Normal file
64
server/README.md
Normal file
|
@ -0,0 +1,64 @@
|
|||
# HCRA Server
|
||||
|
||||
This is the server for HamClock Remote Access. It is a Python web app written
|
||||
using Tornado.
|
||||
|
||||
On its own, the server is useless; it requires HamClock, available at
|
||||
http://clearskyinstitute.com/ham/HamClock/ (installed on the same machine as
|
||||
the HCRA server), and the HCRA client (see `../client`).
|
||||
|
||||
## Installation
|
||||
|
||||
The server itself does not need to be installed; it is simply run with
|
||||
`python3 wss.py` in this directory. However, it does have some dependencies
|
||||
(both Python packages and binaries).
|
||||
|
||||
### Python packages
|
||||
|
||||
pip3 install -r requirements.txt
|
||||
|
||||
### Binaries
|
||||
|
||||
#### Ubuntu, Mint, possibly Debian, etc.
|
||||
|
||||
sudo apt install $(cat ubuntu-pkgs.txt)
|
||||
|
||||
#### Other distros
|
||||
|
||||
Unfortunately, I only have Mint computers, so I can't help with other
|
||||
distros.
|
||||
|
||||
You will need the following:
|
||||
|
||||
* ImageMagick 6
|
||||
* X11 development headers
|
||||
* `Xvfb`
|
||||
* `xdotool`
|
||||
* `xwd`
|
||||
|
||||
## Backends
|
||||
|
||||
The server can connect to HamClock in one of two ways; it can either use
|
||||
HamClock's built-in port 8080 service, or it can use X11. The X11 method is
|
||||
highly recommended when it can be used, because it does not occasionally
|
||||
freeze when HamClock is on certain screens like the port 8080 backend does.
|
||||
|
||||
## `conf.txt`
|
||||
|
||||
The server will not work without a `conf.txt` file. This file is a
|
||||
space-separated table of configuration data. See the included file for a
|
||||
reference. (That file will work for testing, but should not be used on an
|
||||
Internet-accessible server. The password is `Testing123`. It uses the X11
|
||||
backend, `DISPLAY=:1`.)
|
||||
|
||||
### `backend`
|
||||
|
||||
Use `x11` for the X11 backend, or `port8080` for the port 8080 backend.
|
||||
|
||||
### `display`
|
||||
|
||||
X11 display to use, such as `:1`. Has no effect with the `port8080` backend.
|
||||
|
||||
### `password_argon2`
|
||||
|
||||
Argon2-hashed password. Use `pwhash.py` to generate a hashed password.
|
6
server/pwhash.py
Normal file
6
server/pwhash.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
import argon2
|
||||
import getpass
|
||||
|
||||
password = getpass.getpass('Password: ')
|
||||
|
||||
print(f'password_argon2 {argon2.hash_password(password.encode("utf-8")).decode("utf-8")}')
|
3
server/requirements.txt
Normal file
3
server/requirements.txt
Normal file
|
@ -0,0 +1,3 @@
|
|||
argon2-cffi
|
||||
requests
|
||||
tornado
|
5
server/ubuntu_pkgs.txt
Normal file
5
server/ubuntu_pkgs.txt
Normal file
|
@ -0,0 +1,5 @@
|
|||
imagemagick
|
||||
libx11-dev
|
||||
x11-apps
|
||||
xdotool
|
||||
xvfb
|
Loading…
Reference in New Issue
Block a user