最近快HW啦,Hfish蜜罐呼声很高,尝试搭建一下。
![v2-a4a03c07b43b7e9fec88a2019aa44e21_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/296c9f095d7b7d0228212abb60401b0d.jpeg)
项目地址
https://github.com/hacklcx/HFish
支持的蜜罐类型:
![v2-6ddd9af564e05b542af61f4a4c608b8b_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/3d0ce6841f061fb65d5a3a456c61282c.jpeg)
官方安装指导:(docker版本操作很简单)
https://hfish.io/docs/#/deploy/docker
docker安装
docker安装:
Docker 下载镜像(目前测试的docker版本是0.6的)
dockerpull imdevops/hfish
![v2-aa80a015a5c31ab46775b0f2795282f4_b.png](https://i-blog.csdnimg.cn/blog_migrate/384e8d67d19a7cc4bc840e078a2482b2.png)
单节点部署(本次主要是个人云服务器搭建)
环境变量API_IP的值为 API 的 IP 地址加端口组成。
默认帐号密码均为:admin,如需修改可以通过加入-e USERNAME= -e PASSWORD= 传入环境变量进行修改。(也可以启动容器后,进入容器配置 config.ini配置账户密码)
如需做数据持久化存储,可加参数 -v $PWD:/opt 挂载数据卷到宿主机上,避免容器删除数据丢失。
启动docker
dockerrun -d --name hfish -p21:21-p22:22-p23:23-p69:69-p3306:3306-p5900:5900-p6379:6379-p8080:8080-p8081:8081-p8989:8989-p9000:9000-p9001:9001-p9200:9200-p11211:11211--restart=always imdevops/hfish:latest
端口对应也可以自己修改(-p 22:22 第一个22是主机端口,第二个22是docker映射出来的端口)可以根据自己主机情况改变
访问管理的端口:ip+9001(管理端口可以修改)
![v2-cbf6b3c65ecabb451abc4380e1b3fa5c_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/d554a7e1b6cbf462da6ebc8661ff167a.jpeg)
搭建时候修改了端口和密码
启动后进入docker容器
dockerexec-it 容器id sh
进去后可以修改端口和密码
vi Hfish/config.ini
![v2-313346a05db4c6023b1f2e6421361dd4_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/6483e2206544e6c44c6498758405ecbf.jpeg)
[admin]# RPC 状态为2 集群客户端的时候 admin 可以删掉addr = 0.0.0.0:1234# 管理后台启动地址account = admin# 登录账号,不能带 #password =# 登录密码,不能带 #attack_city = 北京# 数据大屏攻击地区设置db_type = sqlite# sqlite or mysqldb_max_open = 50# 最大连接池,0 表示无限制db_max_idle = 50# 最大空闲数,0 表示无限制db_str = ./db/hfish.db?cache=shared&mode=rwc# sqlite or mysql 连接字符串# sqlite : # mysql :
端口关系:
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端口以上端口根据实际需要决定是否打开,并注意端口冲突。
还有一个注意:
report_key和query_key建议修改一下,防止数据被被人拿走
[api]status = 1# 是否启动 API 0 关闭 1 启动web_url = /api/v1/post/report# WEB蜜罐上报 APIdeep_url = /api/v1/post/deep_report# 暗网蜜罐上报 APIplug_url = /api/v1/post/plug_report# 插件蜜罐上报 APIreport_key = APIKEY# API 上报认证秘钥 默认值 9cbf8a4dcb8e30682b927f352d6559a0query_key = APIKEY# API 查询认证秘钥 默认值 X85e2ba265d965b1929148d0f0e33133
还有一些其他的属性都可以调整,详情看config.ini(默认相关信息)
[rpc]
status= 0#模式 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#登录密码,不能带 #
attack_city= 北京#数据大屏攻击地区设置
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= 2#是否启动 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蜜罐 服务端地址 注意端口冲突
linux服务安装(ubuntu)
安装注意(使用 0.6.3 ,请先下载 0.6.2,然后把 0.6.3 覆盖到 0.6.2 程序内。)
不然下载没法运行(./Hfish)
下载自己操作系统对应的版本:
![v2-1a807404732d3336df691be93c50659a_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/825bdaaa23444d36e42c3cd099166762.jpeg)
![v2-eaf65668aaed77796408847f8a19d836_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/3d81b7b2d8370b5243308b01ad67e600.jpeg)
下载解压
tar-zxvfHFish-0.6.2-linux-amd64.tar.gztar-zxvfHFish-0.6.3-linux-amd64.tar.gz
将0.6.3里面的文件覆盖到0.6.2
![v2-e268564684c46547ab1893bc4b1d27ad_b.png](https://i-blog.csdnimg.cn/blog_migrate/0233317f55e2f0b609beab22c436376b.png)
chmod777-R db# sqlite 临时文件需要最高权限
![v2-b76ab4a099128ac950df3433c7d34355_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/15bba41793dac0f7cadb2dbc2ba564b2.jpeg)
./HFish run
访问ip+9001管理界面就OK
![v2-5b479d2d34a8da4867a1506c29c8cf5f_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/ead11889515acb72ca47ee7324b6f1de.png)
如果需要修改端口、密码、服务相关配置,看docker部分的修改配置方法(配置方式一样)
最终效果图
仪表盘效果
![v2-f676ed5f215a443997d034129cf24cff_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/9880af9cc9d2114ebebb653d844f2e1c.jpeg)
![v2-f8369f186061de81fde2565ac69e9492_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/d52dfda4410c4d79c0b9bb9845f48ab5.jpeg)
![v2-32cb9706a36138dd727e45ec68a65cbd_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/68dfc03b1988fa43fd0549ccf485a5a6.png)
![v2-577faf58d257d20cd0cf387b69dfae1e_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/29e404e714b069c3b737a622a1c02dac.jpeg)
![v2-37a754dcb7a166f7efc4833091d901d3_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/afbf0976e99381b83510336ecbe228be.jpeg)
搭建起来效果很不错。数据展示还有过程记录还是不错的。
补充:本文只搭建了单节点部署如果需要集群部署移步(https://hfish.io/)
参考:
https://github.com/hacklcx/HFish
https://hfish.io/docs/#/deploy/docker
订阅查看更多复现文章、学习笔记
thelostworld
安全路上,与你并肩前行!!!!
![v2-c80c87cb78cf66222785b2baa2a6c6f9_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/5f7a244154469b63d422fd5f6172513a.png)
个人知乎:https://www.zhihu.com/people/fu-wei-43-69/columns
个人简书:https://www.jianshu.com/u/bf0e38a8d400
原文连接:
Hfish蜜罐搭建(docker&ubuntu)