部署一款开源的交互审计系统—Next Terminal

博客地址

部署一款开源的交互审计系统—Next Terminal-雪饼 (xue6ing.cn)https://xue6ing.cn/archives/bu-shu-yi-kuan-kai-yuan-de-jiao-hu-shen-ji-xi-tong--next-terminal

Next Terminal是什么?

Next Terminal是一个开源的交互审计系统,具有以下主要功能和优势:

  1. 免费开源:Next Terminal在GitHub上已收获近4000 Star(dushixiang/next-terminal: Next Terminal)。

  2. 多协议支持:您可以在一套系统中访问RDP、SSH、VNC、TELNET等协议资产,无需插件,一个浏览器即可。

  3. 实时监控:您可以随时查看到目前正在活跃的会话,并进行监控和阻断。针对字符协议,您甚至可以限制禁止某些命令的执行和记录。

  4. 事后审计:Next Terminal观察并记录所有环境中的每个在线资源、连接、交互会话和其他安全事件。这些事件被记录在结构化的审计日志中,便于查看正在发生的事情和责任人。

注意:这仅仅是为了远程控制开发的,是为了审计操作行为,如果只是有远程操作需求建议选择专业的远控软件来做。

快速安装

安装Docker-Compose

Centos7安装Docker和Docker-Compose

创建工作目录

mkdir next-terminal && cd next-terminal

编写docker-compose.yml文件

使用 SQLite 存储数据

vim docker-compose.yml
version: '3.3'
services:guacd:image: dushixiang/guacd:latestvolumes:- ./data:/usr/local/next-terminal/datarestart:alwaysnext-terminal:image: dushixiang/next-terminal:latestenvironment:DB: sqliteGUACD_HOSTNAME: guacdGUACD_PORT: 4822ports:- "8088:8088" # 左边 8088可以更换为服务器未占用的端口volumes:- /etc/localtime:/etc/localtime- ./data:/usr/local/next-terminal/datarestart:always

:wq保存退出

启动 Docker Compose 配置文件

docker-compose up -d

浏览器输入ip:8088访问

默认账号/密码 admin/admin

 

afc07aa60e85314bc6a9b84026c431f7.png

占用不到30M的内存,非常轻量!

c8a8943f868a403cbe2d0dfa30426d30.png

 

Next Terminal官方也是支持MySQL数据库的。

version: '3.3'
services:mysql:image: mysql:8.0environment:MYSQL_DATABASE: next-terminalMYSQL_USER: next-terminalMYSQL_PASSWORD: next-terminalMYSQL_ROOT_PASSWORD: next-terminalvolumes:- ./data/mysql:/var/lib/mysqlrestart:alwaysguacd:image: dushixiang/guacd:latestvolumes:- ./data:/usr/local/next-terminal/datarestart:alwaysnext-terminal:image: dushixiang/next-terminal:latestenvironment:DB: mysqlMYSQL_HOSTNAME: mysql MYSQL_PORT: 3306MYSQL_USERNAME: next-terminal # 可根据情况修改MYSQL_PASSWORD: next-terminal # 可根据情况修改MYSQL_DATABASE: next-terminal # 可根据情况修改GUACD_HOSTNAME: guacdGUACD_PORT: 4822ports:- "8088:8088"volumes:- /etc/localtime:/etc/localtime- ./data:/usr/local/next-terminal/datadepends_on:- mysqlrestart:always

或使用外部的MySQL

version: '3.3'
services:guacd:image: dushixiang/guacd:latestvolumes:- ./data:/usr/local/next-terminal/datarestart:alwaysnext-terminal:image: dushixiang/next-terminal:latestenvironment:DB: mysql# 请修改下面的 MySql 配置,需自行创建数据库和用户MYSQL_HOSTNAME: mysql # 外部数据库地址MYSQL_PORT: 3306 # 外部数据库端口MYSQL_USERNAME: next-terminal # 外部数据库账号MYSQL_PASSWORD: next-terminal # 外部数据库密码MYSQL_DATABASE: next-terminal # 外部数据库名# 请修改上面的 MySql 配置,需自行创建数据库和用户GUACD_HOSTNAME: guacdGUACD_PORT: 4822ports:- "8088:8088"volumes:- /etc/localtime:/etc/localtime- ./data:/usr/local/next-terminal/datarestart:always

如果你使用的是内部的 MySQL 相对于 SQLite 会多占用将近400M的内存的,怎么取舍还是看自己的情况吧

