passwall-server

Passwall Server Docker 镜像

PassWall Server是开源密码管理器PassWall平台的核心后端,提供安全的密码存储与跨设备访问功能,支持端到端加密和多客户端集成。

2 次收藏下载次数: 0状态:社区镜像维护者:passwall仓库类型:镜像最近更新:26 天前
下载命令
点击查看

PassWall Server

PassWall Server是开源密码管理器PassWall平台的核心后端。通过该服务器,您可以安全存储密码并从任何地方访问。

支持

我承诺所有赞助的咖啡费用都将用于本项目开发

客户端

PassWall Server可与https://github.com/passwall/passwall-desktop配合使用

API文档

API文档可在https://documenter.getpostman.com/view/3658426/SzYbyHXj查看

PassWall同时支持服务器端和客户端加密。因此,在使用Postman创建用户时,您需要在JSON中使用已通过SHA256加密的密码,或使用Postman预请求脚本对表单中的JSON进行加密。

Postman预请求脚本使用
通过Postman创建用户时,需向**/auth/signup端点发送POST请求。在请求中,使用以下JSON schema作为原始 body**。请勿修改**{{password}}**,它是Postman中的环境变量。

json
{
    "name": "Erhan Yakut",
    "email": "erhan@passwall.io",
    "master_password": "{{password}}"
}

然后在预请求脚本中,复制粘贴以下JavaScript代码。您需要修改代码中的密码。

javascript
var newPassword = '123456' // 在此处修改密码

pm.environment.set('password', newPassword);

var encryptedPassword = CryptoJS.SHA256(pm.environment.get('password')).toString();

pm.environment.set('password', encryptedPassword);

console.log(encryptedPassword);

点击此链接查看我们的***播放列表。

数据库支持

PassWall支持PostgreSQL数据库。

配置

PassWall Server启动时,会在以下文件夹中自动生成config.yml配置文件:
macOS: $HOME/Library/Application Support/passwall-server
Windows: $APPDATA/passwall-server
Linux: $HOME/.config/passwall-server

安全性

  1. PassWall使用高级加密标准(AES)加密算法,结合伽罗瓦/计数器模式(GCM)对称密钥加密模式。使用AES加密的密码只能通过config.yml文件中定义的密码短语解密。

  2. 端点通过安全中间件保护,可抵御XSS等***。

  3. 为防止SQL注入,PassWall使用Gorm包处理数据库查询,对所有查询进行清洗。

  4. 针对暴力破解***,登录尝试设有速率限制。

环境变量

支持以下环境变量:

服务器变量:

  • PORT:服务器端口
  • PW_SERVER_USERNAME:服务器用户名
  • PW_SERVER_PASSWORD:服务器密码
  • PW_SERVER_PASSPHRASE:加密密码短语
  • PW_SERVER_SECRET:密钥
  • PW_SERVER_TIMEOUT:超时时间
  • PW_SERVER_GENERATED_PASSWORD_LENGTH:生成密码长度
  • PW_SERVER_ACCESS_TOKEN_EXPIRE_DURATION:访问令牌过期时间
  • PW_SERVER_REFRESH_TOKEN_EXPIRE_DURATION:刷新令牌过期时间

数据库变量

  • PW_DB_NAME:数据库名称
  • PW_DB_USERNAME:数据库用户名
  • PW_DB_PASSWORD:数据库密码
  • PW_DB_HOST:数据库主机
  • PW_DB_PORT:数据库端口
  • PW_DB_LOG_MODE:数据库日志模式

备份变量

  • PW_BACKUP_FOLDER:备份文件夹
  • PW_BACKUP_ROTATION:备份轮换次数
  • PW_BACKUP_PERIOD:备份周期

开发使用

在计算机上安装Go,拉取服务器代码库,在服务器文件夹中执行以下命令:

bash
go run ./cmd/passwall-server

Docker部署

bash
docker-compose up --build

贡献者指南

  1. 不要一次提交过多代码,这将便于我们进行代码审查。

  2. 请务必查看dev分支,我正在开发的版本位于该分支。

  3. 首先尝试修复代码中的// TODO:注释。

  4. 然后您可以按照里程碑参与开发。

  5. 不要修改用户界面,设计指南尚未发布。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 passwall-server 镜像标签

docker pull docker.xuanyuan.run/passwall/passwall-server:<标签>

DockerHub 原生拉取命令

docker pull passwall/passwall-server:<标签>
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告