此页内容

单机部署

Autumn

543字约2分钟

2024-11-17

提示

忘记密码

  1. 进入 Mongodb 数据库修改 user 表中的 password 为 b0ce71fcbed8a6ca579d52800145119cc7d999dc8651b62dfc1ced9a984e6e64 (明文为ScopeSentry)
  2. 执行下边命令初始化密码为ScopeSentry

docker exec -it scopesentry-mongodb mongosh -u admin -p password --eval 'db = db.getSiblingDB("ScopeSentry"); db.user.updateOne({ "username": "ScopeSentry" }, { $set: { "password": "b0ce71fcbed8a6ca579d52800145119cc7d999dc8651b62dfc1ced9a984e6e64" } })'

系统分为四个服务:

  • web/server端-用于资产管理、任务管理等
  • scan端-用于扫描,可以在多台机器部署
  • Mongodb-数据库,只要web和scan能连接上这个数据库就行。
  • redis-redis,只要web和scan能连接上这个redis就行。

单机部署

提示

单机部署的compose配置文件中已经包含了数据库镜像,只需要修改mongodb、redis的账号密码即可。scan的docker由于部分机器网络原因(暂时不清楚哪里的问题),临时解决方案是将network_mode设置为host,所以scan的docker可以使用127进行访问数据库,无需更改。

数据库密码不要使用@等特殊符号。

数据库、redis会挂载目录到项目的根目录data文件夹中,如果设置过一次密码,并且data文件夹已经生成了,那密码不会变化,如果之后重新搭建可以注意一下这个问题防止又修改密码没有生效。

git clone https://github.com/Autumn-27/ScopeSentry.git
cd ScopeSentry
# 修改.env文件中的mongodb、redis账号密码。
docker-compose -f single-host-deployment.yml up -d
  • 运行之后一共四个容器
    • scope-sentry (服务端-web界面)
    • scopesentry-scan (扫描端)
    • Mongodb (数据库)
    • Redis
查看初始用户密码以及插件二次验证密码
docker logs scope-sentry

然后访问IP:8082

单机部署就这么多,修改账号密码,然后一个命令启动docker alt text

单机部署之后,如果想在其他机器运行扫描节点,只需要单独运行scan,将数据库地址填写为单机部署那台机器的ip。

数据迁移

在数据库的docker配置文件中,有挂载目录设置,默认为当前运行目录的data目录,迁移数据时将文件迁移即可。