首页 > 其他分享 >使用 Docker 部署 Next Terminal 轻量级堡垒机

使用 Docker 部署 Next Terminal 轻量级堡垒机

时间:2024-03-10 14:34:09浏览次数:22  
标签:terminal next Terminal docker Next Docker 轻量级

1)Next Terminal 介绍

官网:https://next-terminal.typesafe.cn/
GitHub:https://github.com/dushixiang/next-terminal

想必经常玩服务器的都了解过 堡垒机,类似于跳板机,但与跳板机的侧重点不同。堡垒机的主要功能是控制和监控对内部网络的远程访问。它提供严格的访问控制、会话审计和监控等功能。而跳板机更侧重于提供一个安全的中转平台,用于跳转到内部网络的其他服务器或设备。

今天我给大家分享一款好用安全的开源交互审计系统 - Next Terminal
Next-terminal 号称下一代堡垒机,它支持多协议如 RDP、SSH、VNC 等,并可以对正在进行的会话实时监控,还可以进行事后审计,包括查看日志和查看命令视频记录。
image.png

2)Next Terminal 特性

  1. 免费开源: Next Terminal 在 GitHub 上已收获 4000+ Star。

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

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

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

官网在线体验地址:
https://next.typesafe.cn/
账号:test
密码:test
image.png

3)检查 Docker 环境

安装 Docker 软件

# 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh
# 关闭防火墙
systemctl disable --now firewalld
setenforce 0
# 启用 Docker
systemctl enable --now docker

检查 Docker 服务

systemctl status docker

image.png

开启 IPv4 forwarding

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
systemctl restart network
sysctl net.ipv4.ip_forward

4)安装 Docker-Compose

下载 Docker-Compose 软件包

curl -L https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

Docker-Compose 增加执行权限

chmod +x /usr/local/bin/docker-compose

检查 Docker-Compose 版本

docker-compose -v

5)下载 Next Terminal 镜像

docker pull mysql:8.0
docker pull dushixiang/guacd:latest
docker pull dushixiang/next-terminal:latest

6)使用 Docker-Cli 部署

# 创建数据存储目录
mkdir -p /docker/next-terminal/data
# 1) 搭建 Guacd - 开源的远程桌面网关
docker run -d \
--name guacd \
-v /docker/next-terminal/data:/usr/local/next-terminal/data \
--restart always \
dushixiang/guacd:latest
 
# 2) 搭建 next-terminal
docker run -d \
--name next-terminal \
-e DB=sqlite \
-e GUACD_HOSTNAME=guacd \
-e GUACD_PORT=4822 \
-p 8088:8088 \
-v /etc/localtime:/etc/localtime \
-v /docker/next-terminal/data:/usr/local/next-terminal/data \
--link guacd \
--restart always \
dushixiang/next-terminal:latest

7)使用 Docker-compose 部署

创建数据目录

mkdir -p /docker/next-terminal/data

授权数据目录

chmod -R 777 /docker/next-terminal/

编辑 docker-compose.yaml 文件

[root@blog next-terminal] cd /docker/next-terminal
[root@blog next-terminal] vim docker-compose.yaml
version: '3.3'
services:
  mysql:
    image: mysql:8.0
    environment:
      MYSQL_DATABASE: next-terminal
      MYSQL_USER: next-terminal
      MYSQL_PASSWORD: next-terminal
      MYSQL_ROOT_PASSWORD: next-terminal
    volumes:
      - ./data/mysql:/var/lib/mysql
    restart:
          always
  guacd:
    image: registry.cn-beijing.aliyuncs.com/dushixiang/guacd:latest
    volumes:
      - ./data:/usr/local/next-terminal/data
    restart:
          always
  next-terminal:
    image: registry.cn-beijing.aliyuncs.com/dushixiang/next-terminal:latest
    environment:
      DB: mysql
      MYSQL_HOSTNAME: 192.168.80.8	# 你的 IP 地址
      MYSQL_PORT: 3306
      MYSQL_USERNAME: next-terminal
      MYSQL_PASSWORD: next-terminal
      MYSQL_DATABASE: next-terminal
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
    ports:
      - "8088:8088"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./data:/usr/local/next-terminal/data
    depends_on:
      - mysql
    restart:
      always

运行 Next Terminal 容器

# 基于 docker-compose.yaml 启动并运行服务
docker compose -f docker-compose.yaml up -d

验证 Next Terminal 容器状态

docker ps -a

8)访问 Next Terminal

基于浏览器访问 Next Terminal,打开方式依然为 本地IP:端口号( 此处端口为 8088 )

首次打开需要输入账号密码,Next Terminal 的初始账号和密码分别为:admin/admin。
image.png
image.png

9)Next Terminal 基本操作

9.1)修改密码

在左侧菜单栏找到 个人中心 修改密码

image.png

9.2)新建资产

可以在 资产管理 新建资产,即新建一台管理终端。
我这里选择新建一台本地的 Linux 虚拟机。
image.png

新建后如果想进行编辑也还可以进行编辑,信息填写正确后可以 点击接入,进会进入新的页面。在这里可以通过 SSH 操作刚刚填写的服务器,界面看起来还挺不错的。

