Server component for pman password utility
1.2K
A secure, multi-OS compatible password manager designed for teams with advanced automation support and enterprise-grade security features.
login, logout, passwdadd, get, edit, rm, ls, infosetgroup with priority resolutionuseradd, userdel, userlist, userupdate, userenable, userdisableDownload pre-built binaries from releasesโ or build from source:
git clone https://github.com/dcgsteve/pman.git
cd pman
./build-binaries.sh
# Build Docker image locally
./build-docker-server.sh
# Or build and push to Docker Hub
./build-docker-server.sh /p
# Run with docker-compose
export PMAN_ENCRYPTION_KEY="your-32-character-encryption-key"
export PMAN_DOMAIN_NAME="your-server.example.com"
export PMAN_UID=$(id -u) # Optional: match host user for volume permissions
export PMAN_GID=$(id -g) # Optional: match host group for volume permissions
docker-compose up -d
Note: Pre-built server images are available on Docker Hub: dcgsteve/pman-serverโ
# First login (interactive - prompts for server, email, password)
pman login
# First login (non-interactive with parameters)
pman login -s https://your-server.com -u [email protected] -p DefaultPassword
# Login with custom token expiry
pman login -expire 10 # Token valid for 10 days
# Change default password
pman passwd
# Set default group
pman setgroup team1
# Add passwords
pman add project1/database/password
echo "secret123" | pman add project1/api/key
# List passwords (beautiful tree view)
pman ls
# Get password for automation
DB_PASS=$(pman get project1/database/password)
flowchart LR
Client["๐ฅ๏ธ CLI Client<br/>Go Binary"]
API["๐ Backend API<br/>Docker/Binary"]
Config["โ๏ธ Config<br/>Encrypted JWT"]
Database["๐๏ธ Database<br/>SQLite + AES"]
Client <--> |"๐ HTTPS + JWT"| API
Client --> |"๐ Local Encryption"| Config
API --> |"๐ AES-256"| Database
classDef client fill:#2196F3,stroke:#1976D2,stroke-width:2px,color:#fff
classDef server fill:#4CAF50,stroke:#388E3C,stroke-width:2px,color:#fff
classDef storage fill:#FF9800,stroke:#F57C00,stroke-width:2px,color:#fff
class Client client
class API server
class Config,Database storage
# Docker build (local only)
./build-docker-server.sh
# Docker build and push to registry
./build-docker-server.sh /p
linux/amd64, linux/arm64darwin/amd64, darwin/arm64 (macOS)windows/amd64, windows/arm64freebsd/amd64PMAN implements enterprise-grade security:
# Team lead sets up shared credentials
pman add staging/database/password
pman add prod/api/keys/stripe
# Developers access as needed
export DB_PASS=$(pman get staging/database/password)
# CI/CD pipeline integration
DEPLOY_KEY=$(pman get deploy/ssh/production)
ssh -i <(echo "$DEPLOY_KEY") deploy@server
# Admin manages users
pman useradd "[email protected]" "user" "dev-team:rw,staging:ro"
pman userdisable "[email protected]" # Revokes all tokens immediately
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)This project is licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License - see the LICENSEโ file for details.
What this means:
PMAN - Making password management simple, secure, and scriptable for teams. ๐
Content type
Image
Digest
sha256:771202be5โฆ
Size
8.4 MB
Last updated
about 1 year ago
docker pull dcgsteve/pman-server