背景:

jumpserver的装置参照:jumpserver的简略装置应用,Freeipa的装置参照:Freeipa的简略搭建配置。筹备将Freeipa与Jumpserver集成。其实Freeipa搭建后linux客户端如果装置了Freeipa client。也能实现用户的受权权限治理了,参照:利用Freeipa实现Liunx用户身份、权限的对立治理 | 企业平安拥抱开源 。然而还是不能很好的实现操作的审计等操作。且用jumpserver治理能更好实现用户的操作审计。然而freeipa创立的linux用户账户的明码批改同步推送也会有各种的问题?该怎么在账号治理中同步账户信息的变更?最初折衷了还是:freeipa只与jumpserver实现认证,同步用户,用户组。同一用户组应用雷同账户(linux用户)治理。linux主机不与freeipa联动?前面看一下是否实现用freeipa用户ssh!

注:装置的时候jumpserver版本为3.1.0,当初最新版本为3.1.1(重装了一下latest默认,当初版本为3.1.1)!小版本差异这里就疏忽了!

Jumpserver与Freeipa集成

对于Freeipa 的用户用户组

在freeipa 与jenkins的集成中为创立了jenkins jenkins-develop jenkins-qa这样的分组.这里也创立一个jumpserver jumpserver-develop jenkins-qa这样的分组。其实分组应该搞成复用的。这里就先这样演示了,所有应该以本人理论的需要来进行组划分!

创立jumpserver分组:

创立jumpserver jumpserver-develop jumpserver-qa分组,将 jumpserver-develop jumpserver-qa组退出jumpserver组

将用户退出jumpserver对应组

zhangpeng用户作为jumpserver member managers用户

jumpserver-develop组用户如下:

jumpserver-qa组用户如下:

Freeipa同步用户到Jumpserver:

管理员登陆jumpserver 点击右上角零碎设置:

点击认证设置-ldap:

参照: FreeIPA配置笔记,配置jumpserver与freeipa集成:

输出以下参数:

LDAP服务器:  LDAP地址:            ldap://xxx.xxxx.com:389  绑定 DN:            uid=zhangpeng,cn=users,cn=accounts,dc=xxx,dc=com  明码:                xxxxLDAP用户:  用户 OU:            cn=users,cn=accounts,dc=xxx,dc=com  用户过滤器:          (uid=%(user)s)  LDAP属性映射:           {"username":"uid","name":"displayname","email":"mail"}其余:  启用 LDAP 认证:        勾选


测试连贯:

用户导入,抉择导入全副:

记得右下角的提交 ldap配置!

but用户组是空的,还是心愿能把组同步过去,而后针对用户组做权限治理:

如何导入用户组呢?

Freeipa同步用户组到jumpserver:

用户属性这里mail前面加一个,而后增加“groups”:"memberOf"

提交,导入全副(过后了这里也能够测试以下配置是否胜利!)

切换到控制台用户治理用户列表界面,用户的用户组栏有了相干组信息如下:

点击用户组:这里有些纠结,不想同步过去那么多组,不晓得又没有大佬指导一二?

前面批改了一下认证设置LDAP配置这里的用户过滤器为(&(uid=%(user)s)(!(nsaccountlock=*))(objectclass=organizationalperson))(前提先删除用户治理中LDAP用户and用户组)


切换到控制台用户治理页面:总算没有名称为空的用户了!

用户组界面也总算清凉了以,这还能承受:

memberof具体的还是不会玩,这样好歹看的难受多了先这样!

Jumpserver Freeipa简略应用:

对于资产列表,资产树这里根节点的Default无奈批改,就先疏忽了!资产树节点默认以下配置:

当然了腾讯云下还能够加一个地区的节点?这里疏忽了。单地区演示!Develop QA Master三个环境!

Develop资产治理的设置:

Develop环境下Jumpserver配置

Develop环境下筹备增加一台CVM:
创立抉择平台-主机 -linux:

这个中央有个很不喜爱的。为点击了左侧资产树的Develop 节点这里不能默认追随....还要主动抉择一下?输出相干信息:


增加账户这里输出名称默认上面用户名会跟下面一样,记得批改用户名!明码类型这里依照集体理论状况来。我这里用了一下ssh-key的形式:

返回资产列表,看到创立的develop资源在列表中展示:

针对资产受权:
左侧控制台边栏:权限治理-资产受权-创立:

输出规定名称,用户组,资产,节点抉择账号等相干信息,提交:

资产抉择develop确认:


最初点击提交:


最终资产受权这里如下:

权限验证:

关上火狐浏览器登陆jumpserver-develop组用户,以huozhonghao用户为例,点击工作台左侧边栏-web终端-找到develop资产,连贯:

确认失常登陆develop资产并操作:

创立资产的时候看到了创立同名账户的选项?

忽然决定freeipa client的形式能够尝试一下?Qa为例:

Qa资产治理设置:

freeipa-client 配置:

qa 资产IP 10.0.2.28
批改hostname

qa-client.xxxxx.com

装置ipa-client包:

yum install -y ipa-client


批改dnsserver 为 ipaserver ip

[root@qa-client ~]#  cat /etc/resolv.conf# Generated by NetworkManagernameserver 10.0.4.52nameserver 183.60.82.98nameserver 183.60.83.19

