Sign inSign up

ssiroos/securitybox

By ssiroos

Updated 9 days ago

Secure workspace for users, companies, projects, and encrypted password sharing.

Image
Security
Developer tools
Web servers
2

663

ssiroos/securitybox repository overview

SecurityBox

SecurityBox is a security workspace for managing users, companies, projects, and encrypted password vault entries with role-based and share-based access control.

Features

  • Login with SA, Admin, and User roles.
  • User management for system users.
  • Company management with company admins and company members.
  • Personal password manager with encrypted storage.
  • CSV, XLS, and XLSX password import.
  • Project management with owners, project admins, and project users.
  • Project password sharing with Read or Edit access.
  • MariaDB database backend.
  • Lightweight Alpine-based application image.

Image

docker pull securitybox:latest

If the image is published under your Docker Hub namespace, use:

docker pull <dockerhub-user>/securitybox:0.0.1

Video Tutorial

https://www.youtube.com/watch?v=lJ0P_PJKVgY

Quick Start With Docker Compose

Create a docker-compose.yml file:

services:
  securitybox:
    image: <dockerhub-user>/securitybox:0.0.1
    container_name: securitybox-app
    restart: unless-stopped
    ports:
      - "5285:8080"
    environment:
      ASPNETCORE_ENVIRONMENT: Production
      ASPNETCORE_URLS: http://+:8080
      ConnectionStrings__MariaDb: Server=mariadb;Port=3306;Database=securitybox;User=securitybox;Password=change_this_db_password;Connection Timeout=30;
      SeedSaUser__UserName: sa
      SeedSaUser__DisplayName: System Administrator
      SeedSaUser__Password: change_this_sa_password
      PasswordVault__MasterKey: change-this-password-vault-master-key-before-production
    depends_on:
      mariadb:
        condition: service_healthy

  mariadb:
    image: mariadb:11.4
    container_name: securitybox-mariadb
    restart: unless-stopped
    environment:
      MARIADB_ROOT_PASSWORD: change_this_root_password
      MARIADB_DATABASE: securitybox
      MARIADB_USER: securitybox
      MARIADB_PASSWORD: change_this_db_password
    volumes:
      - mariadb_data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
      interval: 10s
      timeout: 5s
      retries: 10
      start_period: 30s

volumes:
  mariadb_data:

Start the stack:

docker compose up -d

Open the app:

http://localhost:5285

Configuration

SecurityBox uses environment variable binding. Use double underscores (__) for nested configuration keys.

VariableRequiredDescription
ASPNETCORE_ENVIRONMENTNoRuntime environment. Use Production for deployment.
ASPNETCORE_URLSNoListen URL inside the container. Default is http://+:8080.
ConnectionStrings__MariaDbYesMariaDB connection string used by the application.
SeedSaUser__UserNameYesInitial super admin username.
SeedSaUser__DisplayNameYesInitial super admin display name.
SeedSaUser__PasswordYesInitial super admin password. Change before production.
PasswordVault__MasterKeyYesMaster key used for password vault encryption. Change before production and keep stable.

Ports

Container PortDefault Host PortDescription
80805285SecurityBox web application
3306OptionalMariaDB, only expose if external access is required

Volumes

VolumeDescription
mariadb_dataPersistent MariaDB database files

Security Notes

  • Change all default passwords before running in production.
  • Keep PasswordVault__MasterKey secret and stable. If it is changed after passwords are saved, existing encrypted vault data may no longer decrypt.
  • Do not publish MariaDB port 3306 unless another host must connect to the database.
  • Put the application behind HTTPS in production.
  • Back up the MariaDB volume regularly.
  • Store production secrets with Docker secrets, an orchestrator secret store, or protected environment variables.

First Login

Use the configured seeded SA account:

Username: value of SeedSaUser__UserName
Password: value of SeedSaUser__Password

After login, change the default password and create the required users, companies, and projects.

Tag summary

Content type

Image

Digest

sha256:1babfda8c

Size

63.4 MB

Last updated

21 days ago

docker pull ssiroos/securitybox