Self-hosted service for secrets sharing
Find a file
Ivan Golikov 8266c95cd9 Integration tests (#3)
Reviewed-on: root/pssecret#3
Co-authored-by: Ivan Golikov <root@ivnglkv.me>
Co-committed-by: Ivan Golikov <root@ivnglkv.me>
2025-01-01 18:18:38 +00:00
pssecret Integration tests (#3) 2025-01-01 18:18:38 +00:00
tests Integration tests (#3) 2025-01-01 18:18:38 +00:00
.gitignore Integration tests (#3) 2025-01-01 18:18:38 +00:00
.pre-commit-config.yaml Integration tests (#3) 2025-01-01 18:18:38 +00:00
CONTRIBUTING.md Migrated to poetry 2024-12-25 18:35:01 +01:00
LICENSE Added BSD-3 license 2022-06-10 01:46:31 +03:00
poetry.lock Integration tests (#3) 2025-01-01 18:18:38 +00:00
pyproject.toml Integration tests (#3) 2025-01-01 18:18:38 +00:00
README.md Using env vars for configuration instead of toml config 2024-12-27 00:34:54 +01:00

Pssecret

Code style: 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

$ pipx install pssecret

For faster performance, install application with hiredis support.

$ 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.

$ pssecret

Configuration

Configuration is done via environment variables.

Environment variables:

  • REDIS_URL: URL for Redis access. Check what values are supported here.

You can also declare these variables in a .env file in the working directory.