57 lines
1.7 KiB
Markdown
57 lines
1.7 KiB
Markdown
# Pssecret
|
|
|
|
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
|
|
|
|
Pssecret is self-hosted service to share secrets (like passwords) with somebody
|
|
over the network, but don't want them to appear in chats, unencrypted e-mails, etc.
|
|
|
|
This service tries to be as anonymous as possible. The only personal information that will be stored
|
|
on a server will be IP address of the client that made request to the server.
|
|
|
|
Service is built with Python, FastAPI and is using Redis for data storage.
|
|
|
|
## Installation
|
|
|
|
### Requirements
|
|
|
|
- Python 3.11+
|
|
- Redis
|
|
- Python development libraries (optional, only needed for `hiredis` module installation)
|
|
|
|
### How to install
|
|
|
|
The recommended installation method is with the [pipx](https://pipx.pypa.io/stable/)
|
|
|
|
```console
|
|
$ pipx install pssecret
|
|
```
|
|
|
|
For faster performance, install application with [hiredis](https://github.com/redis/hiredis) support.
|
|
|
|
```console
|
|
$ pipx install pssecret[hiredis]
|
|
```
|
|
|
|
### Running Pssecret server
|
|
|
|
Make sure you have the Redis service running.
|
|
|
|
After installation is done, you can start pssecret with `pssecret` command.
|
|
The web server will be started with `uvicorn` ASGI web server.
|
|
|
|
```console
|
|
$ pssecret
|
|
```
|
|
|
|
### Configuration
|
|
|
|
Configuration is done through config file. By default, path is `/etc/pssecret/pssecret.toml`.
|
|
You can override this by setting environment variable `PSSECRET_CONF_FILE` value to actual file
|
|
location, e.g.:
|
|
|
|
```console
|
|
$ PSSECRET_CONF_FILE=/home/user/.conf/pssecret.toml pssecret
|
|
```
|
|
|
|
You can find all available configuration options in the example file, located
|
|
at [conf/pssecret.toml.example](conf/pssecret.toml.example) under Git root.
|