A file server that allows to access files with a OTP-based authentication. This server offers a simple interface, but also allows it do integrate into your application through the endpoints, as it's stateless and relies on an up-to-date OTP.
- Set environment variables in
docker-compose.yml
- Run
docker-compose up
- Check branch
release/x.x
- Download
otp-filemanager-x.x.tar
- Set variables in
.env
(see below) - Run
./otp-filemanager-x.x
- Run
./scripts/setup.sh
- Set
HTTPPORT
- Set
IDSEED
to a random numeric sequence - Set
ISSUER
to your service name with URL compatible characters - Set
PERIOD
to seconds a OTP is valid - Set
MAXFILESIZEMB
to set the max size for an uploaded file - Set
MODIFIER
to set how the files and users are managed - Set
KEY
to a random 32 long string for encryption. Leave empty to disable it - Set
EXPIRATIONTIME
to set how long a user should exist until deleted in minutes. Set 0 for infinity
go run main.go
The authentication relies on a randomly generated username and OTP (currently only TOTP). The password has to be up-to-date, as no other authentication method is used for the user actions.
Files and user related information are saved directly to the file system.
When using release/1.2
and above, there is the possibility to enable encryption.
- Extensive load and security tests
- Extend to other OTP methods other than TOTP
- Implement alternative methods of saving users and files