bb9769fa68144a35855f5b343b6312f2.png

 

 

Nginx反代部分代码

server {listen 80;server_name your.domain.server.com;# SSL 配置已省略# ...# proxy to 8088location / {proxy_pass http://{ip}:8088;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}# 其他配置 # ...
}

不完全使用说明

强烈建议!!初始账号密码是 admin/admin 登录成功之后在左侧菜单栏找到个人中心修改密码并绑定二步认证

添加资产

左侧菜单栏资源管理 二级菜单栏资产管理 ,点击新建 ,按需求填写信息,点击确定即可。

SSH协议

应注意协议是否与主站地址后面的端口号相符,例如SSH默认就是22

 

f240ef5e167652f6dd9b6649960abdbf.png

你也可以选择使用密钥授权凭证 的登录方式

 

3bab11e6a167686ed056d45a0cdd85ba.png

连接服务器

新建完成之后接入 即可连接服务器

 

d4efc9d5779f05e6863ea38a8e61b326.png

 

e5c39c8c80bb4f70885eea51ae7df1c4.png

可以看到连接之后网页右上角有三个按钮分别是

  • 代码标 :可以快速的执行一些指令,添加指令的方式:左侧菜单栏资源管理 二级菜单栏动态指令

 

39d900439b4766a458e25a3c3181fd77.png

 

95330dace80e5dd7eeb206a3cf911781.png

 

8f52900bdc08782f1153b94bdc65bce1.png

  • 文件夹标 :可以快速的上传文件至服务器

  • 视图标 :可以快速的查询一些状态信息

RDP协议

 

0134f76a1f850bf6aa9ba0b183335847.jpeg

监控用户行为

左侧菜单栏会话审计 二级菜单栏在线会话 ,可以监控用户正在对服务器执行的命令,实时同步的。

 

21583ba0ae687ec26eb009e3f35c1318.png

 

6fcc95a9b8b79c21bc3182eb93885502.png

断开用户访问服务器

 

adbfe94e33971567aba79094626e00b1.png

2acbc78c2274ab9a2dedebeb0c5451f3.png

回放用户历史行为

左侧菜单栏会话审计 二级菜单栏历史会话

更多功能还是快自己去探索吧!

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/606984.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

控制台console

js控制台打印 console.log()和console.group() console.group()指的是消息组的开始,在此之后的所有消息将写进该消息组中, console.groupEnd()指的是该消息组的结束,

SpringBoot请求参数加密、响应参数解密

SpringBoot请求参数加密、响应参数解密 1.说明 在项目开发工程中,有的项目可能对参数安全要求比较高,在整个http数据传输的过程中都需要对请求参数、响应参数进行加密,也就是说整个请求响应的过程都是加密处理的,不在浏览器上暴…

40道java集合面试题含答案(很全)

