本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
!Run E2E Backend + Frontend Tests !Run Frontend Tests !Run Backend Tests
Heimdall是MITRE开发的安全控制扫描结果查看器,允许用户查看、存储和比较各种自动化安全控制扫描结果。本仓库包含Heimdall 2后端和前端(Heimdall-Lite)的源代码。
Heimdall提供两种版本:完整版Heimdall Enterprise Server和轻量级Heimdall-Lite版本。两者共享相同的前端界面,但针对不同的需求和使用场景设计。
| 功能 | Heimdall-Lite | Heimdall |
|---|---|---|
| 安装要求 | 任何Web服务器 | PostgreSQL服务器 |
| 概览仪表板和计数 | ✓ | ✓ |
| 800-53分区和TreeMap视图 | ✓ | ✓ |
| 数据表格/控制摘要 | ✓ | ✓ |
| InSpec代码/控制查看器 | ✓ | ✓ |
| SSP内容生成器 | ✓ | |
| 用户和角色及多团队支持 | ✓ | |
| 认证和授权 | 托管Web服务器 | 托管Web服务器 LDAP OAuth支持: GitHub, GitLab, Google和Okta |
| 高级数据/过滤器报告和查看 | ✓ | |
| 多种报告输出 (DISA检查表XML, CAT, XCCDF-Results等) | ✓ | |
| 认证REST API | ✓ | |
| InSpec运行"Delta"视图 | ✓ | |
| 多报告标记、过滤和Delta视图 | ✓ |
。此操作不应丢失任何数据。
从启动时的源目录运行:
docker-compose down
Cloud.gov是一个FEDRAMP中等平台即服务(PaaS)。此仓库包含一个示例manifest.yml.example文件,可直接推送并运行最新版本的Heimdall2容器。复制示例文件并适当更新键值:
cp manifest.yml.example manifest.yml
设置cloud.gov账户 - [***]
安装cf-cli - [***]
在Heimdall源目录的终端窗口中运行以下命令:
cd ~/Documents/Github/Heimdall2 cf login -a api.fr.cloud.gov --sso # 出现提示时,按照链接复制临时认证码
设置演示应用空间
cf target -o sandbox-rename create-space heimdall2-rename
创建postgresql数据库
# 更新manifest.yml文件以重命名应用程序和数据库键名 cf marketplace cf create-service aws-rds medium-psql heimdall2-rename cf create-service-key heimdall2-db-rename heimdall2-db-test-key cf push
将返回新测试实例的URL,可通过该URL访问。
注意:这仅用于演示目的,要运行生产级别的联邦/FISMA系统,您需要联系cloud.gov程序并咨询组织的安全团队(进行风险评估和授权操作)。
API使用仅在使用Heimdall Enterprise Server(又名"服务器模式")时有效。
目前尚无完善的API文档。同时,以下是向Heimdall Server上传评估的快速说明:
# 创建用户(只需执行一次) curl -X POST -H "Content-Type: application/json" -d '{"email": "***", "password": "password", "passwordConfirmation": "password", "role": "user", "creationMethod": "local" }' http://localhost:3000/users # 登录 curl -X POST -H "Content-Type: application/json" -d '{"email": "***", "password": "password" }' http://localhost:3000/authn/login # 上一个命令返回需要放在以下命令中的Bearer Token # 上传评估 curl -F "data=@Evaluation.json" -F "filename=Your Filename" -F "public=true/false" -H "Authorization: Bearer bearertokengoeshere" "http://localhost:3000/evaluations"
Heimdall使用.env文件进行环境变量配置。有关.env文件的更多信息,请访问环境变量配置。
如果您想根据需要修改Heimdall,Heimdall有"开发模式",如果您对代码进行更改,应用程序将自动重建并使用这些更改。请注意,在部署Heimdall供一般使用时,不应运行开发模式。要在基于Debian的发行版上开始,请按照以下步骤操作:
安装系统依赖:
sudo apt install postgresql nodejs nano git sudo npm install -g yarn
克隆此仓库:
git clone [***]
创建Postgres角色:
# 启动Postgres终端 psql postgres # 创建用户 CREATE USER <username> with encrypted password '<password>'; ALTER USER <username> CREATEDB; \q
安装项目依赖:
cd heimdall2 yarn install
编辑.env文件并创建数据库:
nano apps/backend/.env-example # 用您的值替换注释,如果需要默认值,可以删除该行。 mv apps/backend/.env-example apps/backend/.env yarn backend sequelize-cli db:create yarn backend sequelize-cli db:migrate yarn backend sequelize-cli db:seed:all
启动Heimdall:
yarn start:dev
这将以开发模式启动前端和后端,意味着对源代码的任何更改都将立即生效。请注意,我们已经提供了Visual Studio Code工作区文件,您可以使用它来组织您的工作区。
如果使用Visual Studio Code,可以非常简单地在本地调试此应用程序。首先打开Visual Studio Code工作区,并确保启用了Visual Studio Code中的Node调试器自动附加功能。接下来,打开集成的Visual Studio Code终端并运行:
yarn backend start:debug
Visual Studio Code将自动附加调试器,并在您在应用程序中放置的任何断点处停止。
如果只想对前端(heimdall-lite)进行更改,请使用以下命令:
yarn frontend start:dev
要验证和检查代码,请运行:
yarn run lint
yarn build
测试代码以确保一切正常:
# 运行前端Vue测试 yarn frontend test # 运行后端Nest测试 yarn backend test:ci-cov
应用程序包含端到端前端+后端测试(使用cypress.io框架构建)。这些测试自动检查Heimdall Server是否按预期运行。要运行这些测试,需要运行应用程序实例。
CYPRESS_TESTING=true yarn start:dev CYPRESS_BASE_URL=http://localhost:8080 yarn test:ui:open
第一个命令将启动Heimdall Server实例,并公开允许测试运行所需的其他路由。第二个命令将打开Cypress UI,每当代码更改时将运行测试。
注意:此操作需要对仓库具有适当的权限才能执行。
lerna version,运行lerna version <显式版本>,或者使用适当的lerna关键字之一:'major', 'minor', 'patch', 'premajor', 'preminor', 'prepatch', 或 'prerelease'来更新版本。这将向Github推送新标签。本项目使用语义化版本控制策略
欢迎查看我们的问题,创建分支并提交PR和改进。我们很乐意听取最终用户和社区的意见,并很高兴就建议、更新、修复或新功能与您交流。
如有任何建议、问题或问题,请随时通过在问题板上打开一个issue或发送电子邮件至与我们联系。如果您对我们软件的使用有更多一般性问题或其他疑虑,请通过与我们联系。
© 2019-2021 The MITRE Corporation.
批准公开发布;分发不受限制。案例编号18-3678。
MITRE特此授予根据本项目包含的LICENSE.md文件中提供的许可条款使用、复制、分发、修改和以其他方式利用本软件的明确书面许可。
本软件是为美国政府根据合同编号HHSM-500-2012-00008I生产的,受联邦采购条例第52.227-14条"数据通用权利"的约束。
除授予美国政府的权利外,或根据该条款代表美国政府行事的人员,未经The MITRE Corporation的明确书面许可,不得进行其他使用。
如需更多信息,请联系The MITRE Corporation,合同管理办公室,7515 Colshire Drive, McLean, VA 22102-7539,(703) 983-6000。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429