这里有坑,前面会讲!
能够用上面命令使client 连贯到server:

ipa-client-install --domain=xxxx.com --no-ntp --realm=xxxx.com --mkhomedir

or

ipa-client-install --mkhomedir

Freeipa web ui配置:

登陆freeipa server web UI 确认主机注册胜利:

策略这里,删除原有的两个规定,创立HBAC规定-qa:

编辑规定如下:

Sudo 增加role role简略命名为sudo:

配置参照下图:只指定了组与主机 ,其余都是any

Jumpserver相干配置

创立10.0.2.28的 qa资产,账户列表这里设置为空,临时不增加:


权限治理-受权,特地注明账户这里抉择同名账号:

权限验证:

登陆jumpserver-qa用户huozhonghao:
左侧工作台为的资产能够发现qa and develop资产:

连贯qa资产-同名账号。输出用户明码(与登陆jumpserver同一明码!)

目测第一次登陆ssh会让批改明码,如下,会须要重置明码(这里就保留原明码了!):

从新登陆如下:,无奈sudo是过后没有配置好freeipa权限疏忽:

sudo -i 能够切换到root用户:

尝试创立zhangpeng3用户退出到jumpserver-qa组

开其余浏览器or切用户为zhangpeng3,点击左侧边栏web终端。操作qa资产树下qa资产重置明码(第一次登陆步骤):

sudo -i验证权限:

尝试freeipa web控制台批改明码:

jumpserver 从新连贯qa资产明码会显示认证失败,须要从新输出明码能力连贯对应资产控制台(jumpserver Web如果未退出)!

尝试批改明码能够在资产终端操作passwd操作尝试:

退出jumpserver,从新登陆,曾经显示过来记录的明码谬误,输出批改后的明码进入控制台:


连贯资产web终端,从新输出passwd更改的新密码:


passwd如不能批改明码请参照freeipa控制台明码策略:

演示以两个环境演示就能够了,master环境没有必要再操作一遍了!

jumpserver的其余相干配置

次要是对于零碎设置的这些局部:

从邮件设置开始:

点击邮件设置,点击右侧邮件服务器配置邮件服务器相干配置:


以qq邮箱为例:


记录下生成的受权码:

SMTP主机: smtp.qq.comSMTP端口: 465SMTP账户: xxxxx@qq.comSMTP明码:xxxxxx(生成的受权码)

平安设置应用SSL开启,提交配置:

给本人邮箱发一封测试邮件尝试:

指标收件人收到测试邮件就示意配置胜利。最终邮件设置这里邮件发送,主体前缀设置为:jumpserver。其余的放弃原有配置保留提交!

音讯订阅

音讯订阅这里能够开启邮箱的订阅形式,并且批改音讯承受人(这里疏忽了。这里好多用户邮箱是假的)!

终端设置:

终端设置的相干配置有很多,这里只着重配置一下录像存储 and 命令存储

录像存储:

录像存储以腾讯cos为例:
创立一个存储桶:

留神这里抉择了公有读写桶,齐全没有必要私有读把?依据权限最小化准则,创立了 一个用户,而后绑定桶:

jumpserver的相干配置:
这里次要强调端点这里:https://cos.ap-shanghai.myqcloud.com(依据本人区域补充两头的regin区域)

留神:我第一次设置成了https://jumpserver-xxxxxx.cos.ap-shanghai.myqcloud.com。默认的门路会变成这样的

测试设置为cos存储为默认:

but操作了一下 看到cos桶并未生生存储文件,重启一下jumpserver?

尝试后仍然未失效!https://docs.jumpserver.org/zh/v3/guide/storages/#13


操作命令退出后曾经生成录像存储:

命令存储

命令存储能够接入elasticsearch,以elasticsearch为例:

简略配置一下,日期索引依据需要确认是否开启,提交:

持续更新终端设置:

提交:

普通用户登陆jumpserver操作几条简略命令:

登陆elasticsearch kibana控制台 索引治理能够看到 相干索引曾经创立:

其余的问题

dns问题

  1. client nameserver增加了ipa server ip


ping ipa server没有问题,but ping 其余 三级域名呈现问题 :

ping: www.xxx.com: Name or service not known


怎么搞呢?这样的问题?我用的也是为理论存在的domain域名?呈现这样的无奈解析的问题也是用户不想看到的。解决的形式集体了解应该有两种:
1 . 整一个压根不存在的域名?或者基本不应用无影响的域名如就用example.com? example.tech。等等相似 ?

  1. 偷懒尝试了一下 不配置resolv.conf ?
    /etc/hosts绑定ipa server and client:


    这样能够不呈现此情况,解析都没有问题:

    也不须要跟其余domain下域名通信, 只做用户认证,这样做也是能够的。

    单节点异样

    节点其实也是失常的,然而web ui登陆admin呈现了异样,普通用户都能够登陆web UI,也能够登陆其余利用。不晓得狐疑什么问题要,重启日志也没有什么输入,想狐疑一下随机数生成器?装置了一下依照一下文档:

    前面没有怎么呈现这问题,然而还是有不可用因素,筹备后续将freeipa ha 部署为高可用!rngd可能会无奈启动
    将: ConditionVirtualization=!container中 !去掉可失常启动:

    systemctl daemon-reloadsystemctl restart rngd