hfish蜜罐docker部署
centos 安装 docker-CSDN博客
Docker下载部署
Docker是我们推荐的部署方式之一,当前的版本拥有以下特性:
- 自动升级:每小时请求最新镜像进行升级,升级不会丢失数据。
- 数据持久化:在宿主机/usr/share/hfish目录下建立data目录用于存放攻击数据,建立logs目录用于存放日志。
注意:当前Docker版本使用host模式启动,如果您不希望Docker的管理端开放除TCP/4433和TCP/4434以外的端口,可暂停管理端内置默认节点。
Docker默认安装说明
确认主机中已安装并启动Docker
docker version
复制失败成功
运行HFish(框内全部复制,粘贴,执行即可)
docker run -itd --name hfish \
-v /usr/share/hfish:/usr/share/hfish \
--network host \
--privileged=true \
threatbook/hfish-server:latest
复制失败成功
正常情况下返回如下内容:
配置为后续自动升级(框内全部复制,粘贴,执行即可)
docker run -d \--name watchtower \--restart unless-stopped \-v /var/run/docker.sock:/var/run/docker.sock \--label=com.centurylinklabs.watchtower.enable=false \
--privileged=true \containrrr/watchtower \--cleanup \hfish \--interval 3600
复制失败成功
正常情况下返回如下内容:
登陆HFish
登陆地址:https://[server]:4433/web/
初始用户名:admin
初始密码:HFish2021
复制失败成功
Docker升级失败情况
如果已经配置了Docker镜像代理,有可能会导致watchower无法生效,手动执行:
docker pull threatbook/hfish-server:3.3.4
docker tag threatbook/hfish-server:3.3.4 threatbook/hfish-server:latest
docker rm -f hfish
docker run -itd --name hfish \
-v /usr/share/hfish:/usr/share/hfish \
--network host \
--privileged=true \
threatbook/hfish-server:latest
复制失败成功
未配置自动升级,Docker单次手动升级
配置watchover(框内全部复制,粘贴,执行即可)
docker run -d \--name watchtower \--restart unless-stopped \-v /var/run/docker.sock:/var/run/docker.sock \--label=com.centurylinklabs.watchtower.enable=false \
--privileged=true \containrrr/watchtower \--cleanup \hfish \--interval 10
复制失败成功
等待升级成功后,登录Web管理页面,确认升级完成
取消watchover自动升级
docker stop watchtower
复制失败成功
完成watchover配置后,后续如果还需手动升级,只需要执行 docker start watchtower 和 docker stop watchtower 即可,不需要反复配置watchover。
Docker修改持久化配置并重启
在/usr/share/hfish/config.toml下面修改配置
重启docker容器
docker restart hfish
忘记密码
如果用户不慎忘记HFish Web管理端admin密码,可以按照如下步骤强行重置。
Linux
- 进入HFish管理端安装目录,执行./tools -mode resetpwd
- kill hfish-server 等待几秒钟,进程会被自动拉起
- 使用默认账号密码:admin/HFish2021进行登录
Windows
- 运行cmd,进入HFish管理端安装目录,进入当前版本目录,执行tools.exe -mode resetpwd
- 打开任务管理器,结束hfish-server进程,等待几秒钟,进程会被自动拉起
- 使用默认账号密码:admin/HFish2021进行登录
Docker
- docker exec -it hfish /bin/sh
- cd 3.0.1(版本号)
- 执行./tools -mode resetpwd
- exit 退出容器
- docker restart hfish
- 使用默认账号密码:admin/HFish2021进行登录
相关文章:

hfish蜜罐docker部署
centos 安装 docker-CSDN博客Docker下载部署 Docker是我们推荐的部署方式之一,当前的版本拥有以下特性: 自动升级:每小时请求最新镜像进行升级,升级不会丢失数据。数据持久化:在宿主机/usr/share/hfish目录下建立dat…...

我的创作纪念日——redis的历史纪录
机缘 最开始只想存留点Redis的操作信息,后来写着写着也就写多了,虽然后面很长时间由于忙就没继续写,但是还是偶尔登录看一下,有好几篇文章的浏览量还是很多的呢。 收获 收获不多,粉丝也才三十多个,浏览量感…...

【Bootstrap5学习 day10】
Flex布局 弹性盒子是CSS3的一种新的布局模式,更适合响应式的设计 创建一个弹性盒子容器 使用d-flex类,创建flexbox容器并将直接子项转换为flex项 <div class"d-flex p-3 bg-info text-white"><div class"p-2 bg-secondary"…...
2024年学习计划
2024-2-29号完成 机器视觉基础知识学习,并可以处理视觉工作中的需求。 2024-3月份学习SCARA机械手应用开发SCARA机器人-埃斯顿自动化 - ESTUN 2024-4月份继续学习python 好了,今年可以完成这三个目标就满足了 好好学习,天天向上。每天进步…...

