Docker - 轻量级堡垒机Next Terminal
最近天天都有Business Review,策略和方向在脑子里转来转去,时不时还有Global的老板来指点江山,根本就不了解国内的市场情况,几个周末也都在忙,今天休息一下,想想写点什么好,写一篇远程维护工具的文章吧。
Next-Terminal 是一款开源的轻量级 堡垒机系统 ,支持 RDP 、 SSH 、 VNC 、 Telnet 及 Kubernetes 协议,可实现内网资产统一管理和远程访问控制。
1. 下载镜像
guacd是next-terminal进行rdp连接时进行隧道连接的应用,所以为了使用rdp连接功能,就要先安装guacd。
在镜像仓库中搜索下载,dushixiang/guacd和dushixiang/next-terminal。


2. 创建guacd容器
在NAS的Docker目录中创建next-terminal文件夹,里面创建data和config子文件夹。

在映像中点击运行,创建容器。

设置端口映射,14822到4822。
设置文件夹映射,/docker/next-terminal/data/到/usr/local/next-terminal/data。

检查配置后开始创建。

创建Next Terminal容器
在映像中点击运行,创建容器。

配置端口映射,设置18088映射到8088,18089到8089。

配置文件夹映射:
设置文件夹映射,
/docker/next-terminal/data/到/usr/local/next-terminal/data。
/docker/next-terminal/config/到/etc/next-terminal。

将下面脚本保存config.yaml文件,导入/docker/next-terminal/config/路径。
注意guacd的IP和端口号配置。
database:
enabled: true
type: sqlite # 可选 mysql,sqlite,postgres 选择对应的数据库类型之后,请填写对应的数据库配置
sqlite:
path: ./data/nt.db
# postgres:
# hostname: localhost
# port: 5432
# username: next-terminal
# password: next-terminal
# database: next-terminal
# mysql:
# hostname: localhost
# port: 3306
# username: next-terminal
# password: next-terminal
# database: next-terminal
ShowSql: false
log:
level: debug # 日志等级 debug,info,waring,error
filename: ./logs/nt.log
server:
addr: "0.0.0.0:8088"
tls:
enabled: false
auto: false # 自动申请https证书,开启时服务器端口必须为 443
cert: "./data/cert/localhost.pem"
key: "./data/cert/localhost-key.pem"
app:
website:
accessLog: "./logs/access.log" # web 资产的访问日志路径
recording:
type: "local" # 录屏文件存储位置,可选 local, s3
path: "/usr/local/next-terminal/data/recordings"
# s3:
# endpoint: "127.0.0.1:9000"
# accessKeyId: minioadmin
# secretAccessKey: miniopassword
# bucket: recording
# useSSL: false
guacd:
drive: "/usr/local/next-terminal/data/drive"
hosts:
- hostname: 192.168.50.73
port: 14822
weight: 1
配置环境变量:
GUACD_HOSTNAME,后面值填入NAS内网IP,192.168.50.73。
GUACD_PORT后面值填入guacd配置时映射的本地端口号14822。

检查配置后完成创建。

4. 测试使用
浏览器打开网址,http://192.168.50.73:18088,进入初始化界面,设置完用户名和密码后登陆。


然后即可进入应用界面。

下面举个例子,教大家如何使用SSH。
左侧选择资产,右边新建资产。

输入名称,IP地址和端口号,以及用户名和密码,即创建了资产。

找到刚才创建的资产,点击接入,即可SSH访问NAS。

