• HFish蜜罐系统


    一、安装(单机部署)

    下载地址为:https://github.com/hacklcx/HFish/releases

    img

    github内下载需要的版本

    解压之后进入目录需将db目录设为777权限

    Linux + Mac 启动方式:

    tar -zxvf fish-0.2-linux-amd64.tar.gz      # 名字是下载的压缩包,根据实际情况修改
    cd hfish-0.2-linux-amd64                   # 名字是解压后压缩包,根据实际情况修改
    chmod 777 -R db                            # sqlite 临时文件需要最高权限
    ./HFish run
    

    windows启动方式

    # 鼠标右键解压压缩包,打开命令终端 (cmd.exe) 进入程序跟目录
    cd c:/hfish-0.2-linux-amd64 # 名字是解压后压缩包,根据实际情况修改
    # Windwos也要将db目录改为777权限:右键>>属性>>安全>>users>>完全控制
    ./HFish.exe run
    

    二、安装(Docker部署)

    拉取镜像文件

    docker pull imdevops/hfish
    

    容器启动

    docker run -d --name hfish -p 21:21 -p 22:22 -p 23:23 -p 69:69 -p 3306:3306 -p 5900:5900 -p 6379:6379 -p 8080:8080 -p 8081:8081 -p 8989:8989 -p 9000:9000 -p 9001:9001 -p 9200:9200 -p 11211:11211 --restart=always imdevops/hfish:latest
    

    各个端口介绍

    21 为 FTP 端口 22 为 SSH 端口 23 为 Telnet 端口 3306 为 Mysql 端口 6379 为 Redis 端口 8080 为 暗网 端口 8989 为 插件 端口 9000 为 Web 端口 9001 为 系统管理后台 端口 11211 为 Memcache 端口 69 为 TFTP 端口 5900 为 VNC端口 8081 为 HTTP代理池 端口 9200 为Elasticsearch端口 以上端口根据实际需要决定是否打开,并注意端口冲突。
    

    三、访问HFish

    本机启动 localhost:9001 ,服务器启动 server_ip:9001

    默认账号:admin

    默认密码:admin

    img

    HFish蜜罐系统登入页面;访问9001端口

    登入成功

    四、服务端配置

    配置文件名config.ini

    本配置为 Demo 服务端需要启动 rpc , 修改状态 status 为 1

    [rpc]
    status = 1                                      # 模式 0关闭 1服务端 2客户端
    addr = 0.0.0.0:7879                             # RPC 服务端地址 or 客户端地址
    name = Server                                   # 状态1 服务端 名称 状态2 客户端 名称
    
    [admin]                                         # RPC 状态为2 集群客户端的时候 admin 可以删掉
    addr = 0.0.0.0:9001                             # 管理后台启动地址
    account = admin                                 # 登录账号,不能带 #
    password = admin                                # 登录密码,不能带 #
    db_type = sqlite                                # sqlite or mysql
    db_max_open = 50                                # 最大连接池,0 表示无限制
    db_max_idle = 50                                # 最大空闲数,0 表示无限制
    db_str = ./db/hfish.db?cache=shared&mode=rwc    # sqlite or mysql 连接字符串
                                                    # sqlite : ./db/hfish.db?cache=shared&mode=rwc
                                                    # mysql  : 账号:密码@tcp(地址:端口)/数据库名?charset=utf8&parseTime=true&loc=Local
    
    [api]
    status = 1                                      # 是否启动 API 0 关闭 1 启动
    web_url = /api/v1/post/report                   # WEB蜜罐上报 API
    deep_url = /api/v1/post/deep_report             # 暗网蜜罐上报 API
    plug_url = /api/v1/post/plug_report             # 插件蜜罐上报 API
    report_key = 9cbf8a4dcb8e30682b927f352d6559a0   # API 上报认证秘钥
    query_key = X85e2ba265d965b1929148d0f0e33133    # API 查询认证秘钥
    
    [plug]
    status = 1                                      # 是否启动 蜜罐插件 0 关闭 1 启动, 需要先启动 API
    addr = 0.0.0.0:8989                             # 蜜罐插件 启动地址
    
    [web]
    status = 1                                      # 是否启动 WEB 1 启动 0 关闭, 启动 API 后 WEB 方可上报结果
    addr = 0.0.0.0:9000                             # WEB 启动地址,0.0.0.0 对外开放,127.0.0.1 对内开放 可走 Nginx 反向代理
    template = wordPress/html                       # WEB 模板路径
    index = index.html                              # WEB 首页文件
    static = wordPress/static                       # WEB 静态文件路径  注意:必须存在两个目录,html 文件 和静态文件 不能平级
    url = /                                         # WEB 访问目录,默认 / 可更改成 index.html index.asp index.php
    
    [deep]
    status = 1                                      # 是否启动 暗网 1 启动 0 关闭, 启动 API 后 方可上报结果
    addr = 0.0.0.0:8080                             # 暗网 WEB 启动地址
    template = deep/html                            # 暗网 WEB 模板路径
    index = index.html                              # 暗网 WEB 首页文件
    static = deep/static                            # 暗网 WEB 静态文件路径  注意:必须存在两个目录,html 文件 和静态文件 不能平级
    url = /                                         # 暗网 WEB 访问目录,默认 / 可更改成 index.html index.asp index.php
    
    [ssh]
    status = 1                                      # 是否启动 SSH 0 关闭 1 低交互 2 高交互
    addr = 0.0.0.0:22                               # SSH 服务端地址 注意端口冲突,请先关闭服务器 openssh 服务 或 修改端口
    
    [redis]
    status = 1                                      # 是否启动 Redis 0 关闭 1 启动
    addr = 0.0.0.0:6379                             # Redis 服务端地址 注意端口冲突
    
    [mysql]
    status = 1                                      # 是否启动 Mysql 0 关闭 1 启动
    addr = 0.0.0.0:3306                             # Mysql 服务端地址 注意端口冲突
    files = /etc/passwd,/etc/group                  # Mysql 服务端读取客户端任意文件; 多写逗号分隔,会随机取
    
    [telnet]
    status = 1                                      # 是否启动 Telnet 0 关闭 1 启动
    addr = 0.0.0.0:23                               # Telnet 服务端地址 注意端口冲突
    
    [ftp]
    status = 1                                      # 是否启动 Ftp 0 关闭 1 启动
    addr = 0.0.0.0:21                               # Ftp 服务端地址 注意端口冲突
    
    [mem_cache]
    status = 1                                      # 是否启动 MemCache 0 关闭 1 启动
    addr = 0.0.0.0:11211                            # Memcache 服务端地址 注意端口冲突
    
    [http]
    status = 1                                      # 是否启动 HTTP代理 0 关闭 1 启动
    addr = 0.0.0.0:8081                             # HTTP代理地址 注意端口冲突
    
    [tftp]
    status = 1                                      # 是否启动 tftp 0 关闭 1 启动
    addr = 0.0.0.0:69                               # tftp 服务端地址 注意端口冲突
    
    [elasticsearch]
    status = 1                                      # 是否启动 ES蜜罐 0 关闭 1 启动
    addr = 0.0.0.0:9200                             # ES蜜罐 服务端地址 注意端口冲突
    
    [vnc]
    status = 1                                      # 是否启动 VNC蜜罐 0 关闭 1 启动
    addr = 0.0.0.0:5900                             # VNC蜜罐 服务端地址 注意端口冲突
    

    五、客户端配置

    本配置为 Demo 客户端可删除 admin 配置项

    客户端需要启动 rpc , 修改状态 status 为 2

    [rpc]
    status = 2                                      # 模式 0关闭 1服务端 2客户端
    addr = 0.0.0.0:7879                             # RPC 服务端地址 or 客户端地址
    name = Client                                   # 状态1 服务端 名称 状态2 客户端 名称
    
    [api]
    status = 1                                      # 是否启动 API 0 关闭 1 启动
    web_url = /api/v1/post/report                   # WEB蜜罐上报 API
    deep_url = /api/v1/post/deep_report             # 暗网蜜罐上报 API
    plug_url = /api/v1/post/plug_report             # 插件蜜罐上报 API
    report_key = 9cbf8a4dcb8e30682b927f352d6559a0   # API 上报认证秘钥
    query_key = X85e2ba265d965b1929148d0f0e33133    # API 查询认证秘钥
    
    [plug]
    status = 1                                      # 是否启动 蜜罐插件 0 关闭 1 启动, 需要先启动 API
    addr = 0.0.0.0:8989                             # 蜜罐插件 启动地址
    
    [web]
    status = 1                                      # 是否启动 WEB 1 启动 0 关闭, 启动 API 后 WEB 方可上报结果
    addr = 0.0.0.0:9000                             # WEB 启动地址,0.0.0.0 对外开放,127.0.0.1 对内开放 可走 Nginx 反向代理
    template = wordPress/html                       # WEB 模板路径
    index = index.html                              # WEB 首页文件
    static = wordPress/static                       # WEB 静态文件路径  注意:必须存在两个目录,html 文件 和静态文件 不能平级
    url = /                                         # WEB 访问目录,默认 / 可更改成 index.html index.asp index.php
    
    [deep]
    status = 1                                      # 是否启动 暗网 1 启动 0 关闭, 启动 API 后 方可上报结果
    addr = 0.0.0.0:8080                             # 暗网 WEB 启动地址
    template = deep/html                            # 暗网 WEB 模板路径
    index = index.html                              # 暗网 WEB 首页文件
    static = deep/static                            # 暗网 WEB 静态文件路径  注意:必须存在两个目录,html 文件 和静态文件 不能平级
    url = /                                         # 暗网 WEB 访问目录,默认 / 可更改成 index.html index.asp index.php
    
    [ssh]
    status = 1                                      # 是否启动 SSH 0 关闭 1 低交互 2 高交互
    addr = 0.0.0.0:22                               # SSH 服务端地址 注意端口冲突,请先关闭服务器 openssh 服务 或 修改端口
    
    [redis]
    status = 1                                      # 是否启动 Redis 0 关闭 1 启动
    addr = 0.0.0.0:6379                             # Redis 服务端地址 注意端口冲突
    
    [mysql]
    status = 1                                      # 是否启动 Mysql 0 关闭 1 启动
    addr = 0.0.0.0:3306                             # Mysql 服务端地址 注意端口冲突
    files = /etc/passwd,/etc/group                  # Mysql 服务端读取客户端任意文件; 多写逗号分隔,会随机取
    
    [telnet]
    status = 1                                      # 是否启动 Telnet 0 关闭 1 启动
    addr = 0.0.0.0:23                               # Telnet 服务端地址 注意端口冲突
    
    [ftp]
    status = 1                                      # 是否启动 Ftp 0 关闭 1 启动
    addr = 0.0.0.0:21                               # Ftp 服务端地址 注意端口冲突
    
    [mem_cache]
    status = 1                                      # 是否启动 MemCache 0 关闭 1 启动
    addr = 0.0.0.0:11211                            # Memcache 服务端地址 注意端口冲突
    
    [http]
    status = 1                                      # 是否启动 HTTP代理 0 关闭 1 启动
    addr = 0.0.0.0:8081                             # HTTP代理地址 注意端口冲突
    
    [tftp]
    status = 1                                      # 是否启动 tftp 0 关闭 1 启动
    addr = 0.0.0.0:69                               # tftp 服务端地址 注意端口冲突
    
    [elasticsearch]
    status = 1                                      # 是否启动 ES蜜罐 0 关闭 1 启动
    addr = 0.0.0.0:9200                             # ES蜜罐 服务端地址 注意端口冲突
    
    [vnc]
    status = 1                                      # 是否启动 VNC蜜罐 0 关闭 1 启动
    addr = 0.0.0.0:5900                             # VNC蜜罐 服务端地址 注意端口冲突
    

    官方文档:https://hfish.io/docs/#/

  • 相关阅读:
    中产阶级_百度百科
    第二天--设置一个数据模型
    请大家支持珊瑚虫~~请大家帮帮soff~~
    Linux Socket学习(十二)
    Debian下调整时间
    Emacs 牵手 scim
    Linux Socket学习(十三)
    mplayer解码
    创建第一个Symfony工程
    页面的基本创建
  • 原文地址:https://www.cnblogs.com/ctccaozhe/p/13222326.html
Copyright © 2020-2023  润新知