1)Next Terminal 介绍 {#)next-terminal-介绍}
官网: https://next-terminal.typesafe.cn/
GitHub: https://github.com/dushixiang/next-terminal
想必经常玩服务器的都了解过 堡垒机 ,类似于跳板机,但与跳板机的侧重点不同。堡垒机的主要功能是控制和监控对内部网络的远程访问。它提供严格的访问控制、会话审计和监控等功能。而跳板机更侧重于提供一个安全的中转平台,用于跳转到内部网络的其他服务器或设备。 今天我给大家分享一款好用安全的开源交互审计系统 - Next Terminal
Next-terminal 号称下一代堡垒机,它支持多协议如 RDP、SSH、VNC 等,并可以对正在进行的会话实时监控,还可以进行事后审计,包括查看日志和查看命令视频记录。
2)Next Terminal 特性 {#)next-terminal-特性}
-
免费开源: Next Terminal 在 GitHub 上已收获 4000+ Star。
-
多协议支持: 您可以在一套系统中访问 RDP、SSH、VNC、TELNET 等协议资产,无需插件,一个浏览器即可。
-
实时监控: 您可以随时查看到目前正在活跃的会话,并进行监控和阻断。针对字符协议,您甚至可以限制禁止某些命令的执行和记录。
-
事后审计: Next Terminal 观察并记录所有环境中的每个在线资源、连接、交互会话和其他安全事件。这些事件被记录在结构化的审计日志中,便于查看正在发生的事情和责任人。
官网在线体验地址:
https://next.typesafe.cn/
账号:test
密码:test
3)检查 Docker 环境 {#)检查-docker-环境}
安装 Docker 软件 {#安装-docker-软件}
# 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh
# 关闭防火墙
systemctl disable --now firewalld
setenforce 0
# 启用 Docker
systemctl enable --now docker
检查 Docker 服务 {#检查-docker-服务}
systemctl status docker
开启 IPv4 forwarding {#开启-ipv4-forwarding}
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
systemctl restart network
sysctl net.ipv4.ip_forward
4)安装 Docker-Compose {#)安装-docker-compose}
下载 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 增加执行权限 {#docker-compose-增加执行权限}
chmod +x /usr/local/bin/docker-compose
检查 Docker-Compose 版本 {#检查-docker-compose-版本}
docker-compose -v
5)下载 Next Terminal 镜像 {#)下载-next-terminal-镜像}
docker pull mysql:8.0
docker pull dushixiang/guacd:latest
docker pull dushixiang/next-terminal:latest
6)使用 Docker-Cli 部署 {#)使用-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 部署 {#)使用-docker-compose-部署}
创建数据目录 {#创建数据目录}
mkdir -p /docker/next-terminal/data
授权数据目录 {#授权数据目录}
chmod -R 777 /docker/next-terminal/
编辑 docker-compose.yaml 文件 {#编辑-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 容器 {#运行-next-terminal-容器}
# 基于 docker-compose.yaml 启动并运行服务
docker compose -f docker-compose.yaml up -d
验证 Next Terminal 容器状态 {#验证-next-terminal-容器状态}
docker ps -a
8)访问 Next Terminal {#)访问-next-terminal}
基于浏览器访问 Next Terminal,打开方式依然为 本地IP :端口号( 此处端口为 8088 )
首次打开需要输入账号密码,Next Terminal 的初始账号和密码分别为:admin/admin。
9)Next Terminal 基本操作 {#)next-terminal-基本操作}
9.1)修改密码 {#)修改密码}
在左侧菜单栏找到 个人中心 修改密码
9.2)新建资产 {#)新建资产}
可以在 资产管理 新建资产,即新建一台管理终端。
我这里选择新建一台本地的 Linux 虚拟机。
新建后如果想进行编辑也还可以进行编辑,信息填写正确后可以 点击接入,进会进入新的页面。在这里可以通过 SSH 操作刚刚填写的服务器,界面看起来还挺不错的。
9.3)会话审计 {#)会话审计}
可以查看 在线会话,并可以进行监控和断开的操作。
可以监控用户正在对服务器执行的命令,实时同步的。
断开会话后,也可以在历史会话中查看,并可以进行回放操作。
9.4)日志审计 {#)日志审计}
9.5)系统设置 {#)系统设置}
如果有小伙伴正好在寻找一个功能丰富的交互式审计系统,Next Terminal 将是一个不错的选择。 关于项目的更多细节,可以自行到项目地址进行查看
10)最后 {#)最后}
如果你喜欢这篇文章,请记得点赞,收藏,并关注 【开源极客行】 ,我将持续分享更多实用的自搭建应用指南。一起,让我们掌握自己的数据,创建自己的数字世界!
如果你在搭建过程中遇到任何问题,或者有任何建议,也欢迎在下方留言,一起探讨和学习。