一款轻量级的堡垒机系统——orion-visor
本文最后更新于 2024-07-21,文章内容可能已经过时。
大家好,这里是Cherry,喜爱折腾、捡垃圾、玩数码,热衷于分享NAS、docker玩耍经验~
| 前言
数据安全、运维安全是所有服务器管理者、NAS用户的核心需求。
今天Cherry为大家带来一款高颜值、现代化的智能运维&轻量堡垒机平台。虽然官方介绍是轻量化,但是实际大概占用2G内存左右。
官方界面
项目地址:
https://github.com/dromara/orion-visor
项目特性:
资产管理:支持对资产进行分组,实现对主机、密钥和身份的统一管理和授权。
在线终端:提供在线终端 SSH 服务,支持快捷命令、自定义快捷键和主题风格。
文件管理:支持远程主机 SFTP 大文件的批量上传、下载和在线编辑等操作。
批量操作:支持批量执行主机命令、多主机文件分发等功能。
计划任务:支持配置 cron 表达式,定时执行主机命令。
安全可靠:动态配置权限,记录用户操作日志,提供简单的审计功能。
| 系统部署教程
一、导入镜像
如果无法访问docker下载地址的,可以通过本网盘下载镜像压缩包(exe格式),解压为tar格式以后上传至NAS的自定义路径。然后通过NAS的镜像导入功能导入,或通过ssh输入以下指令导入
🔴本镜像只有adminer一个镜像需要从hub.docker下载,其它都是阿里云的个人仓库。adminer这个工具是用网页版访问mysql数据库的,如果不需要则可以不导入镜像。
阿里云盘:https://www.alipan.com/s/kK4M9gHgFz7
提取码: tr40
# path代表真实路径,XXX.tar代表镜像压缩包
docker load -i /path/XXXX.tar
二、compose代码
🔻新建文件夹路径/volume1/docker/orion-visor,在/volume1/docker/orion-visor下新建/上传docker-compose.yml文件,将下面代码复制进去。compose代码里的数据库相关配置都要自己修改,然后保持一致。
version: '3.3'
services:
orion-visor-service:
image: registry.cn-hangzhou.aliyuncs.com/lijiahangmax/orion-visor-service:2.0.11
privileged: true
ports:
- 9081:80
environment:
- MYSQL_HOST=orion-visor-mysql
- MYSQL_PORT=3306
- MYSQL_DATABASE=orion_visor
- MYSQL_USER=root
- MYSQL_PASSWORD=Data@123456
- REDIS_HOST=orion-visor-redis
- REDIS_PASSWORD=Data@123456
- SECRET_KEY=uQeacXV8b3isvKLK
- DEMO_MODE=false
volumes:
- /share/Container/orion/service/root-orion:/root/orion
orion-visor-mysql:
image: registry.cn-hangzhou.aliyuncs.com/lijiahangmax/orion-visor-mysql:2.0.11
privileged: true
environment:
- MYSQL_DATABASE=orion_visor
- MYSQL_USER=orion
- MYSQL_PASSWORD=Data@123456
- MYSQL_ROOT_PASSWORD=Data@123456
volumes:
- /share/Container/orion/mysql/var-lib-mysql:/var/lib/mysql
- /share/Container/orion/mysql/var-lib-mysql-files:/var/lib/mysql-files
- /share/Container/orion/mysql/etc-mysql:/etc/mysql
orion-visor-redis:
image: registry.cn-hangzhou.aliyuncs.com/lijiahangmax/orion-visor-redis:2.0.11
privileged: true
environment:
- REDIS_PASSWORD=Data@123456
volumes:
- /share/Container/orion/redis/data:/data
command: sh -c "redis-server /usr/local/redis.conf --requirepass $${REDIS_PASSWORD}"
# 下面这个应用可选,网页打开数据库用,不用的话全部删掉即可
orion-visor-adminer:
image: adminer
ports:
- 9999:8080
三、各NAS系统部署项目方法
方法一:通用SSH部署compose(绿联等NAS通用)
# 来到文件夹目录
cd /volume1/docker/容器名/
# 启动容器
docker-compose up -d
方法二:群晖部署compose
打开Container Manager,选择项目,点击新建,选择路径,点击下一步即可
方法三:威联通部署compose
打开Container Station,选择【应用程序】,点击【创建】,将代码复制进去,点击验证后部署即可
方法四:铁威马部署compose
打开Docker Manager,选择【项目】,点击【+】,选择文件路径以后,填入代码即可
| 系统使用简介
默认账号密码admin/admin进入系统
登陆后一定要右上角头像修改密码
主机管理界面。这里有两个很奇怪的逻辑点,第一个逻辑点是添加主机以后需要单独设置系统类型、rdp/ssh端口,账号密码等,不能在添加主机的时候一起处理,有点麻烦。第二个逻辑点是不存在默认主机组,所有主机必须添加到主机组以后才可以授权。
我们需要先将主机加入到主机分组里,然后才可以授权给不同的角色。
主机身份,简单的说就是某些通用的账号密码。
资产授权,分为主机授权、主机密钥授权、主机身份授权三个。分别支持对角色和用户授权。这里需要注意的是,管理员组和管理员用户,系统里都叫管理员,实际上一个是对组授权,一个是对用户个体授权。但是一样的名字很容易让人混淆。
授权的意思是,分别把主机组、登录密钥、登录账号密码授权给某个用户组或某个用户。
运维界面,如果我们授权了主机的就可以在授权主机里看到。如果没有设置默认账号密码的,就需要在设置里选择对应的自定义密钥和自定义身份。这个和前面的授权就对应起来了。
值得一提的是,系统支持对在线会话、文件操作日志进行查看,但是无法查看操作视频记录。然后可以批量对堡垒机内设置的主机去进行一些操作,尤其是批量上传,这个功能还是比较实用的。