Passwall Server Docker Image
PassWall Server是开源密码管理器PassWall平台的核心后端,提供安全的密码存储与跨设备访问功能,支持端到端加密和多客户端集成。
PassWall Server
PassWall Server is the core backend for open source password manager PassWall platform. Using this server, you can safely store your passwords and access them from anywhere.
Support
I promise all the coffee you have ordered will be spent on this project
Clients
PassWall Server can be used with https://github.com/passwall/passwall-desktop
API Documentation
API documentation available at https://documenter.getpostman.com/view/3658426/SzYbyHXj
PassWall has both server and client side encryption. So when creating user to work with Postman you should use already SHA256 encrypted password in JSON or use a Postman Pre-request Script to encrypt json in form.
Postman Pre-request Script Usage
While creating a user via Postman, you should send a post request to /auth/signup endpoint. In the request use the JSON schema below as raw body. Do not change {{password}}, it is an environment variable in Postman.
json{ "name": "Erhan Yakut", "email": "erhan@passwall.io", "master_password": "{{password}}" }
Then in Pre-request Script, copy and paste the javascript code below. You should change the password in the code.
javascriptvar newPassword = '123456' // Change this pm.environment.set('password', newPassword); var encryptedPassword = CryptoJS.SHA256(pm.environment.get('password')).toString(); pm.environment.set('password',encryptedPassword); console.log(encryptedPassword);
Click on this link to visit our *** playlist.
Database support
PassWall works with PostgreSQL databases.
Configuration
When PassWall Server starts, it automatically generates config.yml in the folders below:
MacOS: $HOME/Library/Application Support/passwall-server
Windows: $APPDATA/passwall-server
Linux: $HOME/.config/passwall-server
Security
-
PassWall uses The Advanced Encryption Standard (AES) encryption algorithm with Galois/Counter Mode (GCM) symmetric-key ***graphic mode. Passwords encrypted with AES can only be decrypted with the passphrase defined in the config.yml file.
-
Endpoints are protected with security middlewares against ***s like XSS.
-
Against SQL injection, PassWall uses Gorm package to handle database queries which clears all queries.
-
There is rate limiter for signin attempts against brute force ***s.
Environment Variables
These environment variables are accepted:
Server Variables:
- 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
Database Variables
- PW_DB_NAME
- PW_DB_USERNAME
- PW_DB_PASSWORD
- PW_DB_HOST
- PW_DB_PORT
- PW_DB_LOG_MODE
Backup Variables
- PW_BACKUP_FOLDER
- PW_BACKUP_ROTATION
- PW_BACKUP_PERIOD
Development usage
Install Go to your computer. Pull the server repo. Execute the command in server folder.
go run ./cmd/passwall-server
Docker
docker-compose up --build
Hello Contributors
-
Don't send too much commit at once. It will be easier for us to do a code review.
-
Be sure to take a look at the dev branch. The version I am working on is there.
-
First try to fix
// TODO:s in the code. -
Then you can contribute to the development by following the mile stones.
-
Don't mess with the user interface. The design guide has not been released yet.
passwall/passwall-server Related Documentation
镜像拉取方式
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
轩辕镜像加速拉取命令点我查看更多 passwall-server 镜像标签
DockerHub 原生拉取命令
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
