Hfish Docker蜜罐部署
安装准备
实验环境:物理机 Apple M1芯片,2020. macOS Monterey
Docker版本:
Hfish的介绍
GitHub项目:https://github.com/hacklcx/HFish
项目介绍的很清楚了,我就不赘述了
Hfish的部署
Docker的安装步骤可以参考之前的blog:
sql靶场搭建
获取镜像
1 | docker pull imdevops/hfish |
容器部署
1 | 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 |
在物理机访问
1 | http://[本机IP]:9001 |
初始账户密码: admin admin
修改配置文件
1 | docker exec -it [容器名] sh |
修改管理员账户密码
1 | vi HFish/config.ini |
做个测试,用kali去nmap扫描本机,查看会不会有蜜罐那边的告警
蜜罐搭建成功
最新版本安装 2.8.0
官方安装文档:https://hfish.io/#/2-1-docker?id=docker%e5%ae%89%e8%a3%85%e8%af%b4%e6%98%8e
步骤1:确认已安装并启动Docker
1 | docker version |
步骤2:拉取最新版本的镜像
1 | docker pull threatbook/hfish-server:latest |
步骤3:端口映射、容器部署
1 | docker run -d -p 22:22 -p 9090:9090 -p 6379:6379 -p 135:135 -p 139:139 -p 3389:3389 -p 4433:4433 -p 9093:9093 -p 9194:9194 -p 9099:9099 -p 23:23 -p 3307:3307 --name hfish -v /usr/share/hfish:/usr/share/hfish --restart=always --privileged=true threatbook/hfish-server:latest |
【数据持久化:在宿主机/usr/share/hfish目录下建立data目录用于存放攻击数据,建立logs目录用于存放日志。】
步骤4:配置后续自动升级(框内全部复制,粘贴,执行即可)
1 | docker run -d \ |
【自动升级:每小时请求最新镜像进行升级,升级不会丢失数据。】
步骤5:登陆HFish
登陆地址:https://ip:4433/web/
初始用户名:admin
初始密码:HFish2021
docker的Hfish连接数据库
我们将数据库搭建在宿主机中,而非docker中,这样为了保护数据安全
dokcer容器内连接宿主机Mysql
mac安装mysql
修改配置文件
1 | vim ~/.bash_profile |
在配置文件中输入
1 | export PATH=${PATH}:/usr/local/mysql/bin |
执行修改后的文件
1 | source .bash_profile |
解决mac重新启动终端source .bash_profile就要输入执行一下.
在终端输入:vim ~/.zshrc
在文件中输入:source ~/.bash_profile
这样在重新启动终端mysql命令就可以直接执行。
设置宿主机mysql允许docker的虚拟网卡ip访问
在宿主机的终端创建mysql数据库,并允许远程访问
1 | mysql -uroot -p |
在mysql客户端,进一步创建并设计数据库
1 | -- ---------------------------- |
![Screen Shot 2022-03-08 at 4.45.33 PM](/Users/gryffinbit/Desktop/Screen Shot 2022-03-08 at 4.45.33 PM.png)
修改宿主机mysql配置,允许外部访问
1,登进MySQL之后,
2,输入以下语句,进入mysql库:
1 | use mysql |
3,更新域属性,’%’表示允许外部访问:
1 | update user set host='%' where user ='root'; |
4,执行以上语句之后再执行:
1 | FLUSH PRIVILEGES; |
z
Hfish连接宿主机mysql数据库
连接成功