大天使之剑
作者大天使之剑·2019-06-26 09:15
售前技术支持·杭州才云科技

开源堡垒机使用手册

字数 3884阅读 1752评论 0赞 2

jump server完全使用手册

需要什么呢?

一台安装好 Jumpserver 系统的可用主机(堡垒机)
一台或多台可用的 Linux、Windows资产设备(被管理的资产)

让我们开始吧

基本设置

系统设置
修改当前站点的url,可以是内网ip,也可以是域名
修改一个霸气的Email前缀吧~
邮件设置
这里没什么好主意的,有的时候SMTP的密码可能是token
配置 QQ 邮箱的 SMTP 服务可参考 link
配置邮件服务后,点击页面的"测试连接"按钮,如果配置正确,Jumpserver 会发送一条测试邮件到 您的 SMTP 账号邮箱里面,确定收到测试邮件后点击保存即可使用。
LDAP
要是不用ldap的话就可以不用设置啦~
要注意先测试通过才能保存哟~
后面会有专门的章节讲ldap~先跳过吧
终端设置
录像直接存在本地吧,或者挂载cinder盘,并且指一个软连接
安全设置
看你心情咯~

创建用户

用户组
为什么不先创建用户呢?因为在分配资产权限的时候,针对的某个用户组下的所有用户,可以为一个用户分配多个用户组,这样比较好管理嘛~
Eg:奇零-UI 奇零-前端 奇零-后端 奇零-运维
用户
用户可以手动创建,也支持csv批量创建
提前创建好用户组,就可以在csv里直接指定用户组来创建了
csv里的必填项为:
名称:别名,用来分辨的,如张三
用户名:用户用来登录的,如zhangsan
邮件:用来设置用户密码的
角色:
Admin:管理员(大小写)
User:用户(大小写)
有效:TRUE/FALSE,若为FALSE,则会出现用户设置完密码之后登录不上
用户组:为上面设置的用户组

资产管理

管理用户
管理用户是服务器的 root,或拥有 NOPASSWD: ALL sudo 权限的用户,Jumpserver 使用该用户来推送系统用户、获取资产硬件信息等
必须密码或者密钥选一个
推荐创建两个管理用户

|系统|管理员| |----|----| |windows|Administrator(注意是大写的A!)| |linux|root|

系统用户
系统用户是 Jumpserver 跳转登录资产时使用的用户,可以理解为登录资产用户
简单来说是 用户使用自己的用户名登录 Jumpserver, Jumpserver 使用系统用户登录资产,如果还是没理解的话,后面会讲管理用户和系统用户和用户之间的关系,就表担心啦
系统用户创建时,如果选择了自动推送 Jumpserver 会使用 Ansible 自动推送系统用户到资产中,如果资产(交换机、Windows)不支持 Ansible, 请手动填写账号密码(也就是资产内必须存在对应的系统用户)
linux的协议必须是ssh
windows的协议必须是rdp,并选择自动登录,在下方输入管理员密码
目前 Windows 不支持自动推送,所以 Windows 的系统用户设置成与管理用户同一个用户
资产列表
可以按系统分类(如windows,linux),也可以按职能分类(数据库,业务),看自己喜欢咯
创建资产可以通过表格批量导入
必要的信息如下
IP、主机名、协议、端口、管理用户
标签
就是给资产打标签啦~
比如创建后端标签 选择资产的时候就可以选择应该是属于后端的资产

权限管理

创建授权规则
节点,对应的是资产,代表该节点下的所有资产
用户组,对应的是用户,代表该用户组下所有的用户
节点,用户组,系统用户是一对一的关系,所以当拥有 Linux、Windows 不同类型资产时,应该分别给 Linux 资产和 Windows 资产创建授权规则
个人建议:资产授权给个人,节点授权给用户组,一个授权只能选择一个系统用户

会话管理

在线会话
没啥好说的
现在还不支持查看windows资产的在线会话
管理员可以直接中断会话
历史会话
可以查看详情,并且有录像
命令记录
存放的是用户在资产上执行过哪些命令,单击一行记录,会展示命令执行的结果
点击"转到"连接,会跳转到详细的会话页面,如果会话已结束可以查看会话录像,如果会话正在线可中断会话
Web 终端
用户就使用web终端来控制资产啦
终端管理
现在只有两款终端
coco:linux终端
Gua:windows终端

