基于 Kali 从 Docker 安装到 ARL 部署

1、Docker 安装

在 Debian/Kali 的软件源中,早已有一个名为 docker 的传统软件(该软件是一个「终端窗口分割工具」,和容器技术无关,使用场景非常小众)

为了避免与这个传统旧软件的包名冲突,Docker 官方与 Debian/Kali 社区协商后,将 Docker 容器引擎的包名命名为 docker.io,以此区分两个完全无关的软件

安装步骤:

  1. 更新包列表: sudo apt update
  2. 安装 Docker: sudo apt install -y docker.io docker-compose
  3. 启动 Docker 服务: sudo systemctl enable docker --now
    • --now 表示在“设置为开机自启”的同时立刻启动该服务,等价于以下两条命令:
    • sudo systemctl enable docker
    • sudo systemctl start docker
  4. 为避免每次使用 Docker 都需要 sudo,可将当前用户加入 docker 用户组(可选):
    • sudo usermod -aG docker $USER
    • 注销并重新登录使更改生效。

2、ARL 部署

ARL 资产灯塔开源项目于 2024 年 5 月 13 日停止维护支持,现存均为 ARL 开源项目的备份资源

由于一直以来 DockerHub 国内访问所存在的问题,可以根据 README 从网盘下载相关镜像资源(arl-plus.tar、mongo.tar、rabbitmq.tar)

目录结构:

┌──(hailo㉿kali-hailo)-[~/tools]
└─$ tree                        
.
└── arl
    ├── ARL-plus-docker
    │   ├── docker-compose.yml
    │   ├── README.md
    │   └── ...
    ├── arl-plus.tar
    ├── mongo.tar
    └── rabbitmq.tar