点击下载《40道java集合面试题含答案(很全)》 1. 什么是集合 集合就是一个放数据的容器,准确的说是放数据对象引用的容器集合类存放的都是对象的引用,而不是对象的本身集合类型主要有3种:set(集)、list(列…

Unity文字转语音(使用RT-Voice PRO [2023.1.0])

参考文章Unity插件——文字转朗读语音RtVioce插件功能/用法/下载_rtvoice-CSDN博客 一、使用步骤 1.导入进Unity(插件形式为 .unitypackage) https://download.csdn.net/download/luckydog1120446388/88717512 2.添加所需Prefab 1).右键可…

后端 API 接口文档 Swagger 使用

Swagger 是什么 swagger是一款可以根据 restful 风格生成的接口开发文档,并且支持做测试的一款中间软件。 例如当我们在开发前后端分离项目时,当后端开发完一个功能想要测试时,若此时还没有相应的前端页面发起请求,可以通过 swag…

python炒股自动化(0),申请券商API接口

上次发了量化交易接口的区别,发现很多人根本不知道券商提供的API交易接口,这里补充一篇,关于券商接口的介绍。 现在市面上可以给个人账户接入的股票交易接口,用的最多的也就是QMT和Ptrade,以前接入量化交易需要机构或…

高压放大器设计要求是什么

高压放大器在科学研究和工程应用中扮演着至关重要的角色,特别是在需要处理高电压信号的实验和应用中。高压放大器设计要求的充分考虑至关重要,以确保其在各种环境中稳定、可靠地工作。下面将介绍设计高压放大器时需要考虑的关键要求和因素。 1.电压范围 …

赋能软件开发:生成式AI在优化编程工作流中的应用与前景

随着人工智能(AI)技术的快速发展,特别是生成式AI模型如GPT-3/4的出现,软件开发行业正经历一场变革,这些模型通过提供代码生成、自动化测试和错误检测等功能,极大地提高了开发效率和软件质量。 本文旨在深入…

Android readelf 工具查找函数符号

ELF(Executable and Linkable Format)是一种执行文件和可链接文件的格式。它是一种通用的二进制文件格式,用于在各种操作系统中存储可执行程序、共享库和内核模块。 Android 开发当中的 so 库本质上就是一种特殊类型的 ELF 文件,…

文章解读与仿真程序复现思路——电工技术学报EI\CSCD\北大核心《考虑灵活性补偿的高比例风电与多元灵活性资源博弈优化调度》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 这个标题涉及到高比例风电与多元灵活性资源在博弈优化调度中考虑灵活性补偿的问题。以下是对标题各个部分的解读: 高比例风电: …

【模拟IC学习笔记】Cascode OTA 设计

辅助定理 增益Gm*输出阻抗 输出短路求Gm 输入置0求输出阻抗 求源极负反馈的增益 随着Vin的增加,Id也在增加,Rs上压降增加,所以,Vin的一部分电压体现在Rs上,而不是全部作为Vgs,因此导致Id变得平滑。 Rs足…

【数据结构篇】数据结构中的 R 树和 B 树

数据结构中的 R 树和 B 树 ✔️关于R树(RTree)✔️什么是B树(B-tree)✔️B树和B树的区别✔️B树和B树在数据存储方面的具体差异 ✔️拓展知识仓✔️R树和B树的区别✔️ 那在内存消耗上有什么区别?✔️ R树有哪些优点和…

【算法与数据结构】509、LeetCode斐波那契数

文章目录 一、题目二、递归,动态规划解法2.1 递归解法2.2 动态规划解法 三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、递归,动态规划解法 2.1 递归解法 思路分析:斐波…

【Leetcode】240. 搜索二维矩阵 II

一、题目 1、题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1: 输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21…

【REST2SQL】05 GO 操作 达梦 数据库

【REST2SQL】01RDB关系型数据库REST初设计 【REST2SQL】02 GO连接Oracle数据库 【REST2SQL】03 GO读取JSON文件 【REST2SQL】04 REST2SQL第一版Oracle版实现 信创要求用国产数据库,刚好有项目用的达梦,研究一下go如何操作达梦数据库 1 准备工作 1.1 安…

ros2 基础学习 15- URDF:机器人建模方法

URDF:机器人建模方法 ROS是机器人操作系统,当然要给机器人使用啦,不过在使用之前,还得让ROS认识下我们使用的机器人,如何把一个机器人介绍给ROS呢? 为此,ROS专门提供了一种机器人建模方法——…

软件测试|SQL中的UNION和UNION ALL详解

简介 在SQL(结构化查询语言)中,UNION和UNION ALL是用于合并查询结果集的两个关键字。它们在数据库查询中非常常用,但它们之间有一些重要的区别。在本文中,我们将深入探讨UNION和UNION ALL的含义、用法以及它们之间的区…

Ubuntu 22.04 编译安装 Qt mysql驱动

参考自 Ubuntu20.04.3 QT5.15.2 MySQL驱动编译 Ubuntu 18.04 编译安装 Qt mysql驱动 下边这篇博客不是主要参考的, 但是似乎解决了我的难题(找不到 libmysqlclient.so) ubuntu18.04.2 LTS 系统关于Qt5.12.3 无法加载mysql驱动,需要重新编译MYSQL数据库驱动的问题以…

【代码随想录】刷题笔记Day45

前言 早上又赖了会床......早睡早起是奢望了现在,新一年不能这样!支棱起来! 377. 组合总和 Ⅳ - 力扣(LeetCode) 这一题用的就是完全背包排列数的遍历顺序:先背包再物品,从前往后求的也是有几…

mac电脑php命令如何设置默认的php版本

前提条件:如果mac电脑还没安装多个PHP版本,可以先看这篇安装一下 mac电脑运行多个php版本_mac 同时运行两个php-CSDN博客 第一部分:简单总结 #先解除现在默认的php版本 brew unlink php7.4#再设置的想要设置的php版本 brew link php8.1第二部…