作业中心

作业是 Jumpserver 向其所管理下的资产发送的指令,例如,测试资产可连接性、获取资产硬件信息、测试管理用户可连接性和测试系统用户可连接性等命令,默认展示七天~
点击作业名称可以查看作业的具体详情、作业的历史版本以及作业执行的历史记录

注意

用户、系统用户、管理用户的关系

用户:每个公司的同事创建一个用户账号,用来登录Jumpserver
系统用户:使用来登录到服务器的用户,如 web, dba, root,张三等,配合sudo实现权限管控
管理用户:是服务器上已存在的特权用户,Ansible用来获取硬件信息, 如 root, 或者其它拥有 sudo NOPASSWD: ALL权限的用户
这里解释一下系统用户里面的sudo,比如有个系统用户的权限是这样的 sudo:/usr/bin/git,/usr/bin/php,/bin/cat,/bin/more,/bin/less,/usr/bin/head,/usr/bin/tail 意思是允许这个系统用户免密码执行 git、PHP、cat、more、less、head、tail 命令,只要关联了这个系统用户的用户在相应的资产都可以执行这些命令。

LDAP 使用说明

LDAP 支持 使用 LADP 与 Windows AD 的用户作为 jumpserver 登录用户
LDAP 设置说明
LDAP地址 ldap://serverurl:389 或者 ldaps://serverurl:636(需要勾选ssl) 此处是设置LDAP的服务器,推荐使用IP,防止解析问题
绑定DN cn=admin,dc=jumpserver,dc=org 这里是设置认证用户的信息,jumpserver会使用这个用户去校验ldap的信息是否正确
密码 上面认证用户的密码
用户OU ou=jumpserver,dc=jumpserver,dc=org 这里是设置用来登录jumpserver的组织单元,比如我要用某个ou的用户来登录jumpserver
用户过滤器 (cn=%(user)s) 这里是设置筛选ldap用户的哪些属性
LADP属性映射 {"username": "cn", "name": "sn", "email": "mail"}
|用户名|用户名称|邮箱|用户属性| |:----|:----|:----|:----| |username|name|email|jumpserver的用户属性(不可更改)| |cn|sn|mail|ldap的用户属性(可自定义)|
坑
DN 一定要是完整的DN,不能跳过OU,可以使用其他工具查询
如:cn=admin,ou=aaa,dc=jumpserver,dc=org,必须要写成cn=admin,ou=aaa,dc=jumpserver,dc=org 不能缩写成cn=admin,dc=jumpserver,dc=org
用户OU 用户OU可以只写顶层OU,不写子OU
如:ou=aaa,ou=bbb,ou=ccc,dc=jumpserver,dc=org,可以只写ou=ccc,dc=jumpserver,dc=org,根据需求自行修改
用户过滤器 筛选用户的规则,点击测试连接就是根据这个规则到用户OU里面去检索用户,可以自定义规则
如:(uid=%(user)s) 或 (sAMAccountName=%(user)s) 等,这里的属性需要与下面的属性映射设置一致
LADP属性映射 username name email 这三项不可修改删除,cn sn 可自定义,mail必须存在
如:{"username": "uid", "name": "sn", "email": "mail"} 或 {"username": "sAMAccountName", "name": "cn", "email": "mail"}
"username": "uid" 这里的 uid 必须和上面的 (uid=%(user)s) 这里的 uid 一致
如果上面是(sAMAccountName=%(user)s) 那么下面也应该修改为{"username": "sAMAccountName"
上传文件
linux上传下载文件使用sftp
默认的上传目录在 /tmp ,其他目录没有权限
sftp admin@puzhuang.youi:2222 # Linux 语法,admin改为对应的用户名
sftp 2222 admin@puzhuang.youi # xshell 语法,admin改为对应的用户名
ls 列出资产目录
cd 你的资产
ls 列出你的系统用户
cd 你的系统用户
此处即是当前资产的 /tmp 目录
windows上传文件
直接将文件拖拽至web终端内
上传完毕之后会出现远程桌面硬盘,咱们上传的文件就在这里啦,可以将文件复制到其他分区上(因为远程桌面硬盘里面的东西,关闭终端就消失惹)
windows下载文件
将需要下载的文件拖拽到远程桌面文件硬盘内的Download文件夹内,就会在浏览器自动触发下载动作啦

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

2

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关问题

X社区推广