部署流程:

  1. 从 Github 拉取项目(项目地址:ARL-plus-docker
┌──(hailo㉿kali-hailo)-[~/tools]
└─$ mkdir arl && cd arl 

┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ git clone https://github.com/ki9mu/ARL-plus-docker.git 
  1. 修改 Docker 端口映射

由于 docker-compose.yml 的默认配置是使用 https,如在内网环境下使用需要修改为 http

services:
    web:
        ports:
          #http 服务,默认不映射出来
          - "5003:80"
          #- "5003:443"
  1. 创建名为 arl_db 的数据卷
┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ sudo docker volume create arl_db
  1. 从本地 .tar 格式的镜像归档文件中加载 Docker 镜像
┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ sudo docker load -i arl-plus.tar 

┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ sudo docker load -i mongo.tar 

┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ sudo docker load -i rabbitmq.tar 
  1. 以静默方式启动 Dokcer 容器
┌──(hailo㉿kali-hailo)-[~/tools/arl]
└─$ cd ARL-plus-docker 
                                                                                
┌──(hailo㉿kali-hailo)-[~/tools/arl/ARL-plus-docker]
└─$ sudo docker-compose up -d
  1. 访问 http://127.0.0.1:5003
    • 账号:admin
    • 密码:arlpass
    • 公网环境下登录成功后请修改密码!

其它配置:

  1. 查看 NAMESarl_webCONTAINER ID
┌──(hailo㉿kali-hailo)-[~/tools/arl/ARL-plus-docker]
└─$ sudo docker ps

  1. 进入容器 bash 环境
┌──(hailo㉿kali-hailo)-[~/tools/arl/ARL-plus-docker]
└─$ sudo docker exec -it d777eb77bdc3 /bin/bash
[root@d777eb77bdc3 code]# 
  1. 根据需要修改配置文件 app/config.yaml
CELERY:
  BROKER_URL : "amqp://arl:arlpassword@rabbitmq:5672/arlv2host"


MONGO:
  URI : 'mongodb://admin:admin@mongodb:27017/'
  DB : 'arl'



#GeoIP 数据库文件配置项
GEOIP:
  CITY: '/data/GeoLite2/GeoLite2-City.mmdb'
  ASN: '/data/GeoLite2/GeoLite2-ASN.mmdb'


#Fofa API 配置项
FOFA:
  URL: "https://fofa.info"
  EMAIL: "已经不需要配置了"
  KEY: ""
  MAX_PAGE: 5
  PAGE_SIZE: 2000


# 利用三方API进行域名收集
# 测试命令 python3.6 -m test.test_query_plugin [source1] [source2]
# 域名查询插件配置, enable 字段可以单独控制是否启用该插件,如果没有这个字段也会默认启用
QUERY_PLUGIN:
  alienvault:
    enable: true
  certspotter: # https://www.certspotter.com/
    after_id: 1
    max_page: 3
    enable: true
  crtsh:
    enable: true
  fofa:  # fofa 的key配置在上面
    enable: true
  hunter_qax: # 网站 https://hunter.qianxin.com/
    api_key: ""
    page_size: 100
    max_page: 5
    enable: false
  passivetotal: # 请前往 https://community.riskiq.com/ 注册自己的key并替换
    auth_email: ""
    auth_key: ""
    enable: false
  quake_360: # 网站 https://quake.360.cn/
    quake_token: ""
    max_size: 500
    enable: false
  rapiddns:
    enable: true
  securitytrails: # 网站 https://securitytrails.com/
    api_key: ""
    enable: false
  virustotal: # 网站 https://www.virustotal.com/gui/
    api_key: ""
    enable: false
  zoomeye:
    api_key: ""
    max_page: 20
    enable: false
  chaos:
    api_key: ""
    enable: false


#*** 监控任务消息推送配置 ****
#监控任务消息推送配置,支持钉钉,飞书,企业微信,邮件
#如果不需要推送,可以将所有配置项都留空
#文档:https://tophanttechnology.github.io/ARL-doc/config_option/?h=%E6%B6%88%E6%81%AF#_1
#钉钉消息推送配置
#钉钉添加机器人,请查看
#https://github.com/TophantTechnology/ARL/wiki/ARL%202.3%20%E6%96%B0%E6%B7%BB%E5%8A%A0%E5%8A%9F%E8%83%BD%E8%AF%B4%E6%98%8E
DINGDING:
  SECRET: ""
  ACCESS_TOKEN: ""

#邮件推送配置
EMAIL:
  HOST: ""
  PORT: ""
  USERNAME: ""
  PASSWORD: ""
  TO: ""

#飞书消息推送配置, 需要设置签名校验
#https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot
FEISHU:
  WEBHOOK_URL: ""
  SECRET: ""


#企业微信消息推送配置
#https://open.work.weixin.qq.com/help2/pc/14931
WXWORK:
  WEBHOOK_URL: ""

# 监控任务 WEBHOOK 配置
# IP/域名监控和站点监控结束后会往下面的URL POST提交JSON数据
# 为了验证身份会在Header中带上Token 字段
# 进入容器测试  docker compose exec worker bash
# 测试命令 python3.6 -m test.test_webhook <task_id> <scope_id>
WEBHOOK:
  URL: ""
  TOKEN: ""


#GITHUB 搜索 TOKEN
GITHUB:
  TOKEN: ""

#代理配置项,如"http://127.0.0.1:8080", 端口扫描不会走代理
PROXY:
  HTTP_URL: ""

ARL:
  AUTH: true
  #API 认证key, 可以访问api/doc查看文档
  API_KEY: ""
  BLACK_IPS:
    - 127.0.0.0/8
    - 0.0.0.0/8
    - 172.16.0.0/12
    - 100.64.0.0/10
    #- 10.0.0.0/8
    #- 192.168.0.0/16
  ## 禁止域名,不可为空数组
  FORBIDDEN_DOMAINS:
    - edu.cn
    - org.cn
    - gov.cn
  #端口对应前端测试选项
  PORT_TOP_10: "80,443,8443,8080,8081,8888,8089,5000,5001,8085,800,81,9000,88,8001,8090"
  #域名爆破字典前端大字典选项
  DOMAIN_DICT: "/code/app/dicts/domain_2w.txt"
  #文件泄漏字典
  FILE_LEAK_DICT: "/code/app/dicts/file_top_2000.txt"

  #域名爆破并发数
  DOMAIN_BRUTE_CONCURRENT: 300
  #组合生成的域名爆破并发数
  ALT_DNS_CONCURRENT: 1500

参考文章:

Installing Docker on Kali Linux

手把手教学安装ARL资产侦察灯塔系统

首先,特别感谢你能读到这里,每一份认真的阅读都是对内容创作的莫大鼓励。本文在撰写过程中,参考了多篇行业内公开的研究文献、专业分析及前辈创作者的分享成果。这些优质内容为文章观点的形成提供了重要启发与支撑,也让思考更加全面。不过因部分参考材料来自广泛的公开信息领域,未能逐一详尽标注具体出处,所以在此谨向所有致力于知识分享与行业研究的创作者,致以诚挚的感谢与敬意。

此外,若文中存在事实表述偏差、逻辑疏漏,或你对本文涉及的话题持有不同见解、希望补充相关案例与内容,欢迎通过评论区留言,或发送邮件至 puppy1599@outlook.com 与我交流。我始终相信,一篇有价值的文章从来不是单向的输出,而是通过开放讨论共同打磨的结果。期待和你一起完善对相关主题的认知,让内容的严谨性与参考价值进一步提升。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