什么是Password Pusher?
Password Pusher是一个开源工具,主要功能包括:
生成一次性或有时限的密码分享链接
链接被查看后自动销毁密码
可设置密码的过期时间(查看次数或时间限制)
不存储任何密码在发送方设备上
提供API接口供程序化使用
准备工作
在开始之前,请确保你的系统满足以下要求:
一台运行Linux的服务器(本地机器或云服务器)
Docker已安装(版本18.06.0或更高)
Docker Compose已安装(版本1.25.0或更高)
基本的命令行操作知识
检查Docker和Docker Compose版本
docker --version
docker-compose --version
如果尚未安装,请参考官方文档进行安装:
部署Password Pusher
第一步:创建项目目录
首先,为我们的项目创建一个专用目录:
mkdir password-pusher
cd password-pusher
第二步:创建Docker Compose文件
创建名为 docker-compose.yml
的文件:
vim docker-compose.yml
将以下内容粘贴到文件中:
x-op-app-environment: &x-op-app-environment
environment:
DATABASE_URL: 'postgres://username:password@db:5432/pwpush'
services:
# The Password Pusher application
pwpush:
image: docker.io/pglombardo/pwpush:latest
container_name: pwpush
restart: unless-stopped
volumes:
- ./config/settings.yml:/opt/PasswordPusher/config/settings.yml
ports:
- '5100:5100'
<<: *x-op-app-environment
depends_on:
- db # Comment out if using SQLite3 (Ephemeral)
links:
- db:db
worker:
image: docker.io/pglombardo/pwpush-worker:latest
container_name: pwpush-worker
restart: unless-stopped
<<: *x-op-app-environment
depends_on:
- pwpush
- db
links:
- db:db
db:
image: docker.io/postgres:15
container_name: postgres-pwpush
restart: unless-stopped
volumes:
- . /postgresql2/data:/var/lib/postgresql/data
ports:
- '5432:5432'
environment:
POSTGRES_USER: username
POSTGRES_PASSWORD: password
POSTGRES_DB: pwpush
第三步:启动服务
docker-compose up -d
使用Password Pusher
现在,你可以通过浏览器访问Password Pusher:
如果是在本地运行:http://localhost:5000
如果是在远程服务器:http://your_server_ip:5000
推送密码
在首页的文本框中输入要分享的密码或敏感信息
设置过期选项:
在X天后过期
或被查看X次后过期
点击"Push it"按钮
系统会生成一个唯一URL,将此URL分享给需要的人
查看密码
接收者访问你提供的URL
密码内容会显示在页面上
根据设置,密码会在查看后立即销毁或达到限制后失效
结语
通过本教程,你已经成功使用Docker Compose部署了自己的Password Pusher实例。这个私有的密码分享解决方案不仅增强了安全性,还让你完全掌控数据的生命周期。无论是团队内部使用还是为客户提供服务,这都是一个既专业又安全的解决方案。
你可以根据需要进一步定制界面、调整安全设置或扩展功能。Password Pusher的开源特性意味着你可以完全按照自己的需求进行调整。
现在,你可以告别不安全的密码分享方式,享受自托管解决方案带来的安全与便利了!
Happy encrypting!