学习笔记:C++之 switch语句
Switch语句 作用:执行多条件分支语句 语法: switch(表达式){ case 结果1:执行语句;break; case 结果2:执行语句;break; ... default:执行语句&a…...
C++ 具名要求-全库范围的概念
此页面中列出的具名要求,是 C 标准的规范性文本中使用的具名要求,用于定义标准库的期待。 某些具名要求在 C20 中正在以概念语言特性进行形式化。在那之前,确保以满足这些要求的模板实参实例化标准库模板是程序员的重担。若不这么做…...
分布式(4)
目录 16.分布式缓存可能会存在哪些问题? 17.分布式限流了解过吗? 18.分布式定时任务怎么实现? 19.什么是分布式系统的副本一致性?有哪些? 20.在分布式系统中有哪些常见的一致性算法? 21.谈谈你对一致性…...

XCTF-Misc1 USB键盘流量分析
m0_01 附件是一个USB流量文件 分析 1.键盘流量 USB协议数据部分在Leftover Capture Data域中,数据长度为八个字节,其中键盘击健信息集中在第三个字节中。 usb keyboard映射表:USB协议中HID设备描述符以及键盘按键值对应编码表 2.USB…...

毛概笔记。
一、 毛泽东思想是马中化的第一果,是关于搞革命,搞改造,搞建设的理论。 二、新民主主义革命 新民主主义革命的三大法宝:1.统一战线 2. 武装斗争 3.党的建设 政治纲领 经济纲领 文化纲领 乱世造英雄 三、社会主义改造理论ÿ…...

postman使用方法指南,最全面的教程
Postman使用教程 一、Postman介绍 Postman是一个英语单词,名词,作名词时意为“邮递员;邮差”。 Postman是一个接口测试工具,在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求数据发送至服务端,…...

工业物联网上篇——什么是IIOT?
工业物联网背后的理念是使用工业设施中“哑巴设备”多年来产生的数据。装配线上的智能机器不仅可以更快地捕获和分析数据,且在交流重要信息方面也更快,这有助于更快、更准确地做出业务决策。 信息技术(IT)和运营技术(O…...
【JavaEE】Java多线程状态-- 多线程篇(10)
Java 多线程状态 1. 线程一共有几个状态?2. 每种状态表示的含义 & 状态之间的切换条件 1. 线程一共有几个状态? 在 Java 中, 线程的状态主要有新建, 就绪, 运行, 阻塞, 等待和超时等待; 2. 每种状态表示的含义 & 状态之间的切换条件 首先处于新建状态, 当线程调用…...

坐标转换 | EXCEL中批量将经纬度坐标(EPSG:4326)转换为墨卡托坐标(EPSG:3857)
1 需求 坐标系概念: 经纬度坐标(EPSG:4326):WGS84坐标系(World Geodetic System 1984)是一种用于地球表面点的经纬度坐标系。它是美国国防部于1984年建立的,用于将全球地图上的点定位࿰…...
STM32学习笔记二十:WS2812制作像素游戏屏-飞行射击游戏(10)探索游戏平衡
游戏平衡很重要,然而,却往往得不到开发者的重视。或者,没有花时间仔细去做调整。 做过游戏开发的,都听说过一个词叫“数值爆炸”,实际上就是平衡没做好。 怎么样才能算是平衡呢? 玩家投入游戏的有两个&a…...
Windows 搭建ninja 编译c++的环境
1. 系统安装python, 测试版本为(3.7.0) 2. 从官方网站获取get-pip.py https://bootstrap.pypa.io/get-pip.py 3. 安装pip python get-pip.py 4. 安装ninja pip install ninja 5. 准备CMakeLists.txt cmake_minimum_required(VERSION 3.22) proje…...
环形链表【链表】【哈希】
Problem: 141. 环形链表 文章目录 思路 & 解题方法复杂度Code 思路 & 解题方法 哈希 复杂度 时间复杂度: 添加时间复杂度, 示例: O ( n ) O(n) O(n) 空间复杂度: 添加空间复杂度, 示例: O ( n ) O(n) O(n) Code # Definition for singly-lin…...

Hive实战:网址去重
文章目录 一、实战概述二、提出任务三、完成任务(一)准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录 (二)实现步骤1、启动Hive Metastore服务2、启动Hive客户端3、基于HDFS数据文件创建Hive外部表4、利用Hive SQL实…...
206.【2023年华为OD机试真题(C卷)】最大N个数与最小N个数的和(JavaPythonC++JS实现)
🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-最大N个数与最小N个数的和二.解题思路三.题解代…...

【刷题日记】青少年CTF-Misc(一)
靶场链接 青少年CTF Markdown 题目难度:★ 题目描述:s0ng师傅发现M0x1n师傅特别喜欢用这个写文档,你知道M0x1n这次把FLAG放到哪里了吗?flag格式为:qsnctf{xxx}。 下载附件,打开即可看到flag flag qsnc…...
《未知星途:自我掌握命运》
最近在追一部叫《吞噬星空》的国产动漫,由此引发了我对于人类命运的思考。 在宇宙的无边黑暗中,我们仰望星空,对于外星生命的想象如同星云般浩渺。外星生命,或许是以我们无法想象的形态存在着,可能是以光辉的气体、晶莹…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...