LDAP应用:OpenLDAP集成到Jumpserver

前言



由于最近处理了一个jumpserver问题,刚好想起填一下openldap的坑.

Jumpserver是国内流行的开源堡垒机,被很多公司在使用.并且我在2018年写过0.5.0版的搭建方式。截至到现在已经出到2.14.2了,功能是越来越强大,可适用于多云环境,可配置连接阿里云或其他网络环境,部署和迁移也越来越便捷,并且它也提供了 LDAP 的用户认证方式.下面介绍的是OpenLDAP集成到Jumpserver操作

演示的jumpserver版本:v2.1.5 openldap 2.4.44



登录过程



登录用户


<1>当配置了LDAP认证方式时,无需在jumpserver去创建用户
LDAP的用户会出现在用户列表,可以使用统一的账号和密码登录Jumpserver Web页面和终端(COCO) 的用户认证
然后使用Jumpserver 创建的系统用户,跳到目标主机


<2>当使用普通用户登录时,需要去jumpserver上进行用户的创建。这种方式会在跳板机的/etc/passwd /etc/passwd- /etc/shadow /etc/shadow- /etc/group /etc/group- 上写入用户的信息,想当于useradd创建了用户,之后的登录同样要使用系统用户跳到目标主机.(如果要迁移这种jumpserver,这些文件也得拷贝过去)

LDAP应用:OpenLDAP集成到Jumpserver



系统用户


系统用户是 JumpServer跳转登录资产时使用的用户,可以理解为登录资产用户,如 web,sa,dba(ssh web@some-host),而不是使用某个用户的用户名跳转登录服务器(ssh xiaoming@some-host); 简单来说是用户使用自己的用户名登录 JumpServer,JumpServer 使用系统用户登录资产。 系统用户创建时,如果选择了自动推送,JumpServer 会使用 Ansible 自动推送系统用户到资产中,如果资产(交换机)不支持 Ansible,请手动填写账号密码。



LDAP应用:OpenLDAP集成到Jumpserver



系统用户可以根据需要配置不同权限,限制该系统用户下的用户可使用的命令

LDAP应用:OpenLDAP集成到Jumpserver



系统用户可以绑定一些命令过滤器,一个过滤器可以定义一些规则 当用户使用这个系统用户登录资产,然后执行一个命令 这个命令需要被绑定过滤器的所有规则匹配,高优先级先被匹配, 当一个规则匹配到了,如果规则的动作是允许,这个命令会被放行, 如果规则的动作是禁止,命令将会被禁止执行, 否则就匹配下一个规则,如果最后没有匹配到规则,则允许执行

如果没配置命令过滤,可以不选择
SFTP路径是文件管理中上传文件可到达的根目录
Sudo内是sudo后可使用的命令,ALL为可使用所有命令

LDAP应用:OpenLDAP集成到Jumpserver



LDAP应用:OpenLDAP集成到Jumpserver



OpenLDAP集成到Jumpserver



系统设置

LDAP应用:OpenLDAP集成到Jumpserver



基本设置
LDAP应用:OpenLDAP集成到Jumpserver



邮件设置,邮箱需开启smtp,配置后进行测试连接
LDAP应用:OpenLDAP集成到Jumpserver



邮件内容

可设置,可不设置
LDAP应用:OpenLDAP集成到Jumpserver



LDAP设置
LDAP应用:OpenLDAP集成到Jumpserver



LDAD地址  你的LDAP服务器的访问地址
可使用IP或配置域名, 但是使用域名有可能会有解析问题,使用域名便于达到高可用


DN        设置认证用户的信息, jumpserver会使用这个用户去校验ldap的信息是否正确(完整的DN)


用户OU    设置用来登录jumpserver的组织单元, 即使用 某个ou 的 用户 来登录jumpserver
(用户OU可以只写顶层OU, 不写子OU;单个ou只能导入1000个user;可以添加多个ou,用 | 隔开)
ou=jumpserver,dc=jumpserver,dc=com | ou=People,dc=op,dc=com 


关于ou和用户的创建,如果有需求可以像jenkins一样配置自己这个服务专用的ou,也可以配置已有的ou


用户过滤器  筛选需要的用户。根据规则到OU里面去检索用户,支持memberof,注意不能有多余的空格
(uid=%(user)s) 
or
(cn=%(user)s)
or 
(sAMAccountName=%(user)s) 


LADP属性映射  把ldap用户的属性映射到jumpserver上(username name email 这三项不可修改删除)
{"username": "uid", "name": "sn", "email": "mail"}
or
{"username": "cn", "name": "sn", "email": "mail"}
or
{"username": "sAMAccountName", "name": "cn", "email": "mail"}


备注: 
用户过滤器用什么筛选,LDAP属性映射字段要与其一致,过滤器用 uid,LDAP属性映射也要用 uid


终端设置

LDAP应用:OpenLDAP集成到Jumpserver



安全设置

安全设置可根据需求设置,密码过期时间为了安全建议设置一周,最小长度16位
LDAP应用:OpenLDAP集成到Jumpserver

上一篇:广东电网公司大数据平台初步建成


下一篇:Slurm及OpenLDAP部署