- Install Python 3.9 or later
- Install required package(s) using the command
pip install -r requirements.txt
- Open another new terminal window and change directory into src/client
- Run the command
python -m src/client/index.py
to start the client. Note - the private key's passphrase is "pass"
- Open a new terminal window and change directory into the src/server
- Run the command
python -m src/server/index.py
to start the server.
- Edit src/client/config.ini and change the username
- Use the web interface to add/edit/del users
- Manually edit the src/admin/data/users.csv file
The keypair will be generated on the client via its GUI interface. The public key must be located on the server prior to connection, else the server will not be able to authenticate the client. There are several ways to transfer the keys
- Using a secure protocol, such as via SSH
- Physically, such as via USB
auth/
- handles api calls to authd
controllers/
- contains flow control logic
keys/
- contains public key pair
util/
- conatins helper functions
views/
- contains display data for GUI
config.ini
- application settings
index.py
- main application entry-point
logs.txt
- camera logs
auth/
- handles api requests to authd
build/
- contain webinterface files
data/
- contains ftp files and userlist file, users.csv
models/
- allows access and manipulation to .csv files
util/
- contains helper functions
authd.py
- authorisation server logic
ftpd.py
- ftp server logic
httpd.py
- web interface server logic
index.py
- main application entry-point