image.png
image.png
image.png

9.3)会话审计

可以查看 在线会话,并可以进行监控和断开的操作。

可以监控用户正在对服务器执行的命令,实时同步的。
image.png

断开会话后,也可以在历史会话中查看,并可以进行回放操作。

123.gif

9.4)日志审计

image.png

9.5)系统设置

image.png

如果有小伙伴正好在寻找一个功能丰富的交互式审计系统,Next Terminal 将是一个不错的选择。

关于项目的更多细节,可以自行到项目地址进行查看

10)最后

如果你喜欢这篇文章,请记得点赞,收藏,并关注 【开源极客行】,我将持续分享更多实用的自搭建应用指南。一起,让我们掌握自己的数据,创建自己的数字世界!
如果你在搭建过程中遇到任何问题,或者有任何建议,也欢迎在下方留言,一起探讨和学习。

标签:terminal,next,Terminal,docker,Next,Docker,轻量级
From: https://www.cnblogs.com/wuhanjiayou/p/18064155/Next-Terminal

相关文章

  • 添加windows terminal到windows10右键菜单中
    前置条件,windows10中不自带windowsterminal,可以通过microsoftstore下载,然后不会像windows11那样在鼠标右键菜单中生成一个“在终端中打开”,需要通过注册表新建一个右键菜单项来完成。新建一个注册表脚本,此处示例wt.reg,代码示例如下:WindowsRegistryEditorVersion5.00......
  • Nextcloud 基于 Docker 部署
    1、Docker、Docker-Compose安装https://www.cnblogs.com/a120608yby/p/9883175.htmlhttps://www.cnblogs.com/a120608yby/p/14582853.html2、基于Docker-Compose部署nextcloud#vimdocker-compose.ymlversion:'3'services:db:image:mariadb:10.6......
  • Xterminal-SSH管理工具推荐
    官网常做服务器取证、网站重建的童鞋们都知道,我们需要频繁的阅读、修改文件或是代码,而Xterminal就支持远程直接查看、修改文件同时它还支持常用命令的提示(虽说全部提示需要购买会员)同时也是支持本地终端的使用当然sftp是必然带的(点名某Shell)还可以添加常用命令,双击即可......
  • K3s - 轻量级 Kubernetes
    一、k3s介绍1.1、什么是k3s中文网站:http://docs.rancher.cn/docs/k3s/quick-start/_index/k3s是经过CNCF认证的由Rancher公司开发维护的一个轻量级的Kubernetes发行版,内核机制还是和k8s一样,但是剔除了很多外部依赖以及K8s的alpha、beta特性,同时改变了部署方式和运行方......
  • 【HarmonyOS NEXT】Map如何转JSON
    ​【关键字】HarmonyOSNEXT、Object.fromEntries 【问题背景】之前基于API9发过一篇文章【HarmonyOS】JSON格式化解析Map数据失败-开发者服务与平台部社区-3MS知识管理社区(huawei.com),里面提到用Object.fromEntries可将Map数据转为JSON数据,但是在NEXT版本上却被校验......
  • 【HarmonyOS NEXT】解决Scan Kit生成二维码不支持添加logo图片
    ​ 【关键字】HarmonyOS、ScanKit、二维码、logo图片、生成二维码 1、写在前面HarmonyOS的ScanKit提供了码图生成的能力,具体的使用方式可以参考开发指南:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/scan-barcodegenerate-0000001714658685现在有个......
  • this.$NextTick
    1.介绍this.$nextTickthis.$nextTick是Vue.js提供的一个实例方法,它接收一个回调函数作为参数,该回调函数会在Vue实例更新DOM之后执行。它的主要目的是为了确保你在DOM更新之后,再进行一些操作,以避免出现操作过早导致的问题。2.工作原理在Vue.js中,DOM更新是异步的。当你......
  • LTSC2021安装Windows Terminal
    Microsoft.VCLibs.x64.14.00.DesktopAdd-AppPackage.\Microsoft.VCLibs.x64.14.00.Desktop.appxMicrosoft.UI.XamlAdd-AppPackage.\Microsoft.UI.Xaml.2.8.x64.appxWindowsTerminalAdd-AppxPackage.\Downloads\Microsoft.WindowsTerminal_1.19.10573.0_8wekyb3d8......
  • Vue CLI 系列之(十四)$nextTick
    $nextTick$nextTick这也是一个生命周期​ 如果要实现一个input框点击后进行一些数据修改的操作【这里是指能够引起Vue重新解析模板的数据修改操作,比如修改data中的数据】,然后让该input框获取焦点,该怎么做?//Item组件中有一个input输入框和一个编辑按钮,实现点击按钮后input框显......
  • CNN的进击之路——讲讲ResNet, Inception, ResNeXt和Densenet等常见网络
    前言本文是一篇大杂烩,按照发布时间总结了CNN的一些常见网络。AlexNet(2010)—>VGG(2014)——> GoogLeNetV1(2014)——>ResNet(2015)——>DenseNet(2017)——>MobileNet(2019)https://tobefans.github.io/2020/05/13/resnet/#%E5%89%8D%E8%A8%80AlexNetAlexNet来源于ImageNetClas......